VLC 4.0.0-dev
|
Data Structures | |
struct | es_out_pgrm_t |
struct | vlc_es_id_t |
Opaque structure representing an ES (Elementary Stream) track. More... | |
struct | es_out_id_t |
struct | es_out_es_props_t |
struct | es_out_sys_t |
struct | clock_source_mapping |
Macros | |
#define | foreach_es_then_es_slaves(pos) |
#define | IGNORE_ES DATA_ES |
Functions | |
static void | EsOutDelLocked (es_out_t *, es_out_id_t *) |
static void | EsOutDel (es_out_t *, es_out_id_t *) |
static void | EsOutTerminate (es_out_t *) |
static void | EsOutSelect (es_out_t *out, es_out_id_t *es, bool b_force) |
Select an ES given the current mode XXX: you need to take a the lock before (stream.stream_lock) More... | |
static void | EsOutSelectList (es_out_t *, enum es_format_category_e cat, vlc_es_id_t *const *es_id_list) |
static void | EsOutUpdateInfo (es_out_t *, es_out_id_t *es, const vlc_meta_t *) |
static int | EsOutSetRecord (es_out_t *, bool b_record, const char *dir_path) |
static bool | EsIsSelected (es_out_id_t *es) |
static void | EsOutSelectEs (es_out_t *out, es_out_id_t *es, bool b_force) |
static void | EsOutDeleteInfoEs (es_out_t *, es_out_id_t *es) |
static void | EsOutUnselectEs (es_out_t *out, es_out_id_t *es, bool b_update) |
static void | EsOutDecoderChangeDelay (es_out_t *out, es_out_id_t *p_es) |
static void | EsOutDecodersChangePause (es_out_t *out, bool b_paused, vlc_tick_t i_date) |
static void | EsOutChangePosition (es_out_t *out, bool b_flush, es_out_id_t *p_next_frame_es) |
static void | EsOutProgramChangePause (es_out_t *out, bool b_paused, vlc_tick_t i_date) |
static void | EsOutProgramsChangeRate (es_out_t *out) |
static void | EsOutDecodersStopBuffering (es_out_t *out, bool b_forced) |
static void | EsOutGlobalMeta (es_out_t *p_out, const vlc_meta_t *p_meta) |
static void | EsOutMeta (es_out_t *p_out, const vlc_meta_t *p_meta, const vlc_meta_t *p_progmeta) |
static int | EsOutEsUpdateFmt (es_out_t *out, es_out_id_t *es, const es_format_t *fmt) |
static int | EsOutControlLocked (es_out_t *out, input_source_t *, int i_query,...) |
static int | EsOutPrivControlLocked (es_out_t *out, int i_query,...) |
static char * | LanguageGetName (const char *psz_code) |
static char * | LanguageGetCode (const char *psz_lang) |
static char ** | LanguageSplit (const char *psz_langs) |
static int | LanguageArrayIndex (char **ppsz_langs, const char *psz_lang) |
static char * | EsOutProgramGetMetaName (es_out_pgrm_t *p_pgrm) |
static char * | EsInfoCategoryName (es_out_id_t *es) |
static int | clock_source_mapping_cmp (const void *key, const void *val) |
static enum vlc_clock_master_source | clock_source_Inherit (vlc_object_t *obj) |
static int | EsOutGetClosedCaptionsChannel (const es_format_t *p_fmt) |
static void | decoder_on_vout_started (vlc_input_decoder_t *decoder, vout_thread_t *vout, enum vlc_vout_order order, void *userdata) |
static void | decoder_on_vout_stopped (vlc_input_decoder_t *decoder, vout_thread_t *vout, void *userdata) |
static void | decoder_on_thumbnail_ready (vlc_input_decoder_t *decoder, picture_t *pic, void *userdata) |
static void | decoder_on_new_video_stats (vlc_input_decoder_t *decoder, unsigned decoded, unsigned lost, unsigned displayed, unsigned late, void *userdata) |
static void | decoder_on_new_audio_stats (vlc_input_decoder_t *decoder, unsigned decoded, unsigned lost, unsigned played, void *userdata) |
static int | decoder_get_attachments (vlc_input_decoder_t *decoder, input_attachment_t ***ppp_attachment, void *userdata) |
static es_out_es_props_t * | GetPropsByCat (es_out_sys_t *p_sys, int i_cat) |
static void | EsOutPropsCleanup (es_out_es_props_t *p_props) |
static void | EsOutPropsInit (es_out_es_props_t *p_props, bool autoselect, input_thread_t *p_input, enum input_type input_type, enum es_out_policy_e e_default_policy, const char *psz_trackidvar, const char *psz_trackvar, const char *psz_langvar, const char *psz_debug) |
static void | EsTerminate (es_out_id_t *es) |
static char * | EsGetTitle (es_out_id_t *es) |
static void | EsRelease (es_out_id_t *es) |
static void | EsHold (es_out_id_t *es) |
static void | EsOutDelete (es_out_t *out) |
static void | ProgramDelete (es_out_pgrm_t *p_pgrm) |
static vlc_tick_t | EsOutGetWakeup (es_out_t *out) |
static es_out_id_t * | EsOutGetSelectedCat (es_out_t *out, enum es_format_category_e cat) |
static bool | EsOutDecodersIsEmpty (es_out_t *out) |
static void | EsOutUpdateDelayJitter (es_out_t *out) |
static void | EsOutSetEsDelay (es_out_t *out, es_out_id_t *es, vlc_tick_t delay) |
static void | EsOutSetDelay (es_out_t *out, int i_cat, vlc_tick_t i_delay) |
static void | EsOutStopNextFrame (es_out_t *out) |
static void | EsOutChangePause (es_out_t *out, bool b_paused, vlc_tick_t i_date) |
static void | EsOutChangeRate (es_out_t *out, float rate) |
static void | EsOutStopFreeVout (es_out_t *out) |
static bool | EsOutIsExtraBufferingAllowed (es_out_t *out) |
static void | EsOutFrameNext (es_out_t *out) |
static vlc_tick_t | EsOutGetBuffering (es_out_t *out) |
static void | EsOutSendEsEvent (es_out_t *out, es_out_id_t *es, int action, bool forced) |
static void | EsOutProgramHandleClockSource (es_out_t *out, es_out_pgrm_t *p_pgrm) |
static bool | EsOutIsGroupSticky (es_out_t *p_out, input_source_t *source, int i_group) |
static bool | EsOutIsProgramVisible (es_out_t *out, input_source_t *source, int i_group) |
static void | EsOutProgramSelect (es_out_t *out, es_out_pgrm_t *p_pgrm) |
static es_out_pgrm_t * | EsOutProgramAdd (es_out_t *out, input_source_t *source, int i_group) |
static es_out_pgrm_t * | EsOutProgramSearch (es_out_t *p_out, input_source_t *source, int i_group) |
static es_out_pgrm_t * | EsOutProgramInsert (es_out_t *p_out, input_source_t *source, int i_group) |
static int | EsOutProgramDel (es_out_t *out, input_source_t *source, int i_group) |
static char * | EsOutProgramGetProgramName (es_out_pgrm_t *p_pgrm) |
static void | EsOutProgramMeta (es_out_t *out, input_source_t *source, int i_group, const vlc_meta_t *p_meta) |
static void | EsOutProgramEpgEvent (es_out_t *out, input_source_t *source, int i_group, const vlc_epg_event_t *p_event) |
static void | EsOutProgramEpg (es_out_t *out, input_source_t *source, int i_group, const vlc_epg_t *p_epg) |
static void | EsOutEpgTime (es_out_t *out, int64_t time) |
static void | EsOutProgramUpdateScrambled (es_out_t *p_out, es_out_pgrm_t *p_pgrm) |
static void | EsOutUpdateEsLanguageTitle (es_out_id_t *es, const es_format_t *fmt) |
static void | EsOutFillEsFmt (es_out_t *out, es_format_t *fmt) |
static char * | EsOutCreateStrId (es_out_id_t *es, bool stable, const char *id, es_out_id_t *p_master) |
static es_out_id_t * | EsOutAddLocked (es_out_t *out, input_source_t *source, const es_format_t *fmt, es_out_id_t *p_master) |
static es_out_id_t * | EsOutAdd (es_out_t *out, input_source_t *source, const es_format_t *fmt) |
static void | ClockUpdate (vlc_tick_t system_ts, vlc_tick_t ts, double rate, unsigned frame_rate, unsigned frame_rate_base, void *data) |
static void | EsOutCreateDecoder (es_out_t *out, es_out_id_t *p_es) |
static void | EsOutDestroyDecoder (es_out_t *out, es_out_id_t *p_es) |
static void | EsOutDrainCCChannels (es_out_id_t *parent) |
static void | EsDeleteCCChannels (es_out_t *out, es_out_id_t *parent) |
static bool | EsOutSelectMatchPrioritized (const es_out_es_props_t *p_esprops, const es_out_id_t *es) |
static bool | EsOutSelectHasExplicitParams (const es_out_es_props_t *p_esprops) |
static bool | EsOutIdMatchStrIds (const es_out_id_t *es, char *str_ids) |
static bool | EsOutSelectMatchExplicitParams (const es_out_es_props_t *p_esprops, const es_out_id_t *es) |
static void | EsOutSelectListFromProps (es_out_t *out, enum es_format_category_e cat) |
static bool | EsOutIdMatchEsList (const es_out_id_t *es, vlc_es_id_t *const *es_id_list) |
static void | EsOutCreateCCChannels (es_out_t *out, vlc_fourcc_t codec, uint64_t i_bitmap, const char *psz_descfmt, es_out_id_t *parent) |
static int | EsOutSend (es_out_t *out, es_out_id_t *es, block_t *p_block) |
Send a block for the given es_out. More... | |
static void | EsOutDrainDecoder (es_out_t *out, es_out_id_t *es) |
static int | EsOutVaControlLocked (es_out_t *out, input_source_t *source, int i_query, va_list args) |
Control query handler. More... | |
static vlc_tick_t | EsOutGetTracksDelay (es_out_t *out) |
static int | EsOutVaPrivControlLocked (es_out_t *out, int query, va_list args) |
static int | EsOutControl (es_out_t *out, input_source_t *source, int i_query, va_list args) |
static int | EsOutPrivControl (es_out_t *out, int query, va_list args) |
es_out_t * | input_EsOutNew (input_thread_t *p_input, input_source_t *main_source, float rate, enum input_type input_type) |
static void | info_category_AddCodecInfo (info_category_t *p_cat, const char *psz_info, vlc_fourcc_t i_fourcc, const char *psz_description) |
es_out_id_t * | vlc_es_id_get_out (vlc_es_id_t *id) |
vlc_es_id_t * | vlc_es_id_Hold (vlc_es_id_t *id) |
Increase the ES track id reference count. More... | |
void | vlc_es_id_Release (vlc_es_id_t *id) |
Decrease the ES track id reference count. More... | |
int | vlc_es_id_GetInputId (vlc_es_id_t *id) |
Get the ES track input id. More... | |
bool | vlc_es_id_IsStrIdStable (vlc_es_id_t *id) |
Return whether the ES track identifier is stable. More... | |
const char * | vlc_es_id_GetStrId (vlc_es_id_t *id) |
Get the unique string identifier. More... | |
enum es_format_category_e | vlc_es_id_GetCat (vlc_es_id_t *id) |
Get the ES category. More... | |
const input_source_t * | vlc_es_id_GetSource (vlc_es_id_t *id) |
Variables | |
static const struct vlc_input_decoder_callbacks | decoder_cbs |
static es_out_id_t | es_cat [DATA_ES] |
static const struct es_out_callbacks | es_out_cbs |
#define foreach_es_then_es_slaves | ( | pos | ) |
#define IGNORE_ES DATA_ES |
|
static |
References ARRAY_SIZE, clock_source_mapping_cmp(), var_InheritString(), VLC_CLOCK_MASTER_AUDIO, VLC_CLOCK_MASTER_AUTO, VLC_CLOCK_MASTER_INPUT, and VLC_CLOCK_MASTER_MONOTONIC.
Referenced by input_EsOutNew().
|
static |
References clock_source_mapping::key, strcasecmp(), and clock_source_mapping::val.
Referenced by clock_source_Inherit().
|
static |
References container_of, es_out_id_t::id, input_SendEventOutputClock(), es_out_id_t::master, es_out_id_t::out, and es_out_sys_t::p_input.
Referenced by EsOutCreateDecoder().
|
static |
References container_of, input_GetAttachments(), and es_out_sys_t::p_input.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
References es_out_id_t::cc, EsOutDelLocked(), EsOutGetSelectedCat(), EsOutSendEsEvent(), es_out_id_t::fmt, es_out_id_t::i_bitmap, es_format_t::i_id, es_out_id_t::pp_es, SPU_ES, and es_out_id_t::type.
Referenced by EsOutUnselectEs(), and EsOutVaControlLocked().
|
static |
References _, asprintf(), es_out_id_t::fmt, es_out_id_t::i_pos, es_format_t::psz_description, es_out_id_t::psz_language, and strdup().
Referenced by EsOutAddLocked(), and EsOutUpdateEsLanguageTitle().
|
static |
References es_out_id_t::rc, and vlc_atomic_rc_inc().
Referenced by vlc_es_id_Hold().
|
static |
References _, asprintf(), es_out_id_t::id, and vlc_es_id_t::str_id.
Referenced by EsOutDeleteInfoEs(), and EsOutUpdateInfo().
|
static |
References EsOutGetClosedCaptionsChannel(), es_out_id_t::fmt, es_format_t::i_codec, es_out_id_t::p_dec, es_out_id_t::p_master, and vlc_input_decoder_GetCcState().
Referenced by EsOutDelLocked(), EsOutGetSelectedCat(), EsOutProgramSelect(), EsOutSelect(), EsOutSelectEs(), EsOutSelectList(), EsOutSelectListFromProps(), EsOutUnselectEs(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
|
static |
References es_out_sys_t::audio, AUDIO_ES, es_out_id_t::b_scrambled, es_out_id_t::b_terminated, es_out_id_t::cc, container_of, es_out_id_t::delay, es_out_sys_t::es, es_format_Clean(), es_format_Copy(), es_format_Init(), es_out_sys_t::es_slaves, EsGetTitle(), EsOutCreateStrId(), EsOutFillEsFmt(), EsOutIsGroupSticky(), EsOutProgramInsert(), EsOutSelect(), EsOutSendEsEvent(), EsOutUpdateInfo(), es_out_id_t::fmt, es_out_id_t::fmt_out, foreach_es_then_es_slaves, es_out_id_t::i_bitmap, es_format_t::i_cat, vlc_es_id_t::i_cat, es_out_id_t::i_channel, es_format_t::i_codec, es_out_es_props_t::i_count, es_out_pgrm_t::i_es, es_format_t::i_group, es_format_t::i_id, vlc_es_id_t::i_id, es_format_t::i_original_fourcc, es_out_id_t::i_pos, es_out_id_t::i_pts_level, es_out_id_t::id, input_source_GetNewAutoId(), input_source_GetStrId(), input_source_Hold(), input_source_Release(), LanguageGetCode(), LanguageGetName(), es_out_id_t::master, es_out_id_t::mouse_event_cb, es_out_id_t::mouse_event_userdata, msg_Err, es_out_id_t::node, es_out_id_t::out, es_out_id_t::p_clock, es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, es_out_id_t::p_master, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, es_format_t::psz_language, es_out_id_t::psz_language, es_out_id_t::psz_language_code, es_out_id_t::psz_title, es_out_id_t::rc, es_out_pgrm_t::source, vlc_es_id_t::source, SPU_ES, vlc_es_id_t::stable, vlc_es_id_t::str_id, es_out_sys_t::sub, es_out_id_t::type, UNKNOWN_ES, es_out_sys_t::video, VIDEO_ES, vlc_atomic_rc_init(), vlc_list_append(), VLC_SUCCESS, VLC_TICK_INVALID, and VLC_TICK_MAX.
Referenced by EsOutAdd(), and EsOutCreateCCChannels().
|
static |
References es_out_sys_t::b_paused, container_of, EsOutDecodersChangePause(), EsOutProgramChangePause(), EsOutProgramsChangeRate(), EsOutStopNextFrame(), es_out_sys_t::i_buffering_extra_initial, es_out_sys_t::i_buffering_extra_stream, es_out_sys_t::i_buffering_extra_system, es_out_sys_t::i_pause_date, input_clock_GetState(), es_out_pgrm_t::p_input_clock, es_out_sys_t::p_next_frame_es, and es_out_sys_t::p_pgrm.
Referenced by EsOutVaPrivControlLocked().
|
static |
References es_out_sys_t::b_buffering, container_of, foreach_es_then_es_slaves, es_out_sys_t::i_buffering_extra_initial, es_out_sys_t::i_buffering_extra_stream, es_out_sys_t::i_buffering_extra_system, es_out_pgrm_t::i_last_pcr, es_out_sys_t::i_preroll_end, es_out_sys_t::i_prev_stream_level, es_out_id_t::i_pts_level, input_clock_Reset(), input_SendEventCache(), es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, es_out_sys_t::programs, vlc_input_decoder_Flush(), vlc_input_decoder_StartWait(), vlc_list_foreach, and VLC_TICK_INVALID.
Referenced by EsOutDecodersStopBuffering(), EsOutStopNextFrame(), and EsOutVaControlLocked().
|
static |
References container_of, EsOutProgramsChangeRate(), foreach_es_then_es_slaves, es_out_id_t::p_dec, es_out_sys_t::rate, and vlc_input_decoder_ChangeRate().
Referenced by EsOutVaPrivControlLocked().
|
static |
|
static |
References EsOutVaControlLocked().
Referenced by EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References asprintf(), subs_format_t::cc, es_out_id_t::cc, container_of, es_format_Clean(), es_format_Init(), EsOutAddLocked(), EsOutSelect(), vlc_input_decoder_cfg::fmt, es_out_id_t::fmt, es_out_id_t::i_bitmap, subs_format_t::i_channel, es_out_es_props_t::i_channel, es_format_t::i_group, es_format_t::i_id, msg_Dbg, es_out_sys_t::p_input, es_out_id_t::p_pgrm, es_out_id_t::pp_es, es_format_t::psz_description, es_out_pgrm_t::source, SPU_ES, es_out_sys_t::sub, es_format_t::subs, and es_out_id_t::type.
Referenced by EsOutSend().
|
static |
References AUDIO_ES, es_out_sys_t::b_buffering, es_out_sys_t::b_paused, ClockUpdate(), container_of, decoder_cbs, EsOutDecoderChangeDelay(), EsOutUpdateDelayJitter(), vlc_input_decoder_cfg::fmt, es_out_id_t::fmt, es_format_t::i_cat, es_out_sys_t::i_pause_date, es_out_id_t::id, input_priv(), es_out_sys_t::input_type, INPUT_TYPE_NONE, es_out_id_t::master, es_out_id_t::mouse_event_cb, es_out_id_t::mouse_event_userdata, vlc_clock_cbs::on_update, es_out_id_t::p_clock, es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, es_out_pgrm_t::p_main_clock, es_out_id_t::p_master, es_out_pgrm_t::p_master_es_clock, es_out_id_t::p_pgrm, input_thread_private_t::p_resource, input_thread_private_t::p_sout, es_out_sys_t::p_sout_record, es_out_sys_t::rate, vlc_es_id_t::str_id, UNKNOWN_ES, unlikely, es_out_sys_t::user_clock_source, VIDEO_ES, vlc_assert_unreachable, vlc_clock_Delete(), vlc_clock_main_CreateMaster(), vlc_clock_main_CreateSlave(), VLC_CLOCK_MASTER_AUDIO, VLC_CLOCK_MASTER_AUTO, VLC_CLOCK_MASTER_INPUT, VLC_CLOCK_MASTER_MONOTONIC, vlc_input_decoder_ChangePause(), vlc_input_decoder_ChangeRate(), vlc_input_decoder_New(), vlc_input_decoder_SetVoutMouseEvent(), vlc_input_decoder_StartWait(), and VLC_OBJECT.
Referenced by EsOutSelectEs(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References AUDIO_ES, DATA_ES, es_out_id_t::fmt, es_format_t::i_cat, es_format_t::i_id, es_out_id_t::id, vlc_memstream::ptr, SPU_ES, vlc_es_id_t::str_id, VIDEO_ES, vlc_memstream_close(), vlc_memstream_open(), vlc_memstream_printf(), vlc_memstream_putc(), and vlc_memstream_puts().
Referenced by EsOutAddLocked().
|
static |
References AUDIO_ES, container_of, es_out_id_t::delay, es_out_id_t::fmt, es_out_sys_t::i_audio_delay, es_format_t::i_cat, es_out_sys_t::i_spu_delay, es_out_id_t::p_dec, es_out_id_t::p_dec_record, SPU_ES, vlc_input_decoder_ChangeDelay(), and VLC_TICK_MAX.
Referenced by EsOutCreateDecoder(), EsOutSetDelay(), and EsOutSetEsDelay().
|
static |
References container_of, foreach_es_then_es_slaves, es_out_id_t::p_dec, es_out_id_t::p_dec_record, and vlc_input_decoder_ChangePause().
Referenced by EsOutChangePause().
|
static |
|
static |
References es_out_sys_t::b_buffering, es_out_sys_t::b_paused, container_of, EsOutChangePosition(), EsOutStopFreeVout(), es_out_id_t::fmt, foreach_es_then_es_slaves, es_out_sys_t::i_buffering_extra_initial, es_out_sys_t::i_buffering_extra_stream, es_format_t::i_cat, es_out_sys_t::i_pause_date, es_out_sys_t::i_preroll_end, es_out_sys_t::i_prev_stream_level, es_out_sys_t::i_pts_delay, es_out_sys_t::i_pts_jitter, es_out_sys_t::i_tracks_pts_delay, input_clock_ChangeSystemOrigin(), input_clock_GetState(), input_SendEventCache(), MS_FROM_VLC_TICK, msg_Dbg, es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, es_out_pgrm_t::p_main_clock, es_out_sys_t::p_pgrm, SPU_ES, vlc_clock_main_Reset(), vlc_clock_main_SetFirstPcr(), vlc_input_decoder_StopWait(), vlc_input_decoder_Wait(), VLC_TICK_FROM_MS, and vlc_tick_now().
Referenced by EsOutDecodersIsEmpty(), and EsOutVaControlLocked().
|
static |
References container_of, EsOutDelLocked(), es_out_sys_t::lock, vlc_mutex_lock(), and vlc_mutex_unlock().
|
static |
|
static |
|
static |
References es_out_id_t::b_scrambled, container_of, EsIsSelected(), EsOutDeleteInfoEs(), EsOutDrainDecoder(), EsOutIsGroupSticky(), EsOutProgramUpdateScrambled(), EsOutSelect(), EsOutSendEsEvent(), EsOutUnselectEs(), EsRelease(), EsTerminate(), es_out_id_t::fmt, foreach_es_then_es_slaves, GetPropsByCat(), es_format_t::i_cat, es_out_es_props_t::i_count, es_out_pgrm_t::i_es, es_format_t::i_group, es_out_id_t::id, msg_Dbg, es_out_id_t::p_dec, es_out_sys_t::p_input, es_out_es_props_t::p_main_es, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, and vlc_es_id_t::source.
Referenced by EsDeleteCCChannels(), and EsOutDel().
|
static |
References es_format_Clean(), es_out_id_t::fmt_out, es_out_id_t::p_clock, es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_pgrm_t::p_master_es_clock, es_out_id_t::p_pgrm, vlc_clock_Delete(), vlc_input_decoder_Delete(), vlc_input_decoder_Flush(), and VLC_UNUSED.
Referenced by EsOutUnselectEs(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References es_out_id_t::cc, es_out_id_t::i_bitmap, es_out_id_t::p_dec, es_out_id_t::pp_es, and vlc_input_decoder_Drain().
Referenced by EsOutDrainDecoder().
|
static |
References es_out_sys_t::b_buffering, container_of, EsOutDrainCCChannels(), input_Stopped(), es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, vlc_input_decoder_Drain(), vlc_input_decoder_IsEmpty(), VLC_TICK_FROM_MS, and vlc_tick_sleep().
Referenced by EsOutDelLocked(), and EsOutVaControlLocked().
|
static |
References container_of, input_item_SetEpgTime(), input_priv(), es_out_sys_t::p_input, and input_thread_private_t::p_item.
Referenced by EsOutVaControlLocked().
|
static |
References container_of, es_format_Clean(), es_format_Copy(), EsOutUpdateEsLanguageTitle(), es_out_id_t::fmt, es_out_id_t::fmt_out, es_format_t::i_cat, es_format_t::i_codec, es_format_t::i_extra_languages, es_format_t::i_group, es_format_t::i_id, es_format_t::i_original_fourcc, es_format_t::i_priority, input_GetItem(), input_item_UpdateTracksInfo(), es_format_t::p_extra_languages, es_out_sys_t::p_input, es_format_t::psz_description, subs_format_t::psz_encoding, es_format_t::psz_language, SPU_ES, es_format_t::subs, and VLC_SUCCESS.
Referenced by EsOutSend().
|
static |
References es_format_t::audio, AUDIO_ES, es_format_t::audio_replay_gain, AUDIO_REPLAY_GAIN_MAX, container_of, audio_format_t::i_bitspersample, es_format_t::i_cat, es_format_t::i_codec, video_format_t::i_frame_rate, video_format_t::i_frame_rate_base, video_format_t::i_height, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, input_priv(), es_out_sys_t::p_input, audio_replay_gain_t::pb_gain, audio_replay_gain_t::pb_peak, audio_replay_gain_t::pf_gain, audio_replay_gain_t::pf_peak, SPU_ES, es_format_t::video, VIDEO_ES, vlc_audio_replay_gain_MergeFromMeta(), vlc_fourcc_GetCodec(), vlc_fourcc_GetCodecAudio(), vlc_mutex_lock(), vlc_mutex_unlock(), and vlc_ureduce().
Referenced by EsOutAddLocked(), and EsOutVaControlLocked().
|
static |
|
static |
References es_out_sys_t::b_buffering, es_out_sys_t::b_paused, container_of, es_out_sys_t::i_buffering_extra_initial, es_out_sys_t::i_buffering_extra_system, es_out_sys_t::i_pause_date, es_out_sys_t::i_pts_delay, es_out_sys_t::i_pts_jitter, es_out_sys_t::i_tracks_pts_delay, input_clock_GetState(), es_out_pgrm_t::p_input_clock, es_out_sys_t::p_pgrm, es_out_sys_t::rate, and vlc_tick_now().
Referenced by EsOutVaPrivControlLocked().
|
inlinestatic |
References subs_format_t::cc, subs_format_t::i_channel, es_format_t::i_codec, es_format_t::subs, VLC_CODEC_CEA608, and VLC_CODEC_CEA708.
Referenced by EsIsSelected(), EsOutSelectEs(), and EsOutUnselectEs().
|
static |
References container_of, EsIsSelected(), es_out_id_t::fmt, foreach_es_then_es_slaves, and es_format_t::i_cat.
Referenced by EsDeleteCCChannels().
|
static |
|
static |
|
static |
References container_of, EsOutMeta(), es_out_pgrm_t::p_meta, and es_out_sys_t::p_pgrm.
Referenced by EsOutProgramMeta(), and EsOutVaControlLocked().
|
static |
References es_out_id_t::id.
Referenced by EsOutSelectList().
|
static |
References es_out_id_t::id, vlc_input_decoder_cfg::str_id, vlc_es_id_t::str_id, and strtok_r().
Referenced by EsOutSelectListFromProps(), and EsOutSelectMatchExplicitParams().
|
static |
References container_of, foreach_es_then_es_slaves, es_out_id_t::p_dec, es_out_id_t::p_dec_record, and vlc_input_decoder_GetFifoSize().
Referenced by EsOutVaControlLocked().
|
inlinestatic |
References container_of, input_priv(), input_thread_private_t::master, and es_out_sys_t::p_input.
Referenced by EsOutAddLocked(), EsOutDelLocked(), EsOutProgramAdd(), EsOutProgramDel(), and EsOutProgramSelect().
|
static |
References container_of, es_out_sys_t::i_group_id, es_out_sys_t::p_pgrm, and es_out_pgrm_t::source.
Referenced by EsOutProgramEpg(), EsOutProgramEpgEvent(), and EsOutProgramMeta().
|
static |
References container_of, input_ExtractAttachmentAndCacheArt(), input_GetItem(), input_item_GetArtURL, input_item_SetArtURL, input_item_SetName(), input_item_SetPreparsed(), input_priv(), input_SendEventMeta(), input_item_t::lock, es_out_sys_t::p_input, input_item_t::p_meta, vlc_meta_ArtworkURL, vlc_meta_Get(), vlc_meta_Merge(), vlc_meta_Title, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by EsOutGlobalMeta(), and EsOutProgramMeta().
|
static |
References container_of, EsOutVaPrivControlLocked(), es_out_sys_t::lock, vlc_mutex_lock(), and vlc_mutex_unlock().
|
static |
References EsOutVaPrivControlLocked().
Referenced by EsOutUpdateDelayJitter(), and EsOutVaControlLocked().
|
static |
References es_out_pgrm_t::active_clock_source, es_out_sys_t::b_paused, es_out_pgrm_t::b_scrambled, es_out_pgrm_t::b_selected, container_of, EsOutIsGroupSticky(), EsOutProgramSelect(), es_out_sys_t::i_cr_average, es_out_pgrm_t::i_es, es_out_sys_t::i_group_id, es_out_pgrm_t::i_id, es_out_pgrm_t::i_last_pcr, es_out_sys_t::i_pause_date, es_out_sys_t::i_pts_delay, es_out_sys_t::i_pts_jitter, es_out_sys_t::i_tracks_pts_delay, input_clock_ChangePause(), input_clock_New(), input_clock_SetJitter(), input_priv(), input_SendEventProgramAdd(), input_source_Hold(), vlc_object_t::logger, es_out_pgrm_t::node, input_thread_t::obj, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, es_out_pgrm_t::p_main_clock, es_out_pgrm_t::p_master_es_clock, es_out_pgrm_t::p_meta, es_out_sys_t::p_pgrm, es_out_sys_t::programs, es_out_sys_t::rate, es_out_pgrm_t::source, vlc_clock_main_Delete(), vlc_clock_main_New(), vlc_clock_main_SetDejitter(), vlc_clock_main_SetInputDejitter(), VLC_CLOCK_MASTER_AUTO, vlc_list_append(), vlc_object_get_tracer(), and VLC_TICK_INVALID.
Referenced by EsOutProgramInsert(), and EsOutVaControlLocked().
|
static |
References container_of, input_clock_ChangePause(), es_out_pgrm_t::p_input_clock, es_out_pgrm_t::p_main_clock, es_out_sys_t::programs, vlc_clock_main_ChangePause(), and vlc_list_foreach.
Referenced by EsOutChangePause().
|
static |
References container_of, EsOutIsGroupSticky(), EsOutProgramSearch(), EsOutUnselectEs(), es_out_id_t::fmt, foreach_es_then_es_slaves, es_out_pgrm_t::i_es, es_format_t::i_group, es_out_id_t::id, input_SendEventProgramDel(), msg_Dbg, es_out_pgrm_t::node, es_out_sys_t::p_input, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, ProgramDelete(), vlc_es_id_t::source, VLC_EGENERIC, vlc_list_remove(), and VLC_SUCCESS.
Referenced by EsOutVaControlLocked().
|
static |
References vlc_epg_t::b_present, container_of, EsOutIsProgramVisible(), EsOutProgramGetMetaName(), EsOutProgramGetProgramName(), EsOutProgramInsert(), input_item_t::i_epg, vlc_epg_t::i_event, es_out_pgrm_t::i_id, vlc_epg_t::i_source_id, input_item_AddInfo(), input_item_DelInfo(), input_item_SetEpg(), input_item_SetESNowPlaying(), input_priv(), input_SendEventMeta(), input_SendEventMetaEpg(), input_SendEventMetaInfo(), es_out_sys_t::input_type, INPUT_TYPE_PREPARSING, input_item_t::lock, msg_Dbg, vlc_epg_t::p_current, es_out_sys_t::p_input, input_thread_private_t::p_item, es_out_pgrm_t::p_meta, es_out_sys_t::p_pgrm, input_item_t::pp_epg, vlc_epg_event_t::psz_name, vlc_epg_t::psz_name, psz_name, vlc_meta_ESNowPlaying, vlc_meta_Get(), vlc_meta_New(), vlc_meta_Set(), vlc_meta_SetNowPlaying, vlc_meta_TypeToLocalizedString(), vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_SUCCESS.
Referenced by EsOutVaControlLocked().
|
static |
References container_of, EsOutIsProgramVisible(), EsOutProgramInsert(), input_item_SetEpgEvent(), input_priv(), es_out_sys_t::p_input, and input_thread_private_t::p_item.
Referenced by EsOutVaControlLocked().
|
static |
References _, asprintf(), es_out_pgrm_t::i_id, es_out_pgrm_t::p_meta, vlc_meta_Get(), and vlc_meta_Title.
Referenced by EsOutProgramEpg(), EsOutProgramMeta(), and EsOutProgramUpdateScrambled().
|
static |
References _, asprintf(), es_out_pgrm_t::i_id, es_out_pgrm_t::p_meta, strdup(), vlc_meta_Get(), and vlc_meta_Title.
Referenced by EsOutProgramEpg().
|
static |
References es_out_pgrm_t::active_clock_source, es_out_sys_t::b_active, container_of, es_out_pgrm_t::i_id, input_CanPaceControl(), input_clock_AttachListener(), msg_Dbg, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, es_out_pgrm_t::p_main_clock, es_out_sys_t::user_clock_source, vlc_assert_unreachable, vlc_clock_main_CreateInputMaster(), VLC_CLOCK_MASTER_AUDIO, VLC_CLOCK_MASTER_AUTO, VLC_CLOCK_MASTER_INPUT, and VLC_CLOCK_MASTER_MONOTONIC.
Referenced by EsOutVaControlLocked().
|
static |
References EsOutProgramAdd(), and EsOutProgramSearch().
Referenced by EsOutAddLocked(), EsOutProgramEpg(), EsOutProgramEpgEvent(), EsOutProgramMeta(), and EsOutVaControlLocked().
|
static |
References asprintf(), container_of, EsOutGlobalMeta(), EsOutIsProgramVisible(), EsOutMeta(), EsOutProgramGetMetaName(), EsOutProgramInsert(), info_category_AddInfo(), info_category_New(), input_item_DelInfo(), input_item_MergeInfos(), input_item_SetPublisher(), input_priv(), input_SendEventMeta(), input_SendEventMetaInfo(), input_SendEventProgramSelect(), input_SendEventProgramUpdated(), es_out_sys_t::input_type, INPUT_TYPE_PREPARSING, msg_Dbg, es_out_sys_t::p_input, input_thread_private_t::p_item, es_out_pgrm_t::p_meta, es_out_sys_t::p_pgrm, strdup(), vlc_gettext(), vlc_meta_CopyExtraNames(), vlc_meta_Delete(), vlc_meta_ESNowPlaying, vlc_meta_Get(), vlc_meta_GetExtra(), vlc_meta_Merge(), vlc_meta_New(), vlc_meta_Publisher, vlc_meta_Title, and vlc_meta_TypeToLocalizedString().
Referenced by EsOutVaControlLocked().
|
static |
References container_of, input_clock_ChangeRate(), es_out_pgrm_t::p_input_clock, es_out_sys_t::programs, es_out_sys_t::rate, and vlc_list_foreach.
Referenced by EsOutChangePause(), and EsOutChangeRate().
|
static |
References container_of, es_out_pgrm_t::i_id, es_out_sys_t::programs, es_out_pgrm_t::source, and vlc_list_foreach.
Referenced by EsOutProgramDel(), and EsOutProgramInsert().
|
static |
References es_out_sys_t::audio, es_out_pgrm_t::b_scrambled, es_out_pgrm_t::b_selected, container_of, ES_OUT_MODE_ALL, EsIsSelected(), EsOutIsGroupSticky(), EsOutSelect(), EsOutSendEsEvent(), EsOutUnselectEs(), EsOutUpdateInfo(), es_out_id_t::fmt, foreach_es_then_es_slaves, es_format_t::i_group, es_out_pgrm_t::i_id, es_out_sys_t::i_mode, es_out_id_t::id, input_item_ChangeEPGSource(), input_item_SetESNowPlaying(), input_item_SetPublisher(), input_item_SetTitle(), input_priv(), input_SendEventMeta(), input_SendEventProgramScrambled(), input_SendEventProgramSelect(), msg_Dbg, es_out_sys_t::p_input, es_out_es_props_t::p_main_es, es_out_pgrm_t::p_meta, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, vlc_es_id_t::source, es_out_sys_t::sub, es_out_sys_t::video, vlc_meta_ESNowPlaying, vlc_meta_Get(), vlc_meta_Publisher, and vlc_meta_Title.
Referenced by EsOutProgramAdd(), and EsOutVaControlLocked().
|
static |
References _, es_out_pgrm_t::b_scrambled, es_out_id_t::b_scrambled, container_of, es_out_sys_t::es, EsOutProgramGetMetaName(), es_out_pgrm_t::i_id, input_item_AddInfo(), input_item_DelInfo(), input_priv(), input_SendEventMetaInfo(), input_SendEventProgramScrambled(), es_out_sys_t::input_type, INPUT_TYPE_PREPARSING, es_out_sys_t::p_input, input_thread_private_t::p_item, es_out_id_t::p_pgrm, vlc_list_foreach, and VLC_SUCCESS.
Referenced by EsOutDelLocked(), and EsOutVaControlLocked().
|
static |
References es_out_es_props_t::ppsz_language, and es_out_es_props_t::str_ids.
Referenced by EsOutDelete().
|
static |
References es_out_es_props_t::b_autoselect, es_out_es_props_t::e_policy, es_out_es_props_t::i_channel, es_out_es_props_t::i_count, es_out_es_props_t::i_demux_id, INPUT_TYPE_PREPARSING, LanguageSplit(), msg_Dbg, es_out_es_props_t::p_main_es, es_out_es_props_t::ppsz_language, es_out_es_props_t::str_ids, var_GetInteger(), var_GetNonEmptyString(), and var_GetString().
Referenced by input_EsOutNew().
|
static |
Select an ES given the current mode XXX: you need to take a the lock before (stream.stream_lock)
out | The es_out structure |
es | es_out_id structure |
b_force | ... |
References es_out_sys_t::b_active, es_out_es_props_t::b_autoselect, container_of, es_out_es_props_t::e_policy, ES_OUT_ES_POLICY_AUTO, ES_OUT_ES_POLICY_EXCLUSIVE, ES_OUT_ES_POLICY_SIMULTANEOUS, ES_OUT_MODE_ALL, ES_OUT_MODE_AUTO, ES_OUT_MODE_PARTIAL, EsIsSelected(), EsOutSelectEs(), EsOutSelectHasExplicitParams(), EsOutSelectMatchExplicitParams(), EsOutSelectMatchPrioritized(), EsOutUnselectEs(), es_out_id_t::fmt, GetPropsByCat(), es_format_t::i_cat, es_out_es_props_t::i_demux_id, es_format_t::i_id, es_out_pgrm_t::i_id, es_out_sys_t::i_mode, es_format_t::i_priority, es_out_id_t::id, input_source_IsAutoSelected(), LanguageArrayIndex(), es_out_sys_t::p_input, es_out_es_props_t::p_main_es, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, es_out_es_props_t::ppsz_language, es_out_id_t::psz_language_code, vlc_es_id_t::source, es_out_es_props_t::str_ids, strtok_r(), and var_GetNonEmptyString().
Referenced by EsOutAddLocked(), EsOutCreateCCChannels(), EsOutDelLocked(), EsOutProgramSelect(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References AUDIO_ES, container_of, EsIsSelected(), EsOutCreateDecoder(), EsOutGetClosedCaptionsChannel(), EsOutSendEsEvent(), es_out_id_t::fmt, es_format_t::i_cat, es_format_t::i_codec, es_format_t::i_id, input_priv(), input_SendEventVbiPage(), input_SendEventVbiTransparency(), es_out_sys_t::input_type, INPUT_TYPE_THUMBNAILING, msg_Dbg, msg_Warn, es_out_id_t::p_dec, es_out_sys_t::p_input, es_out_id_t::p_master, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, input_thread_private_t::p_sout, SPU_ES, var_GetBool(), VIDEO_ES, vlc_input_decoder_GetVbiPage(), and vlc_input_decoder_SetCcState().
Referenced by EsOutSelect(), EsOutSelectList(), EsOutSelectListFromProps(), and EsOutVaControlLocked().
|
static |
References es_out_es_props_t::i_channel, and es_out_es_props_t::str_ids.
Referenced by EsOutSelect().
|
static |
References container_of, es_out_es_props_t::e_policy, ES_OUT_ES_POLICY_EXCLUSIVE, EsIsSelected(), EsOutIdMatchEsList(), EsOutSelectEs(), EsOutUnselectEs(), es_out_id_t::fmt, foreach_es_then_es_slaves, GetPropsByCat(), es_format_t::i_cat, es_out_id_t::p_pgrm, and es_out_sys_t::p_pgrm.
Referenced by EsOutVaPrivControlLocked().
|
static |
References container_of, es_out_es_props_t::e_policy, ES_OUT_ES_POLICY_EXCLUSIVE, EsIsSelected(), EsOutIdMatchStrIds(), EsOutSelectEs(), EsOutUnselectEs(), es_out_id_t::fmt, foreach_es_then_es_slaves, GetPropsByCat(), es_format_t::i_cat, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, and es_out_es_props_t::str_ids.
Referenced by EsOutVaPrivControlLocked().
|
static |
References EsOutIdMatchStrIds(), es_out_id_t::i_channel, es_out_es_props_t::i_channel, es_out_es_props_t::str_ids, and strdup().
Referenced by EsOutSelect().
|
static |
References ES_PRIORITY_NOT_DEFAULTABLE, es_out_id_t::fmt, es_format_t::i_priority, and es_out_es_props_t::p_main_es.
Referenced by EsOutSelect().
|
static |
Send a block for the given es_out.
out | the es_out to send from |
es | the es_out_id |
p_block | the data block to send |
References _, input_thread_private_t::b_out_pace_control, block_Duplicate, BLOCK_FLAG_CORRUPTED, BLOCK_FLAG_DISCONTINUITY, BLOCK_FLAG_PREROLL, block_Release, vlc_input_decoder_status::cc, es_out_sys_t::cc_decoder, vlc_input_decoder_status::changed, container_of, input_stats::demux_bitrate, input_stats::demux_corrupted, input_stats::demux_discontinuity, vlc_input_decoder_status::desc, es_format_Clean(), EsOutCreateCCChannels(), EsOutEsUpdateFmt(), EsOutSendEsEvent(), EsOutUpdateInfo(), vlc_input_decoder_status::fmt, vlc_input_decoder_status::format, decoder_cc_desc_t::i_608_channels, decoder_cc_desc_t::i_708_channels, vlc_frame_t::i_buffer, vlc_frame_t::i_dts, vlc_frame_t::i_flags, es_out_pgrm_t::i_last_pcr, vlc_frame_t::i_length, es_out_sys_t::i_preroll_end, vlc_frame_t::i_pts, es_out_id_t::i_pts_level, es_out_id_t::id, input_priv(), input_rate_Add(), es_out_sys_t::lock, vlc_input_decoder_status::meta, msg_Dbg, input_thread_t::obj, es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, vlc_frame_t::p_next, es_out_sys_t::p_next_frame_es, es_out_id_t::p_pgrm, sout_StreamIsSynchronous(), input_thread_private_t::stats, vlc_es_id_t::str_id, VLC_CODEC_CEA608, VLC_CODEC_CEA708, vlc_input_decoder_Decode(), vlc_input_decoder_GetStatus(), vlc_meta_Delete(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_object_get_tracer(), VLC_SUCCESS, VLC_TICK_INVALID, and vlc_tracer_TraceStreamDTS().
|
static |
References container_of, es_out_id_t::fmt, es_out_id_t::fmt_out, es_format_t::i_cat, es_format_t::i_codec, es_out_id_t::id, input_SendEventEs(), msg_Dbg, es_out_sys_t::p_input, es_out_id_t::psz_title, vlc_es_id_t::str_id, and UNKNOWN_ES.
Referenced by EsDeleteCCChannels(), EsOutAddLocked(), EsOutDelLocked(), EsOutProgramSelect(), EsOutSelectEs(), EsOutSend(), EsOutUnselectEs(), and EsOutVaControlLocked().
|
static |
References AUDIO_ES, container_of, EsOutDecoderChangeDelay(), EsOutUpdateDelayJitter(), foreach_es_then_es_slaves, es_out_sys_t::i_audio_delay, es_out_sys_t::i_spu_delay, and SPU_ES.
Referenced by EsOutVaPrivControlLocked().
|
static |
References AUDIO_ES, es_out_id_t::delay, EsOutDecoderChangeDelay(), EsOutUpdateDelayJitter(), es_out_id_t::fmt, es_format_t::i_cat, and SPU_ES.
Referenced by EsOutVaPrivControlLocked().
|
static |
References asprintf(), es_out_sys_t::b_buffering, config_GetUserDir(), config_StringEscape(), container_of, decoder_cbs, es_out_sys_t::es, vlc_input_decoder_cfg::fmt, es_out_id_t::fmt, es_out_id_t::id, input_GetItem(), input_item_CreateFilename(), input_priv(), INPUT_RECORD_PREFIX, INPUT_TYPE_NONE, es_out_id_t::p_dec, es_out_id_t::p_dec_record, es_out_sys_t::p_input, input_thread_private_t::p_resource, es_out_sys_t::p_sout_record, sout_NewInstance, sout_StreamChainDelete(), vlc_es_id_t::str_id, var_CountChoices(), var_CreateGetNonEmptyString(), VLC_DOWNLOAD_DIR, VLC_EGENERIC, vlc_input_decoder_Delete(), vlc_input_decoder_Flush(), vlc_input_decoder_New(), vlc_input_decoder_StartWait(), vlc_list_foreach, VLC_MUSIC_DIR, VLC_OBJECT, VLC_SUCCESS, and VLC_VIDEOS_DIR.
Referenced by EsOutTerminate(), and EsOutVaPrivControlLocked().
|
static |
|
static |
References container_of, EsOutChangePosition(), and es_out_sys_t::p_next_frame_es.
Referenced by EsOutChangePause(), and EsOutUnselectEs().
|
static |
References container_of, EsOutSetRecord(), EsRelease(), EsTerminate(), foreach_es_then_es_slaves, es_out_pgrm_t::i_id, input_item_SetEpgOffline(), input_priv(), input_SendEventMetaEpg(), input_SendEventProgramDel(), es_out_pgrm_t::node, es_out_id_t::p_dec, es_out_sys_t::p_input, input_thread_private_t::p_item, es_out_sys_t::p_pgrm, es_out_sys_t::p_sout_record, ProgramDelete(), es_out_sys_t::programs, vlc_input_decoder_Delete(), vlc_input_decoder_Flush(), vlc_list_foreach, and vlc_list_remove().
Referenced by EsOutVaPrivControlLocked().
|
static |
References container_of, EsDeleteCCChannels(), EsIsSelected(), EsOutDestroyDecoder(), EsOutGetClosedCaptionsChannel(), EsOutSendEsEvent(), EsOutStopNextFrame(), es_out_id_t::fmt, es_format_t::i_codec, es_format_t::i_id, msg_Warn, es_out_id_t::p_dec, es_out_sys_t::p_input, es_out_id_t::p_master, es_out_sys_t::p_next_frame_es, and vlc_input_decoder_SetCcState().
Referenced by EsOutDelLocked(), EsOutProgramDel(), EsOutProgramSelect(), EsOutSelect(), EsOutSelectList(), EsOutSelectListFromProps(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References container_of, ES_OUT_PRIV_SET_JITTER, EsOutPrivControlLocked(), es_out_sys_t::i_cr_average, es_out_sys_t::i_pts_delay, and es_out_sys_t::i_pts_jitter.
Referenced by EsOutCreateDecoder(), EsOutSetDelay(), and EsOutSetEsDelay().
|
static |
References EsGetTitle(), LanguageGetCode(), LanguageGetName(), es_format_t::psz_language, es_out_id_t::psz_language, es_out_id_t::psz_language_code, and es_out_id_t::psz_title.
Referenced by EsOutEsUpdateFmt(), and EsOutVaControlLocked().
|
static |
References _, aout_BitsPerSample(), aout_FormatPrintChannels(), ARRAY_SIZE, es_format_t::audio, AUDIO_ES, es_format_t::audio_replay_gain, AUDIO_REPLAY_GAIN_MAX, AUDIO_REPLAY_GAIN_TRACK, video_format_t::b_multiview_right_eye_first, video_format_t::chroma_location, CHROMA_LOCATION_BOTTOM_CENTER, CHROMA_LOCATION_BOTTOM_LEFT, CHROMA_LOCATION_CENTER, CHROMA_LOCATION_LEFT, CHROMA_LOCATION_MAX, CHROMA_LOCATION_TOP_CENTER, CHROMA_LOCATION_TOP_LEFT, CHROMA_LOCATION_UNDEF, COLOR_PRIMARIES_BT2020, COLOR_PRIMARIES_BT470_M, COLOR_PRIMARIES_BT601_525, COLOR_PRIMARIES_BT601_625, COLOR_PRIMARIES_BT709, COLOR_PRIMARIES_DCI_P3, COLOR_PRIMARIES_MAX, COLOR_PRIMARIES_UNDEF, video_format_t::color_range, COLOR_RANGE_FULL, COLOR_RANGE_LIMITED, COLOR_RANGE_MAX, COLOR_RANGE_UNDEF, COLOR_SPACE_BT2020, COLOR_SPACE_BT601, COLOR_SPACE_BT709, COLOR_SPACE_MAX, COLOR_SPACE_UNDEF, container_of, EMPTY_STR, EsInfoCategoryName(), es_out_id_t::fmt, es_out_id_t::fmt_out, vlc_viewpoint_t::fov, es_format_t::i_bitrate, audio_format_t::i_bitspersample, es_format_t::i_cat, es_format_t::i_codec, audio_format_t::i_format, video_format_t::i_frame_rate, video_format_t::i_frame_rate_base, video_format_t::i_height, es_format_t::i_original_fourcc, audio_format_t::i_physical_channels, audio_format_t::i_rate, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, info_category_AddCodecInfo(), info_category_AddInfo(), info_category_New(), input_item_ReplaceInfos(), input_item_UpdateTracksInfo(), input_priv(), input_SendEventMetaInfo(), es_out_sys_t::input_type, INPUT_TYPE_PREPARSING, video_format_t::lighting, video_format_t::mastering, video_format_t::max_luminance, video_format_t::MaxCLL, video_format_t::MaxFALL, video_format_t::min_luminance, MULTIVIEW_2D, video_format_t::multiview_mode, MULTIVIEW_STEREO_CHECKERBOARD, MULTIVIEW_STEREO_COL, MULTIVIEW_STEREO_FRAME, MULTIVIEW_STEREO_MAX, MULTIVIEW_STEREO_ROW, MULTIVIEW_STEREO_SBS, MULTIVIEW_STEREO_TB, N_, video_format_t::orientation, es_out_sys_t::p_input, input_thread_private_t::p_item, audio_replay_gain_t::pb_gain, audio_replay_gain_t::pf_gain, vlc_viewpoint_t::pitch, video_format_t::pose, video_format_t::primaries, video_format_t::projection_mode, PROJECTION_MODE_CUBEMAP_LAYOUT_STANDARD, PROJECTION_MODE_EQUIRECTANGULAR, PROJECTION_MODE_RECTANGULAR, es_format_t::psz_description, es_out_id_t::psz_language, psz_name, es_out_id_t::psz_title, psz_value, vlc_viewpoint_t::roll, video_format_t::space, SPU_ES, video_format_t::transfer, TRANSFER_FUNC_BT470_BG, TRANSFER_FUNC_BT470_M, TRANSFER_FUNC_BT709, TRANSFER_FUNC_HLG, TRANSFER_FUNC_LINEAR, TRANSFER_FUNC_MAX, TRANSFER_FUNC_SMPTE_240, TRANSFER_FUNC_SMPTE_ST2084, TRANSFER_FUNC_SRGB, TRANSFER_FUNC_UNDEF, UNKNOWN_ES, unlikely, es_format_t::video, VIDEO_ES, vlc_assert_unreachable, vlc_fourcc_GetDescription(), vlc_gettext(), vlc_meta_CopyExtraNames(), vlc_meta_GetExtra(), vlc_pgettext, video_format_t::white_point, and vlc_viewpoint_t::yaw.
Referenced by EsOutAddLocked(), EsOutProgramSelect(), and EsOutSend().
|
static |
Control query handler.
out | the es_out to control |
i_query | A es_out query as defined in include/ninput.h |
args | a variable list of arguments for the query |
References es_out_pgrm_t::active_clock_source, AUDIO_ES, es_out_sys_t::b_buffering, input_thread_private_t::b_low_delay, input_thread_private_t::b_out_pace_control, es_out_id_t::b_scrambled, es_out_id_t::b_terminated, container_of, es_out_es_props_t::e_policy, es_cat, es_format_Clean(), es_format_Copy(), ES_OUT_DEL_GROUP, ES_OUT_GET_EMPTY, ES_OUT_GET_ES_STATE, ES_OUT_GET_PCR_SYSTEM, ES_OUT_MODIFY_PCR_SYSTEM, ES_OUT_POST_SUBNODE, ES_OUT_PRIV_SET_JITTER, ES_OUT_RESET_PCR, ES_OUT_RESTART_ES, ES_OUT_SET_EPG_TIME, ES_OUT_SET_ES, ES_OUT_SET_ES_CAT_POLICY, ES_OUT_SET_ES_DEFAULT, ES_OUT_SET_ES_FMT, ES_OUT_SET_ES_SCRAMBLED_STATE, ES_OUT_SET_ES_STATE, ES_OUT_SET_GROUP, ES_OUT_SET_GROUP_EPG, ES_OUT_SET_GROUP_EPG_EVENT, ES_OUT_SET_GROUP_META, ES_OUT_SET_GROUP_PCR, ES_OUT_SET_META, ES_OUT_SET_NEXT_DISPLAY_TIME, ES_OUT_SET_PCR, ES_OUT_SPU_SET_HIGHLIGHT, ES_OUT_UNSET_ES, ES_OUT_VOUT_ADD_OVERLAY, ES_OUT_VOUT_DEL_OVERLAY, ES_OUT_VOUT_SET_MOUSE_EVENT, EsDeleteCCChannels(), EsIsSelected(), EsOutChangePosition(), EsOutControlLocked(), EsOutCreateDecoder(), EsOutDecodersIsEmpty(), EsOutDecodersStopBuffering(), EsOutDestroyDecoder(), EsOutDrainDecoder(), EsOutEpgTime(), EsOutFillEsFmt(), EsOutGlobalMeta(), EsOutIsExtraBufferingAllowed(), EsOutPrivControlLocked(), EsOutProgramAdd(), EsOutProgramDel(), EsOutProgramEpg(), EsOutProgramEpgEvent(), EsOutProgramHandleClockSource(), EsOutProgramInsert(), EsOutProgramMeta(), EsOutProgramSelect(), EsOutProgramUpdateScrambled(), EsOutSelect(), EsOutSelectEs(), EsOutSendEsEvent(), EsOutStopFreeVout(), EsOutUnselectEs(), EsOutUpdateEsLanguageTitle(), es_out_id_t::fmt, foreach_es_then_es_slaves, GetPropsByCat(), es_format_t::i_cat, es_out_sys_t::i_cr_average, es_out_es_props_t::i_demux_id, es_format_t::i_group, es_out_sys_t::i_group_id, es_format_t::i_id, es_out_pgrm_t::i_id, input_thread_private_t::i_jitter_max, es_out_pgrm_t::i_last_pcr, es_out_sys_t::i_preroll_end, es_out_sys_t::i_pts_delay, es_out_sys_t::i_pts_jitter, es_out_sys_t::i_tracks_pts_delay, IGNORE_ES, input_CanPaceControl(), input_clock_ChangeSystemOrigin(), input_clock_GetJitter(), input_clock_GetSystemOrigin(), input_clock_Update(), input_item_node_Delete(), input_priv(), INPUT_PTS_DELAY_MAX, input_SendEventParsing(), es_out_id_t::mouse_event_cb, es_out_id_t::mouse_event_userdata, MS_FROM_VLC_TICK, msg_Dbg, msg_Err, input_thread_t::obj, es_out_id_t::p_dec, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, es_out_sys_t::p_next_frame_es, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, input_thread_private_t::p_sout, es_out_sys_t::programs, sout_StreamSetPCR(), SPU_ES, es_out_sys_t::sub, UNKNOWN_ES, VIDEO_ES, vlc_assert_unreachable, VLC_CLOCK_MASTER_AUTO, VLC_EGENERIC, vlc_input_decoder_AddVoutOverlay(), vlc_input_decoder_DelVoutOverlay(), vlc_input_decoder_SetSpuHighlight(), vlc_input_decoder_SetVoutMouseEvent(), vlc_list_foreach, VLC_OBJECT, vlc_object_get_tracer(), VLC_SUCCESS, VLC_TICK_INVALID, vlc_tick_now(), and vlc_tracer_TracePCR().
Referenced by EsOutControl(), and EsOutControlLocked().
|
static |
References es_out_sys_t::b_active, es_out_sys_t::b_buffering, input_thread_private_t::b_out_pace_control, es_out_sys_t::b_paused, container_of, count, es_out_sys_t::es, ES_OUT_MODE_ALL, ES_OUT_MODE_AUTO, ES_OUT_MODE_END, ES_OUT_MODE_NONE, ES_OUT_MODE_PARTIAL, ES_OUT_PRIV_GET_BUFFERING, ES_OUT_PRIV_GET_GROUP_FORCED, ES_OUT_PRIV_GET_WAKE_UP, ES_OUT_PRIV_RESTART_ES, ES_OUT_PRIV_SET_DELAY, ES_OUT_PRIV_SET_EOS, ES_OUT_PRIV_SET_ES, ES_OUT_PRIV_SET_ES_CAT_IDS, ES_OUT_PRIV_SET_ES_DELAY, ES_OUT_PRIV_SET_ES_LIST, ES_OUT_PRIV_SET_FRAME_NEXT, ES_OUT_PRIV_SET_JITTER, ES_OUT_PRIV_SET_MODE, ES_OUT_PRIV_SET_PAUSE_STATE, ES_OUT_PRIV_SET_RATE, ES_OUT_PRIV_SET_RECORD_STATE, ES_OUT_PRIV_SET_TIMES, ES_OUT_PRIV_SET_VBI_PAGE, ES_OUT_PRIV_SET_VBI_TRANSPARENCY, ES_OUT_PRIV_START_ALL_ES, ES_OUT_PRIV_STOP_ALL_ES, ES_OUT_PRIV_UNSET_ES, ES_OUT_RESTART_ES, ES_OUT_SET_ES, ES_OUT_UNSET_ES, EsIsSelected(), EsOutChangePause(), EsOutChangeRate(), EsOutControlLocked(), EsOutCreateDecoder(), EsOutDestroyDecoder(), EsOutFrameNext(), EsOutGetBuffering(), EsOutGetTracksDelay(), EsOutGetWakeup(), EsOutSelect(), EsOutSelectList(), EsOutSelectListFromProps(), EsOutSetDelay(), EsOutSetEsDelay(), EsOutSetRecord(), EsOutStopFreeVout(), EsOutTerminate(), EsOutUnselectEs(), es_out_id_t::fmt, foreach_es_then_es_slaves, GetPropsByCat(), es_format_t::i_cat, es_out_sys_t::i_cr_average, es_out_sys_t::i_group_id, es_out_sys_t::i_mode, es_out_sys_t::i_pts_delay, es_out_sys_t::i_pts_jitter, es_out_sys_t::i_tracks_pts_delay, es_out_id_t::id, input_clock_SetJitter(), input_priv(), input_SendEventTimes(), input_SendEventVbiPage(), input_SendEventVbiTransparency(), es_out_sys_t::main_source, es_out_id_t::p_dec, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, es_out_pgrm_t::p_main_clock, es_out_sys_t::p_next_frame_es, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, input_thread_private_t::p_sout, es_out_sys_t::programs, es_out_es_props_t::str_ids, strdup(), VIDEO_ES, vlc_alloc(), vlc_assert_unreachable, vlc_clock_main_SetInputDejitter(), VLC_EGENERIC, VLC_ENOMEM, vlc_es_id_get_out(), vlc_es_id_Hold(), vlc_es_id_Release(), vlc_input_decoder_Drain(), vlc_input_decoder_IsEmpty(), vlc_input_decoder_SetVbiOpaque(), vlc_input_decoder_SetVbiPage(), vlc_list_foreach, vlc_list_is_empty(), VLC_SUCCESS, VLC_TICK_0, and VLC_TICK_INVALID.
Referenced by EsOutPrivControl(), and EsOutPrivControlLocked().
|
static |
References es_format_Clean(), es_out_id_t::fmt, es_out_id_t::id, input_source_Release(), es_out_id_t::psz_language, es_out_id_t::psz_language_code, es_out_id_t::psz_title, es_out_id_t::rc, vlc_es_id_t::source, vlc_es_id_t::str_id, and vlc_atomic_rc_dec().
Referenced by EsOutDelLocked(), EsOutTerminate(), and vlc_es_id_Release().
|
static |
References es_out_id_t::b_terminated, es_out_id_t::node, and vlc_list_remove().
Referenced by EsOutDelLocked(), and EsOutTerminate().
|
static |
References es_out_sys_t::audio, AUDIO_ES, SPU_ES, es_out_sys_t::sub, es_out_sys_t::video, and VIDEO_ES.
Referenced by EsOutDelLocked(), EsOutSelect(), EsOutSelectList(), EsOutSelectListFromProps(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References i_fourcc, info_category_AddInfo(), and VLC_FOURCC.
Referenced by EsOutUpdateInfo().
es_out_t * input_EsOutNew | ( | input_thread_t * | p_input, |
input_source_t * | main_source, | ||
float | rate, | ||
enum input_type input_type input_type | |||
) |
References es_out_sys_t::audio, es_out_sys_t::b_active, es_out_sys_t::b_buffering, es_out_t::cbs, es_out_sys_t::cc_decoder, clock_source_Inherit(), es_out_sys_t::es, es_out_cbs, ES_OUT_ES_POLICY_AUTO, ES_OUT_ES_POLICY_EXCLUSIVE, ES_OUT_MODE_NONE, es_out_sys_t::es_slaves, EsOutPropsInit(), es_out_sys_t::i_group_id, es_out_sys_t::i_mode, es_out_sys_t::i_pause_date, es_out_sys_t::i_preroll_end, es_out_sys_t::i_prev_stream_level, es_out_sys_t::input_type, es_out_sys_t::lock, es_out_sys_t::main_source, es_out_sys_t::out, es_out_sys_t::p_input, es_out_sys_t::p_next_frame_es, es_out_sys_t::programs, es_out_sys_t::rate, es_out_sys_t::sub, es_out_sys_t::user_clock_source, var_GetInteger(), var_InheritInteger(), es_out_sys_t::video, vlc_list_init(), vlc_mutex_init(), and VLC_OBJECT.
Referenced by input_Create().
|
static |
References strcasecmp().
Referenced by EsOutSelect().
|
static |
References iso639_lang_t::psz_iso639_2B, strdup(), and vlc_find_iso639().
Referenced by EsOutAddLocked(), EsOutUpdateEsLanguageTitle(), and LanguageSplit().
|
static |
References iso639_lang_t::psz_eng_name, strdup(), vlc_find_iso639(), and vlc_gettext().
Referenced by EsOutAddLocked(), and EsOutUpdateEsLanguageTitle().
|
static |
References LanguageGetCode(), strdup(), and TAB_APPEND.
Referenced by EsOutPropsInit().
|
static |
es_out_id_t * vlc_es_id_get_out | ( | vlc_es_id_t * | id | ) |
References container_of.
Referenced by EsOutVaPrivControlLocked(), vlc_es_id_Hold(), and vlc_es_id_Release().
enum es_format_category_e vlc_es_id_GetCat | ( | vlc_es_id_t * | id | ) |
Get the ES category.
id | pointer to the ES track id |
Referenced by vlc_player_GetPrivTrack(), vlc_player_input_FindTrackById(), vlc_player_osd_Track(), vlc_player_osd_Tracks(), vlc_player_SelectEsId(), vlc_player_SelectEsIdList(), vlc_player_UnselectEsId(), and vlc_player_UpdateTimer().
int vlc_es_id_GetInputId | ( | vlc_es_id_t * | id | ) |
Get the ES track input id.
id | pointer to the ES track id |
Referenced by Control(), and ControlSetEsList().
const input_source_t * vlc_es_id_GetSource | ( | vlc_es_id_t * | id | ) |
Referenced by Control(), and ControlSetEsList().
const char * vlc_es_id_GetStrId | ( | vlc_es_id_t * | id | ) |
Get the unique string identifier.
This id could be used to identify a track across different playback instances. For example, it can be used to store a track selection preference in a database.
id | pointer to the ES track id |
Referenced by vlc_player_input_GetSelectedTrackStringIds(), and vlc_player_osd_Tracks().
vlc_es_id_t * vlc_es_id_Hold | ( | vlc_es_id_t * | es | ) |
Increase the ES track id reference count.
Any held ES tracks must be released with vlc_es_id_Release().
es | pointer to the ES id |
References EsHold(), and vlc_es_id_get_out().
Referenced by EsOutVaPrivControlLocked(), input_ControlPushEsHelper(), vlc_player_SelectEsIdList(), and vlc_player_track_priv_New().
bool vlc_es_id_IsStrIdStable | ( | vlc_es_id_t * | id | ) |
Return whether the ES track identifier is stable.
An string identifier is stable when it is certified to be the same across different playback instances for the same ES track.
id | pointer to the ES track id |
Referenced by vlc_player_input_GetSelectedTrackStringIds().
void vlc_es_id_Release | ( | vlc_es_id_t * | id | ) |
Decrease the ES track id reference count.
id | pointer to the ES track id |
References EsRelease(), and vlc_es_id_get_out().
Referenced by ControlRelease(), EsOutVaPrivControlLocked(), and vlc_player_track_priv_Delete().
|
static |
Referenced by EsOutCreateDecoder(), and EsOutSetRecord().
|
static |
Referenced by EsOutVaControlLocked().
|
static |
Referenced by input_EsOutNew(), and input_EsOutSourceNew().