Go to the source code of this file.
| #define __LIBVLC_AOUT_INTERNAL_H 1 |
| #define aout_DecNew | ( | a, | |||
| b, | |||||
| c, | |||||
| d, | |||||
| e | ) | __aout_DecNew(VLC_OBJECT(a), b, c, d, e) |
Referenced by aout_new_buffer().
| #define aout_New | ( | a | ) | __aout_New(VLC_OBJECT(a)) |
Referenced by __aout_DecNew(), and RequestAout().
| aout_input_t* __aout_DecNew | ( | vlc_object_t * | , | |
| aout_instance_t ** | , | |||
| audio_sample_format_t * | , | |||
| const audio_replay_gain_t * | , | |||
| const aout_request_vout_t * | ||||
| ) |
References aout_New, DecNew(), msg_Dbg, and vlc_object_attach.
| aout_instance_t* __aout_New | ( | vlc_object_t * | ) |
References aout_Destructor(), aout_output_t::b_error, aout_output_t::b_starving, aout_instance_t::i_nb_inputs, aout_instance_t::input_fifos_lock, aout_instance_t::mixer_lock, aout_instance_t::mixer_multiplier, aout_instance_t::output, aout_instance_t::output_fifo_lock, aout_instance_t::p_mixer, var_Create, var_SetBool, vlc_mutex_init(), VLC_OBJECT_AOUT, vlc_object_create, vlc_object_set_destructor, and VLC_VAR_BOOL.
| aout_buffer_t* aout_BufferAlloc | ( | aout_alloc_t * | allocation, | |
| mtime_t | microseconds, | |||
| aout_buffer_t * | old_buffer | |||
| ) |
References aout_alloc_t::b_alloc, block_Alloc(), and aout_alloc_t::i_bytes_per_sec.
Referenced by aout_DecNewBuffer(), aout_DecPlay(), and MixBuffer().
| void aout_DecChangePause | ( | aout_instance_t * | , | |
| aout_input_t * | , | |||
| bool | b_paused, | |||
| mtime_t | i_date | |||
| ) |
| int aout_DecDelete | ( | aout_instance_t * | , | |
| aout_input_t * | ||||
| ) |
References aout_InputDelete(), aout_lock_mixer(), AOUT_MAX_INPUTS, aout_MixerDelete(), aout_OutputDelete(), aout_unlock_mixer(), aout_instance_t::i_nb_inputs, aout_input_t::lock, msg_Err, aout_instance_t::pp_inputs, var_Destroy, and vlc_mutex_destroy().
Referenced by aout_new_buffer(), and DeleteDecoder().
| void aout_DecDeleteBuffer | ( | aout_instance_t * | , | |
| aout_input_t * | , | |||
| aout_buffer_t * | ||||
| ) |
| void aout_DecFlush | ( | aout_instance_t * | , | |
| aout_input_t * | ||||
| ) |
References aout_FifoSet(), aout_lock_input_fifos(), aout_unlock_input_fifos(), aout_mixer_input_t::begin, aout_mixer_input_t::fifo, and aout_input_t::mixer.
Referenced by DecoderDecodeAudio(), and DecoderProcessAudio().
| int aout_DecGetResetLost | ( | aout_instance_t * | , | |
| aout_input_t * | ||||
| ) |
References aout_lock_input(), aout_unlock_input(), aout_input_t::i_buffer_lost, and i_value.
Referenced by DecoderPlayAudio().
| aout_buffer_t* aout_DecNewBuffer | ( | aout_input_t * | , | |
| size_t | ||||
| ) |
References aout_BufferAlloc(), aout_lock_input(), aout_unlock_input(), aout_input_t::b_changed, aout_input_t::b_error, block_t::i_buffer, audio_format_t::i_bytes_per_frame, audio_format_t::i_frame_length, block_t::i_length, block_t::i_nb_samples, block_t::i_pts, audio_format_t::i_rate, aout_input_t::input, and aout_input_t::input_alloc.
Referenced by aout_new_buffer().
| int aout_DecPlay | ( | aout_instance_t * | , | |
| aout_input_t * | , | |||
| aout_buffer_t * | , | |||
| int | i_input_rate | |||
| ) |
References aout_BufferAlloc(), aout_BufferFree, aout_InputPlay(), aout_lock_input(), aout_lock_mixer(), AOUT_MAX_INPUT_RATE, aout_MixerRun(), aout_unlock_input(), aout_unlock_mixer(), aout_input_t::b_changed, aout_input_t::b_error, block_t::i_buffer, block_t::i_length, block_t::i_nb_samples, block_t::i_pts, audio_format_t::i_rate, aout_input_t::input, aout_input_t::input_alloc, INPUT_RATE_DEFAULT, block_t::p_buffer, and vlc_memcpy().
Referenced by DecoderPlayAudio().
| void aout_FifoDestroy | ( | aout_instance_t * | p_aout, | |
| aout_fifo_t * | p_fifo | |||
| ) |
References AOUT_ASSERT_FIFO_LOCKED, aout_BufferFree, aout_fifo_t::p_first, block_t::p_next, and aout_fifo_t::pp_last.
Referenced by aout_InputDelete(), aout_OutputDelete(), and inputFailure().
| void aout_FifoInit | ( | aout_instance_t * | , | |
| aout_fifo_t * | , | |||
| uint32_t | ||||
| ) |
References AOUT_ASSERT_FIFO_LOCKED, date_Init(), aout_fifo_t::end_date, msg_Err, aout_fifo_t::p_first, and aout_fifo_t::pp_last.
Referenced by aout_InputNew(), aout_InputPlay(), and aout_OutputNew().
| void aout_FifoMoveDates | ( | aout_instance_t * | , | |
| aout_fifo_t * | , | |||
| mtime_t | ||||
| ) |
References AOUT_ASSERT_FIFO_LOCKED, date_Move(), aout_fifo_t::end_date, block_t::i_pts, aout_fifo_t::p_first, and block_t::p_next.
Referenced by aout_OutputNextBuffer().
| mtime_t aout_FifoNextStart | ( | aout_instance_t * | , | |
| aout_fifo_t * | ||||
| ) |
References AOUT_ASSERT_FIFO_LOCKED, date_Get(), and aout_fifo_t::end_date.
Referenced by aout_InputPlay().
| void aout_FifoPush | ( | aout_instance_t * | , | |
| aout_fifo_t * | , | |||
| aout_buffer_t * | ||||
| ) |
References AOUT_ASSERT_FIFO_LOCKED, date_Get(), date_Increment(), date_Set(), aout_fifo_t::end_date, block_t::i_length, block_t::i_nb_samples, block_t::i_pts, block_t::p_next, and aout_fifo_t::pp_last.
Referenced by aout_InputPlay(), and aout_OutputPlay().
| void aout_FifoSet | ( | aout_instance_t * | , | |
| aout_fifo_t * | , | |||
| mtime_t | ||||
| ) |
References AOUT_ASSERT_FIFO_LOCKED, aout_BufferFree, date_Set(), aout_fifo_t::end_date, aout_fifo_t::p_first, block_t::p_next, and aout_fifo_t::pp_last.
Referenced by aout_DecFlush(), aout_InputPlay(), aout_OutputNextBuffer(), and MixBuffer().
| int aout_FiltersCreatePipeline | ( | aout_instance_t * | p_aout, | |
| filter_t ** | pp_filters, | |||
| int * | pi_nb_filters, | |||
| const audio_sample_format_t * | p_input_format, | |||
| const audio_sample_format_t * | p_output_format | |||
| ) |
References _, AOUT_FMTS_IDENTICAL, aout_FormatsPrint(), AOUT_MAX_FILTERS, dialog_Fatal, FindFilter(), msg_Dbg, msg_Err, ReleaseFilter(), and SplitConversion().
Referenced by aout_InputNew(), and aout_OutputNew().
| void aout_FiltersDestroyPipeline | ( | aout_instance_t * | p_aout, | |
| filter_t ** | pp_filters, | |||
| int | i_nb_filters | |||
| ) |
References i, module_unneed, filter_t::p_module, filter_t::p_owner, vlc_object_detach, and vlc_object_release.
Referenced by aout_InputDelete(), aout_OutputDelete(), and inputFailure().
| void aout_FiltersHintBuffers | ( | aout_instance_t * | p_aout, | |
| filter_t ** | pp_filters, | |||
| int | i_nb_filters, | |||
| aout_alloc_t * | p_first_alloc | |||
| ) |
References AOUT_MAX_INPUT_RATE, es_format_t::audio, filter_t::fmt_in, filter_t::fmt_out, i, audio_format_t::i_bytes_per_frame, aout_alloc_t::i_bytes_per_sec, audio_format_t::i_frame_length, and audio_format_t::i_rate.
Referenced by aout_InputNew(), and aout_OutputNew().
| void aout_FiltersPlay | ( | filter_t ** | pp_filters, | |
| unsigned | i_nb_filters, | |||
| aout_buffer_t ** | pp_input_buffer | |||
| ) |
| void aout_FormatsPrint | ( | aout_instance_t * | p_aout, | |
| const char * | psz_text, | |||
| const audio_sample_format_t * | p_format1, | |||
| const audio_sample_format_t * | p_format2 | |||
| ) |
References aout_FormatPrintChannels(), audio_format_t::i_format, audio_format_t::i_rate, and msg_Dbg.
Referenced by aout_FiltersCreatePipeline().
| int aout_InputDelete | ( | aout_instance_t * | p_aout, | |
| aout_input_t * | p_input | |||
| ) |
References AOUT_ASSERT_MIXER_LOCKED, aout_FifoDestroy(), aout_FiltersDestroyPipeline(), aout_input_t::b_error, aout_input_t::b_recycle_vout, aout_mixer_input_t::fifo, aout_input_t::i_nb_filters, aout_input_t::i_nb_resamplers, aout_input_t::mixer, aout_input_t::pp_filters, aout_input_t::pp_resamplers, and var_GetString.
Referenced by aout_DecDelete(), aout_InputPlay(), aout_Restart(), and DecNew().
| int aout_InputNew | ( | aout_instance_t * | p_aout, | |
| aout_input_t * | p_input, | |||
| const aout_request_vout_t * | ||||
| ) |
References _, __MAX, aout_FifoInit(), aout_FilterBufferNew(), aout_FiltersCreatePipeline(), aout_FiltersHintBuffers(), AOUT_FMT_NON_LINEAR, AOUT_FMTS_IDENTICAL, aout_FormatPrepare(), aout_FormatPrint(), AOUT_MAX_FILTERS, AOUT_MAX_RESAMPLING, AOUT_RESAMPLING_NONE, es_format_t::audio, aout_alloc_t::b_alloc, aout_input_t::b_error, aout_input_t::b_recycle_vout, aout_input_t::b_restart, aout_mixer_input_t::begin, config_FindConfig(), EqualizerCallback(), aout_mixer_input_t::fifo, filter_t::fmt_in, filter_t::fmt_out, i, audio_format_t::i_bytes_per_frame, aout_alloc_t::i_bytes_per_sec, es_format_t::i_codec, audio_format_t::i_format, audio_format_t::i_frame_length, aout_input_t::i_last_input_rate, module_config_t::i_list, aout_input_t::i_nb_filters, aout_input_t::i_nb_resamplers, audio_format_t::i_rate, aout_input_t::i_resampling_type, aout_input_t::input, aout_input_t::input_alloc, INPUT_RATE_DEFAULT, inputFailure(), aout_input_t::mixer, aout_instance_t::mixer_format, module_exists(), module_need, module_unneed, msg_Dbg, msg_Err, filter_owner_sys_t::p_aout, filter_owner_sys_t::p_input, filter_t::p_module, filter_t::p_owner, aout_input_t::p_playback_rate_filter, aout_request_vout_t::p_private, filter_t::pf_audio_buffer_new, aout_request_vout_t::pf_request_vout, aout_input_t::pp_filters, aout_input_t::pp_resamplers, module_config_t::ppsz_list, module_config_t::ppsz_list_text, vlc_value_t::psz_string, ReplayGainCallback(), ReplayGainSelect(), aout_input_t::request_vout, RequestVout(), strdup(), text, var_AddCallback, var_Change, var_Create, var_Get, var_GetBool, var_GetString, var_SetString, var_Type, VisualizationCallback(), vlc_custom_create, VLC_OBJECT, vlc_object_attach, vlc_object_detach, VLC_OBJECT_GENERIC, vlc_object_release, VLC_SUCCESS, VLC_VAR_ADDCHOICE, VLC_VAR_BOOL, VLC_VAR_DOINHERIT, VLC_VAR_FLOAT, VLC_VAR_HASCHOICE, VLC_VAR_SETTEXT, and VLC_VAR_STRING.
Referenced by aout_InputPlay(), aout_Restart(), and DecNew().
| int aout_InputPlay | ( | aout_instance_t * | p_aout, | |
| aout_input_t * | p_input, | |||
| aout_buffer_t * | p_buffer, | |||
| int | i_input_rate | |||
| ) |
References AOUT_ASSERT_INPUT_LOCKED, aout_FifoInit(), aout_FifoNextStart(), aout_FifoPush(), aout_FifoSet(), aout_FiltersPlay(), aout_InputDelete(), aout_InputNew(), aout_lock_input_fifos(), aout_lock_mixer(), AOUT_MIN_PREPARE_TIME, AOUT_PTS_TOLERANCE, AOUT_RESAMPLING_DOWN, AOUT_RESAMPLING_NONE, AOUT_RESAMPLING_UP, aout_unlock_input_fifos(), aout_unlock_mixer(), es_format_t::audio, aout_input_t::b_paused, aout_input_t::b_restart, aout_mixer_input_t::begin, BLOCK_FLAG_DISCONTINUITY, block_Release(), F, aout_mixer_input_t::fifo, filter_t::fmt_in, block_t::i_flags, aout_input_t::i_last_input_rate, aout_input_t::i_nb_filters, aout_input_t::i_nb_resamplers, block_t::i_nb_samples, aout_input_t::i_pause_date, block_t::i_pts, audio_format_t::i_rate, aout_input_t::i_resamp_start_date, aout_input_t::i_resamp_start_drift, aout_input_t::i_resampling_type, aout_input_t::input, INPUT_RATE_DEFAULT, inputDrop(), inputResamplingStop(), mdate(), aout_input_t::mixer, aout_instance_t::mixer_format, msg_Warn, aout_input_t::p_playback_rate_filter, aout_input_t::pp_filters, aout_input_t::pp_resamplers, and aout_input_t::request_vout.
Referenced by aout_DecPlay().
| static void aout_lock_input | ( | aout_instance_t * | p_aout, | |
| aout_input_t * | p_input | |||
| ) | [inline, static] |
References aout_input_t::lock, and vlc_mutex_lock().
Referenced by aout_DecChangePause(), aout_DecGetResetLost(), aout_DecNewBuffer(), aout_DecPlay(), aout_Restart(), and DecNew().
| static void aout_lock_input_fifos | ( | aout_instance_t * | p_aout | ) | [inline, static] |
References aout_instance_t::input_fifos_lock, and vlc_mutex_lock().
Referenced by __aout_VolumeSet(), aout_DecFlush(), aout_InputPlay(), aout_OutputNextBuffer(), aout_Restart(), DecNew(), and MixBuffer().
| static void aout_lock_mixer | ( | aout_instance_t * | p_aout | ) | [inline, static] |
References aout_instance_t::mixer_lock, and vlc_mutex_lock().
Referenced by __aout_VolumeGet(), __aout_VolumeSet(), aout_DecChangePause(), aout_DecDelete(), aout_DecPlay(), aout_InputPlay(), aout_Restart(), AoutInputsMarkToRestart(), DecNew(), and ReplayGainCallback().
| static void aout_lock_output_fifo | ( | aout_instance_t * | p_aout | ) | [inline, static] |
References aout_instance_t::output_fifo_lock, and vlc_mutex_lock().
Referenced by aout_OutputDelete(), aout_OutputNew(), aout_OutputNextBuffer(), aout_OutputPlay(), and MixBuffer().
| void aout_MixerDelete | ( | aout_instance_t * | p_aout | ) |
References aout_mixer_t::input, aout_mixer_t::module, module_unneed, aout_instance_t::p_mixer, vlc_object_detach, and vlc_object_release.
Referenced by aout_DecDelete(), aout_MixerMultiplierSet(), aout_Restart(), and DecNew().
| int aout_MixerMultiplierGet | ( | aout_instance_t * | p_aout, | |
| float * | pf_multiplier | |||
| ) |
References aout_instance_t::mixer_multiplier.
| int aout_MixerMultiplierSet | ( | aout_instance_t * | p_aout, | |
| float | f_multiplier | |||
| ) |
References aout_MixerDelete(), aout_MixerNew(), aout_instance_t::mixer_multiplier, and aout_instance_t::p_mixer.
Referenced by aout_VolumeSoftSet(), and ReplayGainCallback().
| int aout_MixerNew | ( | aout_instance_t * | p_aout | ) |
References aout_mixer_t::allocation, aout_mixer_t::fmt, i, aout_instance_t::i_nb_inputs, aout_mixer_t::input, aout_mixer_t::input_count, aout_instance_t::input_fifos_lock, aout_mixer_t::mix, aout_input_t::mixer, aout_instance_t::mixer_allocation, aout_instance_t::mixer_format, aout_instance_t::mixer_multiplier, aout_mixer_t::module, module_need, msg_Err, aout_mixer_t::multiplier, aout_instance_t::p_mixer, aout_instance_t::pp_inputs, aout_mixer_t::sys, vlc_assert_locked, VLC_EGENERIC, vlc_object_attach, vlc_object_create, vlc_object_detach, vlc_object_release, and VLC_SUCCESS.
Referenced by aout_MixerMultiplierSet(), aout_Restart(), and DecNew().
| void aout_MixerRun | ( | aout_instance_t * | p_aout | ) |
| void aout_OutputDelete | ( | aout_instance_t * | p_aout | ) |
References aout_FifoDestroy(), aout_FiltersDestroyPipeline(), aout_lock_output_fifo(), aout_unlock_output_fifo(), aout_output_t::b_error, aout_output_t::fifo, aout_output_t::i_nb_filters, module_unneed, aout_instance_t::output, aout_output_t::p_module, and aout_output_t::pp_filters.
Referenced by aout_DecDelete(), aout_Restart(), and DecNew().
| int aout_OutputNew | ( | aout_instance_t * | p_aout, | |
| audio_sample_format_t * | p_format | |||
| ) |
References _, AOUT_CHAN_CENTER, AOUT_CHAN_DOLBYSTEREO, AOUT_CHAN_DUALMONO, AOUT_CHAN_LEFT, AOUT_CHAN_PHYSMASK, AOUT_CHAN_REVERSESTEREO, AOUT_CHAN_RIGHT, aout_ChannelsRestart(), aout_FifoInit(), aout_FiltersCreatePipeline(), aout_FiltersHintBuffers(), AOUT_FMT_NON_LINEAR, aout_FormatPrepare(), aout_FormatPrint(), aout_lock_output_fifo(), aout_unlock_output_fifo(), AOUT_VAR_CHAN_DOLBYS, AOUT_VAR_CHAN_LEFT, AOUT_VAR_CHAN_RIGHT, AOUT_VAR_CHAN_RSTEREO, AOUT_VAR_CHAN_STEREO, aout_alloc_t::b_alloc, vlc_value_t::b_bool, aout_output_t::b_error, config_GetInt, aout_output_t::fifo, HAVE_FPU, audio_format_t::i_bytes_per_frame, aout_alloc_t::i_bytes_per_sec, audio_format_t::i_format, audio_format_t::i_frame_length, vlc_value_t::i_int, aout_output_t::i_nb_filters, audio_format_t::i_original_channels, audio_format_t::i_physical_channels, audio_format_t::i_rate, aout_instance_t::mixer_allocation, aout_instance_t::mixer_format, module_need, module_unneed, msg_Err, aout_output_t::output, aout_instance_t::output, aout_output_t::p_module, aout_output_t::pp_filters, vlc_value_t::psz_string, text, var_AddCallback, var_Change, var_Create, var_Get, var_Set, var_Type, VLC_CODEC_FI32, VLC_CODEC_FL32, VLC_VAR_ADDCHOICE, VLC_VAR_HASCHOICE, VLC_VAR_INTEGER, and VLC_VAR_SETTEXT.
Referenced by aout_Restart(), and DecNew().
| void aout_OutputPlay | ( | aout_instance_t * | p_aout, | |
| aout_buffer_t * | p_buffer | |||
| ) |
| static void aout_unlock_input | ( | aout_instance_t * | p_aout, | |
| aout_input_t * | p_input | |||
| ) | [inline, static] |
References aout_input_t::lock, and vlc_mutex_unlock().
Referenced by aout_DecChangePause(), aout_DecGetResetLost(), aout_DecNewBuffer(), aout_DecPlay(), aout_Restart(), and DecNew().
| static void aout_unlock_input_fifos | ( | aout_instance_t * | p_aout | ) | [inline, static] |
References aout_instance_t::input_fifos_lock, and vlc_mutex_unlock().
Referenced by __aout_VolumeSet(), aout_DecFlush(), aout_InputPlay(), aout_OutputNextBuffer(), aout_Restart(), DecNew(), and MixBuffer().
| static void aout_unlock_mixer | ( | aout_instance_t * | p_aout | ) | [inline, static] |
References aout_instance_t::mixer_lock, and vlc_mutex_unlock().
Referenced by __aout_VolumeGet(), __aout_VolumeSet(), aout_DecChangePause(), aout_DecDelete(), aout_DecPlay(), aout_InputPlay(), aout_Restart(), AoutInputsMarkToRestart(), DecNew(), and ReplayGainCallback().
| static void aout_unlock_output_fifo | ( | aout_instance_t * | p_aout | ) | [inline, static] |
References aout_instance_t::output_fifo_lock, and vlc_mutex_unlock().
Referenced by aout_OutputDelete(), aout_OutputNew(), aout_OutputNextBuffer(), aout_OutputPlay(), and MixBuffer().
| int aout_VolumeNoneGet | ( | aout_instance_t * | , | |
| audio_volume_t * | ||||
| ) |
Referenced by aout_VolumeNoneInit().
| int aout_VolumeNoneInfos | ( | aout_instance_t * | , | |
| audio_volume_t * | ||||
| ) |
| int aout_VolumeNoneSet | ( | aout_instance_t * | , | |
| audio_volume_t | ||||
| ) |
Referenced by aout_VolumeNoneInit().
| int aout_VolumeSoftGet | ( | aout_instance_t * | , | |
| audio_volume_t * | ||||
| ) |
References aout_output_t::i_volume, and aout_instance_t::output.
Referenced by aout_VolumeSoftInit().
| int aout_VolumeSoftInfos | ( | aout_instance_t * | , | |
| audio_volume_t * | ||||
| ) |
| int aout_VolumeSoftSet | ( | aout_instance_t * | , | |
| audio_volume_t | ||||
| ) |
References aout_MixerMultiplierSet(), AOUT_VOLUME_DEFAULT, aout_output_t::i_volume, and aout_instance_t::output.
Referenced by aout_VolumeSoftInit().
| static bool AoutChangeFilterString | ( | vlc_object_t * | p_obj, | |
| aout_instance_t * | p_aout, | |||
| const char * | psz_variable, | |||
| const char * | psz_name, | |||
| bool | b_add | |||
| ) | [inline, static] |
References asprintf(), config_GetPsz, config_PutPsz, strdup(), var_GetString, and var_SetString.
Referenced by aout_EnableFilter(), and ChangeFiltersString().
| static void AoutInputsMarkToRestart | ( | aout_instance_t * | p_aout | ) | [inline, static] |
This function will safely mark aout input to be restarted as soon as possible to take configuration changes into account.
References aout_lock_mixer(), aout_unlock_mixer(), aout_input_t::b_restart, i, aout_instance_t::i_nb_inputs, and aout_instance_t::pp_inputs.
Referenced by aout_EnableFilter(), EqualizerCallback(), and VisualizationCallback().
1.5.6