- aout_InputPlay( p_aout, p_input, p_buffer, i_input_rate );
- /* Run the mixer if it is able to run. */
- aout_MixerRun( p_aout, p_aout->mixer_multiplier * p_input->multiplier );
+ p_buffer = aout_InputPlay( p_aout, p_input, p_buffer, i_input_rate );
+
+ if( p_buffer != NULL )
+ {
+ /* Mixer */
+ float amp = owner->volume.multiplier * p_input->multiplier;
+ aout_MixerRun (owner->volume.mixer, p_buffer, amp);
+
+ /* Output */
+ aout_OutputPlay( p_aout, p_buffer );
+ }
+