|
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) |
Functions | |
| static void | EsOutDelLocked (es_out_sys_t *, es_out_id_t *) |
| static void | EsOutDel (es_out_t *, es_out_id_t *) |
| static void | EsOutTerminate (es_out_sys_t *) |
| static void | EsOutSelect (es_out_sys_t *p_sys, 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) | |
| static void | EsOutSelectList (es_out_sys_t *, enum es_format_category_e cat, vlc_es_id_t *const *es_id_list) |
| static void | EsOutUpdateInfo (es_out_sys_t *, es_out_id_t *es, const vlc_meta_t *) |
| static int | EsOutSetRecord (es_out_sys_t *, bool b_record, const char *dir_path) |
| static bool | EsIsSelected (es_out_id_t *es) |
| static void | EsOutSelectEs (es_out_sys_t *out, es_out_id_t *es, bool b_force, enum vlc_vout_order vout_order) |
| static void | EsOutDeleteInfoEs (es_out_sys_t *, es_out_id_t *es) |
| static void | EsOutUnselectEs (es_out_sys_t *out, es_out_id_t *es, bool b_update) |
| static void | EsOutDecoderChangeDelay (es_out_sys_t *out, es_out_id_t *p_es) |
| static void | EsOutDecodersChangePause (es_out_sys_t *out, bool b_paused, vlc_tick_t i_date) |
| static void | EsOutChangePosition (es_out_sys_t *out, bool b_flush, es_out_id_t *p_next_frame_es) |
| static void | EsOutProgramChangePause (es_out_sys_t *out, bool b_paused, vlc_tick_t i_date) |
| static void | EsOutProgramsChangeRate (es_out_sys_t *out) |
| static void | EsOutDecodersStopBuffering (es_out_sys_t *out, bool b_forced) |
| static void | EsOutDrainDecoder (es_out_sys_t *p_sys, es_out_id_t *es, bool wait) |
| static void | EsOutGlobalMeta (es_out_sys_t *p_out, const vlc_meta_t *p_meta) |
| static void | EsOutMeta (es_out_sys_t *p_out, const vlc_meta_t *p_meta, const vlc_meta_t *p_progmeta) |
| static int | EsOutEsUpdateFmt (es_out_id_t *es, const es_format_t *fmt) |
| static int | EsOutPrivControlLocked (es_out_sys_t *out, input_source_t *, int i_query,...) |
| static int | EsOutControlLocked (es_out_sys_t *out, input_source_t *, 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 es_out_sys_t * | PRIV (es_out_t *out) |
| 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 void | MouseEventCb (const vlc_mouse_t *newmouse, void *userdata) |
| 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_sys_t *p_sys) |
| static bool | EsOutIsEmpty (es_out_sys_t *p_sys) |
| static int | EsOutDrain (es_out_sys_t *p_sys) |
| static void | EsOutUpdateDelayJitter (es_out_sys_t *p_sys) |
| static void | EsOutSetEsDelay (es_out_sys_t *p_sys, es_out_id_t *es, vlc_tick_t delay) |
| static void | EsOutSetDelay (es_out_sys_t *p_sys, int i_cat, vlc_tick_t i_delay) |
| static void | EsOutStopNextFrame (es_out_sys_t *p_sys) |
| static void | EsOutChangePause (es_out_sys_t *p_sys, bool b_paused, vlc_tick_t i_date) |
| static void | EsOutChangeRate (es_out_sys_t *p_sys, float rate) |
| static void | EsOutStopFreeVout (es_out_sys_t *p_sys) |
| static bool | EsOutIsExtraBufferingAllowed (es_out_sys_t *p_sys) |
| static void | EsOutFrameNext (es_out_sys_t *p_sys) |
| static vlc_tick_t | EsOutGetBuffering (es_out_sys_t *p_sys) |
| static void | EsOutSendEsEvent (es_out_sys_t *p_sys, es_out_id_t *es, int action, bool forced, enum vlc_vout_order vout_order) |
| static vlc_tick_t | ClockListenerUpdate (void *opaque, vlc_tick_t ck_system, vlc_tick_t ck_stream, double rate, bool discontinuity) |
| static void | ClockListenerReset (void *opaque) |
| static void | EsOutProgramHandleClockSource (es_out_sys_t *p_sys, es_out_pgrm_t *p_pgrm) |
| static bool | EsOutIsGroupSticky (es_out_sys_t *p_sys, input_source_t *source, int i_group) |
| static bool | EsOutIsProgramVisible (es_out_sys_t *p_sys, input_source_t *source, int i_group) |
| static void | EsOutProgramSelect (es_out_sys_t *p_sys, es_out_pgrm_t *p_pgrm) |
| static es_out_pgrm_t * | EsOutProgramAdd (es_out_sys_t *p_sys, input_source_t *source, int i_group) |
| static es_out_pgrm_t * | EsOutProgramSearch (es_out_sys_t *p_sys, input_source_t *source, int i_group) |
| static es_out_pgrm_t * | EsOutProgramInsert (es_out_sys_t *p_sys, input_source_t *source, int i_group) |
| static int | EsOutProgramDel (es_out_sys_t *p_sys, input_source_t *source, int i_group) |
| static char * | EsOutProgramGetProgramName (es_out_pgrm_t *p_pgrm) |
| static void | EsOutProgramMeta (es_out_sys_t *p_sys, input_source_t *source, int i_group, const vlc_meta_t *p_meta) |
| static void | EsOutProgramEpgEvent (es_out_sys_t *p_sys, input_source_t *source, int i_group, const vlc_epg_event_t *p_event) |
| static void | EsOutProgramEpg (es_out_sys_t *p_sys, input_source_t *source, int i_group, const vlc_epg_t *p_epg) |
| static void | EsOutEpgTime (es_out_sys_t *p_sys, int64_t time) |
| static void | EsOutProgramUpdateScrambled (es_out_sys_t *p_sys, es_out_pgrm_t *p_pgrm) |
| static void | EsOutUpdateEsLanguageTitle (es_out_id_t *es, const es_format_t *fmt) |
| static void | EsOutFillEsFmt (es_out_sys_t *p_sys, 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_sys_t *p_sys, 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_sys_t *p_sys, es_out_id_t *p_es) |
| static void | EsOutDeleteSubESes (es_out_sys_t *sys, es_out_id_t *parent) |
| static void | EsOutDestroyDecoder (es_out_sys_t *sys, es_out_id_t *p_es) |
| static void | EsOutDrainSubESes (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_sys_t *p_sys, 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 | EsOutCreateSubESes (es_out_sys_t *sys, struct vlc_subdec_desc *desc, 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. | |
| static int | EsOutVaControlLocked (es_out_sys_t *p_sys, input_source_t *source, int i_query, va_list args) |
| Control query handler. | |
| static vlc_tick_t | EsOutGetTracksDelay (es_out_sys_t *p_sys) |
| static int | EsOutVaPrivControlLocked (es_out_sys_t *p_sys, input_source_t *source, 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 (struct vlc_input_es_out *out, input_source_t *source, int query, va_list args) |
| struct vlc_input_es_out * | 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. | |
| void | vlc_es_id_Release (vlc_es_id_t *id) |
| Decrease the ES track id reference count. | |
| int | vlc_es_id_GetInputId (vlc_es_id_t *id) |
| Get the ES track input id. | |
| bool | vlc_es_id_IsStrIdStable (vlc_es_id_t *id) |
| Return whether the ES track identifier is stable. | |
| const char * | vlc_es_id_GetStrId (vlc_es_id_t *id) |
| Get the unique string identifier. | |
| enum es_format_category_e | vlc_es_id_GetCat (vlc_es_id_t *id) |
| Get the ES category. | |
| const input_source_t * | vlc_es_id_GetSource (vlc_es_id_t *id) |
Variables | |
| static const struct vlc_input_decoder_callbacks | decoder_cbs |
| static const struct es_out_callbacks | es_out_cbs |
| #define foreach_es_then_es_slaves | ( | pos | ) |
|
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 es_out_pgrm_t::clocks, es_out_pgrm_t::input, vlc_clock_Lock(), vlc_clock_Reset(), and vlc_clock_Unlock().
Referenced by EsOutProgramHandleClockSource().
|
static |
|
static |
References es_out_id_t::id, input_SendEventOutputClock(), es_out_id_t::master, es_out_id_t::out, vlc_input_es_out::out, es_out_sys_t::p_input, and PRIV().
Referenced by EsOutCreateDecoder().
|
static |
References input_GetAttachments(), vlc_input_es_out::out, es_out_sys_t::p_input, and PRIV().
|
static |
|
static |
|
static |
|
static |
|
static |
|
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 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 es_out_id_t::p_dec.
Referenced by EsOutDelLocked(), EsOutProgramSelect(), EsOutSelect(), EsOutSelectEs(), EsOutSelectList(), EsOutSelectListFromProps(), EsOutUnselectEs(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References EsOutAddLocked(), es_out_sys_t::lock, es_out_sys_t::main_source, PRIV(), vlc_mutex_lock(), and vlc_mutex_unlock().
|
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::delay, es_out_sys_t::es, es_format_Clean(), es_format_Copy(), es_format_Init(), es_out_sys_t::es_slaves, EsOutCreateStrId(), EsOutFillEsFmt(), EsOutIsGroupSticky(), EsOutProgramInsert(), EsOutSelect(), EsOutSendEsEvent(), EsOutUpdateEsLanguageTitle(), EsOutUpdateInfo(), es_out_id_t::fmt, es_out_id_t::fmt_out, es_out_id_t::forced, foreach_es_then_es_slaves, 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(), es_out_id_t::master, es_out_id_t::mouse_being_dragged, es_out_id_t::mouse_event_cb, es_out_id_t::mouse_event_userdata, MouseEventCb(), msg_Err, es_out_id_t::node, es_out_id_t::oldmouse, es_out_id_t::out, es_out_sys_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_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::sub_es_vec, UNKNOWN_ES, es_out_sys_t::video, VIDEO_ES, vlc_atomic_rc_init(), vlc_list_append(), vlc_mouse_Init(), VLC_SUCCESS, VLC_TICK_INVALID, VLC_TICK_MAX, vlc_vector_init, and VLC_VOUT_ORDER_PRIMARY.
Referenced by EsOutAdd(), and EsOutCreateSubESes().
|
static |
References es_out_sys_t::b_paused, 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, es_out_sys_t::b_draining, es_out_pgrm_t::clocks, 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, es_out_pgrm_t::input, 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_clock_Lock(), vlc_clock_Reset(), vlc_clock_Unlock(), vlc_input_decoder_Flush(), vlc_input_decoder_StartWait(), vlc_list_foreach, and VLC_TICK_INVALID.
Referenced by EsOutDecodersStopBuffering(), EsOutStopNextFrame(), and EsOutVaControlLocked().
|
static |
References 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 |
References EsOutVaControlLocked(), es_out_sys_t::lock, PRIV(), vlc_mutex_lock(), and vlc_mutex_unlock().
|
static |
References EsOutVaControlLocked().
Referenced by EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References AUDIO_ES, es_out_sys_t::b_buffering, es_out_sys_t::b_paused, es_out_sys_t::cc_decoder, es_out_pgrm_t::clocks, ClockUpdate(), decoder_cbs, EsOutDecoderChangeDelay(), EsOutUpdateDelayJitter(), vlc_input_decoder_cfg::fmt, es_out_id_t::fmt, input_thread_private_t::hw_dec, 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_PLAYBACK, es_out_pgrm_t::main, 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_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_main_Lock(), vlc_clock_main_Unlock(), 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_CreateSubDec(), 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 subs_format_t::cc, es_out_id_t::data, EsOutAddLocked(), EsOutSelect(), vlc_input_decoder_cfg::fmt, es_out_id_t::fmt, vlc_subdec_desc::fmt_array, vlc_subdec_desc::fmt_count, es_format_t::i_cat, subs_format_t::i_channel, es_out_es_props_t::i_channel, es_format_t::i_group, es_out_id_t::p_pgrm, es_out_id_t::size, es_out_pgrm_t::source, SPU_ES, es_out_sys_t::sub, es_out_id_t::sub_es_vec, es_format_t::subs, vlc_vector_insert, and vlc_vector_reserve.
Referenced by EsOutSend().
|
static |
References AUDIO_ES, 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_sys_t::i_video_delay, es_out_id_t::p_dec, es_out_id_t::p_dec_record, SPU_ES, VIDEO_ES, vlc_input_decoder_ChangeDelay(), and VLC_TICK_MAX.
Referenced by EsOutCreateDecoder(), EsOutSetDelay(), and EsOutSetEsDelay().
|
static |
References 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 |
References es_out_sys_t::b_buffering, es_out_sys_t::b_paused, es_out_pgrm_t::clocks, 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_GetBufferingDuration(), input_clock_GetState(), input_SendEventCache(), es_out_pgrm_t::main, 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_sys_t::p_pgrm, SPU_ES, vlc_clock_main_Lock(), vlc_clock_main_Reset(), vlc_clock_main_SetFirstPcr(), vlc_clock_main_Unlock(), vlc_input_decoder_StopWait(), vlc_input_decoder_Wait(), and vlc_tick_now().
Referenced by EsOutDrain(), and EsOutVaControlLocked().
|
static |
References EsOutDelLocked(), es_out_sys_t::lock, PRIV(), vlc_mutex_lock(), and vlc_mutex_unlock().
|
static |
|
static |
References EsInfoCategoryName(), input_item_DelInfo(), input_priv(), input_SendEventMetaInfo(), es_out_sys_t::p_input, input_thread_private_t::p_item, unlikely, and VLC_SUCCESS.
Referenced by EsOutDelLocked().
|
static |
References es_out_id_t::data, EsOutDelLocked(), es_out_id_t::size, es_out_id_t::sub_es_vec, and vlc_vector_clear.
Referenced by EsOutDestroyDecoder().
|
static |
References es_out_id_t::b_scrambled, 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, vlc_es_id_t::source, and VLC_VOUT_ORDER_PRIMARY.
Referenced by EsOutDel(), and EsOutDeleteSubESes().
|
static |
References es_format_Clean(), EsOutDeleteSubESes(), 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(), and vlc_input_decoder_Flush().
Referenced by EsOutUnselectEs(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
|
static |
References es_out_sys_t::b_buffering, EsOutDrainSubESes(), 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(), EsOutDrain(), and EsOutVaControlLocked().
|
static |
References es_out_id_t::data, es_out_id_t::p_dec, es_out_id_t::size, es_out_id_t::sub_es_vec, and vlc_input_decoder_Drain().
Referenced by EsOutDrainDecoder().
|
static |
References input_item_SetEpgTime(), input_priv(), es_out_sys_t::p_input, and input_thread_private_t::p_item.
Referenced by EsOutVaControlLocked().
|
static |
References 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, es_format_t::p_extra_languages, 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_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, replay_gain_Merge(), SPU_ES, es_format_t::video, VIDEO_ES, vlc_fourcc_GetCodec(), vlc_fourcc_GetCodecAudio(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_replay_gain_CopyFromMeta(), and vlc_ureduce().
Referenced by EsOutAddLocked(), and EsOutVaControlLocked().
|
static |
|
static |
References es_out_sys_t::b_buffering, es_out_sys_t::b_paused, 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_GetBufferingDuration(), input_clock_GetSystemDuration(), 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().
|
static |
|
static |
|
static |
References 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 es_out_sys_t::b_buffering, foreach_es_then_es_slaves, es_out_id_t::p_dec, es_out_id_t::p_dec_record, and vlc_input_decoder_IsEmpty().
Referenced by EsOutVaControlLocked().
|
static |
References 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 input_priv(), input_thread_private_t::master, and es_out_sys_t::p_input.
Referenced by EsOutAddLocked(), EsOutDelLocked(), EsOutProgramAdd(), EsOutProgramDel(), and EsOutProgramSelect().
|
static |
References 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 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 EsOutVaPrivControlLocked(), es_out_sys_t::lock, vlc_input_es_out::out, PRIV(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_EsOutNew().
|
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, es_out_pgrm_t::clocks, 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, es_out_pgrm_t::input, input_clock_ChangePause(), input_clock_New(), input_clock_SetJitter(), input_priv(), input_SendEventProgramAdd(), input_source_Hold(), vlc_object_t::logger, es_out_pgrm_t::main, 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_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_Lock(), vlc_clock_main_New(), vlc_clock_main_SetDejitter(), vlc_clock_main_SetInputDejitter(), vlc_clock_main_Unlock(), VLC_CLOCK_MASTER_AUTO, vlc_list_append(), vlc_object_get_tracer(), vlc_object_logger, and VLC_TICK_INVALID.
Referenced by EsOutProgramInsert(), and EsOutVaControlLocked().
|
static |
|
static |
References 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, 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(), 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 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, ClockListenerReset(), ClockListenerUpdate(), es_out_pgrm_t::clocks, es_out_pgrm_t::i_id, es_out_pgrm_t::input, input_CanPaceControl(), input_clock_AttachListener(), es_out_pgrm_t::main, msg_Dbg, es_out_sys_t::p_input, es_out_pgrm_t::p_input_clock, vlc_input_clock_cbs::update, es_out_sys_t::user_clock_source, vlc_assert_unreachable, vlc_clock_main_CreateInputMaster(), vlc_clock_main_CreateInputSlave(), vlc_clock_main_Lock(), vlc_clock_main_Unlock(), 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(), 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(), 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 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 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, 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, vlc_meta_Title, and VLC_VOUT_ORDER_PRIMARY.
Referenced by EsOutProgramAdd(), and EsOutVaControlLocked().
|
static |
References _, es_out_pgrm_t::b_scrambled, es_out_id_t::b_scrambled, 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::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, 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, es_out_id_t::forced, 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(), var_GetNonEmptyString(), and VLC_VOUT_ORDER_PRIMARY.
Referenced by EsOutAddLocked(), EsOutCreateSubESes(), EsOutDelLocked(), EsOutProgramSelect(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References AUDIO_ES, EsIsSelected(), EsOutCreateDecoder(), EsOutSendEsEvent(), es_out_id_t::fmt, es_format_t::i_cat, 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, and vlc_input_decoder_GetVbiPage().
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 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::id, es_out_id_t::p_pgrm, es_out_sys_t::p_pgrm, VLC_VOUT_ORDER_PRIMARY, and VLC_VOUT_ORDER_SECONDARY.
Referenced by EsOutVaPrivControlLocked().
|
static |
References 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, es_out_es_props_t::str_ids, and VLC_VOUT_ORDER_PRIMARY.
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_out_id_t::forced, 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 es_out_sys_t::b_draining, 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::changed, input_stats::demux_bitrate, input_stats::demux_corrupted, input_stats::demux_discontinuity, es_format_Clean(), EsOutCreateSubESes(), EsOutEsUpdateFmt(), EsOutSendEsEvent(), EsOutUpdateInfo(), vlc_input_decoder_status::fmt, vlc_subdec_desc::fmt_count, vlc_input_decoder_status::format, 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, input_source_t::i_normal_time, 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, es_out_sys_t::main_source, 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, es_out_id_t::p_master, vlc_frame_t::p_next, es_out_sys_t::p_next_frame_es, es_out_id_t::p_pgrm, PRIV(), vlc_es_id_t::source, sout_StreamIsSynchronous(), input_thread_private_t::stats, vlc_es_id_t::str_id, vlc_input_decoder_status::subdec_desc, vlc_input_decoder_Decode(), vlc_input_decoder_DecodeWithStatus(), vlc_meta_Delete(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_object_get_tracer(), vlc_subdec_desc_Clean(), VLC_SUCCESS, VLC_TICK_0, VLC_TICK_INVALID, vlc_tracer_TraceStreamDTS(), and VLC_VOUT_ORDER_PRIMARY.
|
static |
References 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 EsOutAddLocked(), EsOutDelLocked(), EsOutProgramSelect(), EsOutSelectEs(), EsOutSend(), EsOutUnselectEs(), and EsOutVaControlLocked().
|
static |
|
static |
References AUDIO_ES, es_out_id_t::delay, EsOutDecoderChangeDelay(), EsOutUpdateDelayJitter(), es_out_id_t::fmt, es_format_t::i_cat, SPU_ES, and VIDEO_ES.
Referenced by EsOutVaPrivControlLocked().
|
static |
References asprintf(), es_out_sys_t::b_buffering, es_out_sys_t::cc_decoder, config_GetUserDir(), config_StringEscape(), decoder_cbs, es_out_sys_t::es, vlc_input_decoder_cfg::fmt, es_out_id_t::fmt, input_thread_private_t::hw_dec, es_out_id_t::id, input_GetItem(), input_item_CreateFilename(), input_priv(), INPUT_RECORD_PREFIX, INPUT_TYPE_PLAYBACK, 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 EsOutChangePosition(), and es_out_sys_t::p_next_frame_es.
Referenced by EsOutChangePause(), and EsOutUnselectEs().
|
static |
References 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 EsIsSelected(), EsOutDestroyDecoder(), EsOutSendEsEvent(), EsOutStopNextFrame(), es_out_id_t::fmt, es_out_id_t::forced, es_format_t::i_id, msg_Warn, es_out_sys_t::p_input, es_out_sys_t::p_next_frame_es, and VLC_VOUT_ORDER_PRIMARY.
Referenced by EsOutDelLocked(), EsOutProgramDel(), EsOutProgramSelect(), EsOutSelect(), EsOutSelectList(), EsOutSelectListFromProps(), EsOutVaControlLocked(), and EsOutVaPrivControlLocked().
|
static |
References 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 EsOutAddLocked(), 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, 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, audio_format_t::i_channels, video_format_t::i_chroma, 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, es_out_id_t::id, info_category_AddCodecInfo(), info_category_AddInfo(), info_category_New(), input_item_ReplaceInfos(), input_item_UpdateTracksInfo(), input_priv(), input_SendEventMetaInfo(), 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, 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, video_format_t::space, SPU_ES, vlc_es_id_t::stable, vlc_es_id_t::str_id, 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, vlc_popcount, vlc_viewpoint_to_euler(), and video_format_t::white_point.
Referenced by EsOutAddLocked(), EsOutProgramSelect(), and EsOutSend().
|
static |
Control query handler.
| out | the es_out to control |
| source | the input source emitting the control request |
| 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, 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, es_out_es_props_t::e_policy, es_format_Clean(), es_format_Copy(), ES_OUT_DEL_GROUP, ES_OUT_DRAIN, ES_OUT_GET_ES_STATE, ES_OUT_IS_EMPTY, 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, EsIsSelected(), EsOutChangePosition(), EsOutControlLocked(), EsOutCreateDecoder(), EsOutDecodersStopBuffering(), EsOutDestroyDecoder(), EsOutDrain(), EsOutDrainDecoder(), EsOutEpgTime(), EsOutFillEsFmt(), EsOutGlobalMeta(), EsOutIsEmpty(), 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_format_t::i_codec, 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_format_t::i_original_fourcc, 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, input_CanPaceControl(), input_clock_GetJitter(), input_clock_Update(), input_item_node_Delete(), input_priv(), INPUT_PTS_DELAY_MAX, input_SendEventParsing(), es_out_sys_t::main_source, es_out_id_t::mouse_event_cb, es_out_id_t::mouse_event_userdata, MouseEventCb(), 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_get_tracer(), VLC_SUCCESS, VLC_TICK_INVALID, vlc_tick_now(), VLC_TRACE, VLC_TRACE_END, VLC_TRACE_TICK_NS, vlc_tracer_Trace, vlc_tracer_TracePCR(), and VLC_VOUT_ORDER_PRIMARY.
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, es_out_pgrm_t::clocks, 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(), EsOutDrain(), 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, input_source_t::i_normal_time, 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_pgrm_t::main, es_out_sys_t::main_source, 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, es_out_es_props_t::str_ids, strdup(), VIDEO_ES, vlc_alloc(), vlc_assert_unreachable, vlc_clock_main_Lock(), vlc_clock_main_SetInputDejitter(), vlc_clock_main_Unlock(), VLC_EGENERIC, VLC_ENOMEM, vlc_es_id_get_out(), vlc_es_id_Hold(), vlc_es_id_Release(), vlc_input_decoder_IsEmpty(), vlc_input_decoder_SetVbiOpaque(), vlc_input_decoder_SetVbiPage(), vlc_list_foreach, vlc_list_is_empty(), vlc_object_get_tracer(), VLC_SUCCESS, VLC_TICK_0, VLC_TICK_INVALID, vlc_tick_now(), VLC_TRACE, VLC_TRACE_END, VLC_TRACE_TICK_NS, and vlc_tracer_Trace.
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().
| struct vlc_input_es_out * 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_sys_t::b_draining, 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, EsOutPrivControl(), 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, vlc_input_es_out::ops, es_out_sys_t::out, vlc_input_es_out::out, es_out_sys_t::p_input, es_out_sys_t::p_next_frame_es, vlc_input_es_out_ops::priv_control, 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 EsOutUpdateEsLanguageTitle(), and LanguageSplit().
|
static |
References iso639_lang_t::psz_eng_name, strdup(), vlc_find_iso639(), and vlc_gettext().
Referenced by EsOutUpdateEsLanguageTitle().
|
static |
References LanguageGetCode(), strdup(), and TAB_APPEND.
Referenced by EsOutPropsInit().
|
static |
References es_format_t::i_cat, input_SendEvent(), es_out_id_t::mouse_being_dragged, MOUSE_BUTTON_LEFT, es_out_id_t::oldmouse, vlc_input_es_out::out, es_out_sys_t::p_input, PRIV(), video_format_t::projection_mode, PROJECTION_MODE_RECTANGULAR, UNKNOWN_ES, es_format_t::video, vlc_mouse_HasDragged(), vlc_mouse_HasReleased(), and vlc_mouse_Init().
Referenced by EsOutAddLocked(), and EsOutVaControlLocked().
|
static |
References container_of, and vlc_input_es_out::out.
Referenced by ClockUpdate(), decoder_get_attachments(), decoder_on_new_audio_stats(), decoder_on_new_video_stats(), decoder_on_thumbnail_ready(), decoder_on_vout_started(), decoder_on_vout_stopped(), EsOutAdd(), EsOutControl(), EsOutDel(), EsOutDelete(), EsOutPrivControl(), EsOutSend(), and MouseEventCb().
|
static |
References es_out_pgrm_t::clocks, es_out_pgrm_t::input, input_clock_Delete(), input_source_Release(), es_out_pgrm_t::main, es_out_pgrm_t::p_input_clock, es_out_pgrm_t::p_meta, es_out_pgrm_t::source, vlc_clock_Delete(), vlc_clock_main_Delete(), and vlc_meta_Delete().
Referenced by EsOutProgramDel(), and EsOutTerminate().
| 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_UpdateTimerSmpteSource().
| 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 input_EsOutNew(), and input_EsOutSourceNew().