void (* pf_play)( aout_instance_t * );
int (* pf_volume_set )( aout_instance_t *, audio_volume_t, bool );
int i_nb_samples;
-
- /* If b_error == 1, there is no audio output pipeline. */
- bool b_error;
} aout_output_t;
struct aout_mixer_t;
p_aout->i_nb_inputs = 0;
p_aout->mixer_multiplier = 1.0;
p_aout->p_mixer = NULL;
- p_aout->output.b_error = 1;
p_aout->output.b_starving = 1;
+ p_aout->output.p_module = NULL;
var_Create( p_aout, "intf-change", VLC_VAR_VOID );
{
msg_Err( p_aout, "couldn't create audio output pipeline" );
module_unneed( p_aout, p_aout->output.p_module );
+ p_aout->output.p_module = NULL;
return -1;
}
aout_FiltersHintBuffers( p_aout, p_aout->output.pp_filters,
p_aout->output.i_nb_filters,
&p_aout->mixer_allocation );
-
- p_aout->output.b_error = 0;
return 0;
}
*****************************************************************************/
void aout_OutputDelete( aout_instance_t * p_aout )
{
- if ( p_aout->output.b_error )
- {
- return;
- }
+ if( p_aout->output.p_module == NULL )
module_unneed( p_aout, p_aout->output.p_module );
+ p_aout->output.p_module = NULL;
aout_FiltersDestroyPipeline( p_aout, p_aout->output.pp_filters,
p_aout->output.i_nb_filters );
aout_lock_output_fifo( p_aout );
aout_FifoDestroy( p_aout, &p_aout->output.fifo );
aout_unlock_output_fifo( p_aout );
-
- p_aout->output.b_error = true;
}
/*****************************************************************************