Go to the documentation of this file.
23 #ifndef LIBVLC_INPUT_INTERFACE_H
24 #define LIBVLC_INPUT_INTERFACE_H 1
static void es_out_SetEsDelay(es_out_t *p_out, vlc_es_id_t *es, vlc_tick_t i_delay)
Definition: es_out.h:180
static void vlc_viewpoint_init(vlc_viewpoint_t *p_vp)
Definition: vlc_viewpoint.h:48
@ DEMUX_GET_META
Retrieves stream meta-data.
Definition: vlc_demux.h:118
void vlc_mutex_init(vlc_mutex_t *mtx)
Initializes a fast mutex.
Definition: threads.c:123
int vlc_player_GetTimerPoint(vlc_player_t *player, vlc_tick_t system_now, vlc_tick_t *out_ts, float *out_pos)
Definition: timer.c:400
@ DEMUX_SET_PAUSE_STATE
Sets the paused or playing/resumed state.
Definition: vlc_demux.h:142
@ VLC_PLAYER_LIST_ADDED
Definition: vlc_player.h:2723
char * deinterlace
Definition: vlc_media_library.h:601
size_t count
Definition: core.c:401
size_t size
Definition: player.h:46
vlc_renderer_item_t * vlc_renderer_item_hold(vlc_renderer_item_t *p_item)
Hold a renderer item, i.e.
Definition: renderer_discovery.c:158
@ DEMUX_GET_SIGNAL
Retrieves an estimate of signal quality and strength.
Definition: vlc_demux.h:124
#define TAB_CLEAN(count, tab)
Definition: vlc_arrays.h:61
struct vlc_dtls * rtp_sock
Definition: rtp.h:70
int() var_Create(vlc_object_t *p_this, const char *psz_name, int i_type)
Creates a VLC object variable.
Definition: variables.c:291
@ VIDEO_ES
Definition: vlc_es.h:603
#define VLC_VAR_SETVALUE
Set the value of this variable without triggering any callbacks.
Definition: vlc_variables.h:87
In-memory stream object.
Definition: vlc_memstream.h:41
void vlc_player_RemoveTimerSource(vlc_player_t *player, vlc_es_id_t *es_source)
Definition: timer.c:383
void libvlc_Quit(libvlc_int_t *p_libvlc)
Posts an exit signal to LibVLC instance.
Definition: exit.c:55
char * crop
Definition: vlc_media_library.h:600
#define INPUT_UPDATE_TITLE_LIST
Definition: vlc_demux.h:52
static bool var_InheritBool(vlc_object_t *obj, const char *name)
Definition: vlc_variables.h:675
enum vlc_player_media_stopped_action media_stopped_action
Definition: player.h:236
@ DEMUX_GET_TYPE
Retrieves the demuxed content type Can fail if the control is not implemented.
Definition: vlc_demux.h:130
char * video_filter
Definition: vlc_media_library.h:602
static thread_local struct vlc_thread * thread
Definition: thread.c:87
@ ES_OUT_MODE_END
Definition: es_out.h:56
int strcasecmp(const char *, const char *)
const char * psz_name
Definition: text_style.c:53
@ DEMUX_SET_TIME
Definition: vlc_demux.h:190
int demux_GetSeekpoint(demux_t *p_demux)
Definition: demux.c:432
static void input_SendEventDead(input_thread_t *p_input)
Definition: event.h:41
int vlc_stat(const char *filename, struct stat *buf)
Finds file/inode information - like stat().
Definition: filesystem.c:173
static void input_SendEventSignal(input_thread_t *p_input, double f_quality, double f_strength)
Definition: event.h:126
void vlc_es_id_Release(vlc_es_id_t *id)
Decrease the ES track id reference count.
Definition: es_out.c:4514
float position
Position in the range [0.0f;1.0].
Definition: vlc_player.h:3259
bool deleting
Definition: player.h:269
char * ptr
Buffer start address.
Definition: vlc_memstream.h:48
static void es_out_SetEsCatIds(es_out_t *p_out, enum es_format_category_e cat, const char *str_ids)
Definition: es_out.h:148
struct vlc_player_track_priv * vlc_player_track_priv_New(vlc_es_id_t *id, const char *name, const es_format_t *fmt)
Definition: track.c:106
struct vlc_player_title array[]
Definition: player.h:53
#define unlikely(p)
Predicted false condition.
Definition: vlc_common.h:227
static void input_SendEventSeekpoint(input_thread_t *p_input, int i_title, int i_seekpoint)
Definition: event.h:117
void vlc_interrupt_kill(vlc_interrupt_t *ctx)
Marks the interruption context as "killed".
Definition: interrupt.c:177
bool selected
True if the program is selected.
Definition: vlc_player.h:1181
static int demux_Control(demux_t *p_demux, int i_query,...)
Definition: vlc_demux.h:301
#define INPUT_IDLE_SLEEP
Definition: vlc_config.h:61
#define BLOCK_FLAG_CORRUPTED
This block is corrupted and/or there is data loss
Definition: vlc_block.h:87
#define VLC_DEMUXER_EGENERIC
Definition: vlc_demux.h:45
Player title structure.
Definition: vlc_player.h:956
block_t *(* pf_block)(stream_t *, bool *eof)
Read data block.
Definition: vlc_stream.h:103
bool autodetect
Payload type autodetection pending.
Definition: rtp.h:78
#define VLC_THREAD_PRIORITY_LOW
Definition: vlc_threads.h:207
bool started
Definition: player.h:265
@ DEMUX_GET_TITLE_INFO
Definition: vlc_demux.h:203
int group_id
Id used for vlc_player_SelectProgram()
Definition: vlc_player.h:1177
bool scrambled
True if the program is scrambled.
Definition: vlc_player.h:1183
@ DEMUX_CAN_RECORD
Definition: vlc_demux.h:237
size_t i_buffer
Payload length.
Definition: vlc_block.h:122
static void input_SendEventTimes(input_thread_t *p_input, double f_position, vlc_tick_t i_time, vlc_tick_t i_normal_time, vlc_tick_t i_length)
Definition: event.h:57
#define msg_Info(p_this,...)
Definition: vlc_messages.h:100
@ VLC_PLAYER_ERROR_GENERIC
Definition: vlc_player.h:292
bool demux_FilterDisable(demux_t *p_demux_chain, const char *psz_demux)
Definition: demux.c:521
struct vlc_logger * logger
Definition: vlc_objects.h:45
void vlc_player_title_list_Release(struct vlc_player_title_list *titles)
Release of previously held title list.
Definition: title.c:38
size_t chapter_count
Number of chapters, can be 0.
Definition: vlc_player.h:966
int fd
Definition: vlc_fixups.h:419
@ VLC_PLAYER_STATE_STARTED
The player is started.
Definition: vlc_player.h:258
void rtp_autodetect(demux_t *, rtp_session_t *, const block_t *)
Definition: rtpfmt.c:259
static vlc_tick_t es_out_GetWakeup(es_out_t *p_out)
Definition: es_out.h:134
static vlc_tick_t vlc_tick_from_samples(int64_t samples, int samp_rate)
Definition: vlc_tick.h:101
@ DATA_ES
Definition: vlc_es.h:606
Datagram socket.
Definition: vlc_dtls.h:29
#define vlc_vector_push(pv, item)
Push an item at the end of the vector.
Definition: vlc_vector.h:313
static bool vlc_atomic_rc_dec(vlc_atomic_rc_t *rc)
Decrement the RC and return true if it reaches 0.
Definition: vlc_atomic.h:61
bool sout_instance_ControlsPace(sout_instance_t *sout)
Definition: stream_output.c:149
Definition: vlc_fixups.h:417
demux_t * demux_FilterChainNew(demux_t *p_demux, const char *psz_chain)
Builds an explicit chain of demux filters.
Definition: demux.c:471
static char * var_GetNonEmptyString(vlc_object_t *p_obj, const char *psz_name)
Definition: vlc_variables.h:447
void * p_address
Definition: vlc_common.h:463
int() vlc_memstream_puts(struct vlc_memstream *ms, const char *str)
Appends a nul-terminated string to a byte stream.
Definition: memstream.c:156
char * sub_string_ids
Definition: player.h:262
@ VLC_PLAYER_STATE_PLAYING
The player is playing.
Definition: vlc_player.h:266
void vlc_cond_wait(vlc_cond_t *cond, vlc_mutex_t *mutex)
Waits on a condition variable.
Definition: threads.c:340
void vlc_player_destructor_AddStoppingInput(vlc_player_t *player, struct vlc_player_input *input)
Definition: player.c:167
void vlc_player_destructor_AddJoinableInput(vlc_player_t *player, struct vlc_player_input *input)
Definition: player.c:181
@ DEMUX_SET_TITLE
Seeks to the beginning of a title.
Definition: vlc_demux.h:150
stream_t * stream_FilterChainNew(stream_t *source, const char *list)
Builds an explicit chain of stream filters.
Definition: stream_filter.c:109
void vlc_UrlClean(vlc_url_t *restrict url)
Definition: url.c:598
struct vlc_player_program * vlc_player_program_vector_FindById(vlc_player_program_vector *vec, int id, size_t *idx)
Definition: track.c:89
static int vlc_dtls_GetPollFD(struct vlc_dtls *dgs, short *restrict ev)
Definition: vlc_dtls.h:47
@ DEMUX_SET_GROUP_LIST
Definition: vlc_demux.h:211
void vout_Release(vout_thread_t *vout)
Definition: video_output.c:1906
@ DEMUX_SET_ES
Definition: vlc_demux.h:212
#define msg_Dbg(p_this,...)
Definition: vlc_messages.h:106
@ VLC_PLAYER_TIMER_STATE_DISCONTINUITY
Definition: player.h:207
@ DEMUX_SET_ES_LIST
Definition: vlc_demux.h:213
#define _(str)
Definition: vlc_fixups.h:374
#define vlc_hash_FinishHex(ctx, output)
Finish hash computation and return hex representation.
Definition: vlc_hash.h:61
int poll(struct pollfd *, unsigned, int)
static char * var_InheritString(vlc_object_t *obj, const char *name)
Definition: vlc_variables.h:705
static void es_out_SetTimes(es_out_t *p_out, double f_position, vlc_tick_t i_time, vlc_tick_t i_normal_time, vlc_tick_t i_length)
Definition: es_out.h:206
Viewpoints.
Definition: vlc_viewpoint.h:41
static int es_out_SetVbiTransparency(es_out_t *p_out, vlc_es_id_t *id, bool enabled)
Definition: es_out.h:238
#define VLC_EGENERIC
Unspecified error.
Definition: vlc_common.h:474
int vlc_memstream_open(struct vlc_memstream *ms)
Initializes a byte stream object.
Definition: memstream.c:105
@ DEMUX_SET_SEEKPOINT
Seeks to the beginning of a chapter of the current title.
Definition: vlc_demux.h:158
#define vlc_vector_init(pv)
Initialize an empty vector.
Definition: vlc_vector.h:80
#define ARRAY_SIZE(x)
Definition: vlc_arrays.h:178
const struct vlc_player_chapter * chapters
Array of chapters, can be NULL.
Definition: vlc_player.h:968
@ ES_OUT_SET_GROUP
Definition: vlc_es_out.h:57
#define vlc_dialog_display_error(a, b, c,...)
Definition: vlc_dialog.h:73
int vlc_memstream_close(struct vlc_memstream *ms)
Closes a byte stream object.
Definition: memstream.c:120
static char * EnsureUTF8(char *str)
Removes non-UTF-8 sequences.
Definition: vlc_charset.h:115
#define VLC_VAR_STRING
Definition: vlc_variables.h:51
static int es_out_ControlSetMeta(es_out_t *out, const vlc_meta_t *p_meta)
Definition: vlc_es_out.h:191
es_out_t * input_EsOutNew(input_thread_t *p_input, input_source_t *main_source, float rate)
Definition: es_out.c:532
static void es_out_SetJitter(es_out_t *p_out, vlc_tick_t i_pts_delay, vlc_tick_t i_pts_jitter, int i_cr_average)
Definition: es_out.h:214
struct vlc_player_title_list * vlc_player_title_list_Create(input_title_t *const *array, size_t count, int title_offset, int chapter_offset)
Definition: title.c:98
void vlc_renderer_item_release(vlc_renderer_item_t *p_item)
Releases a renderer item, i.e.
Definition: renderer_discovery.c:167
Definition: vlc_events.h:123
int(* pf_demux)(stream_t *)
Definition: vlc_stream.h:115
void() var_Destroy(vlc_object_t *p_this, const char *psz_name)
Destroys a VLC object variable.
Definition: variables.c:382
int asprintf(char **, const char *,...)
bool selected_by_user
Definition: player.h:58
int() var_Change(vlc_object_t *p_this, const char *psz_name, int i_action,...)
Performs a special action on a variable.
Definition: variables.c:423
void vlc_cond_signal(vlc_cond_t *cond)
Wakes up one thread waiting on a condition variable.
Definition: threads.c:253
int64_t i_int
Definition: vlc_common.h:459
short revents
Definition: vlc_fixups.h:421
#define vlc_vector_remove(pv, index)
Remove an item.
Definition: vlc_vector.h:577
static void es_out_SetMode(es_out_t *p_out, int i_mode)
Definition: es_out.h:117
@ DEMUX_SET_RATE
Definition: vlc_demux.h:257
void vlc_player_vout_AddCallbacks(vlc_player_t *player, vout_thread_t *vout)
Definition: vout.c:140
@ VLC_PLAYER_LIST_UPDATED
Definition: vlc_player.h:2725
static void input_SendEventStatistics(input_thread_t *p_input, const struct input_stats_t *stats)
Definition: event.h:82
unsigned demux_TestAndClearFlags(demux_t *p_demux, unsigned flags)
Definition: demux.c:414
const char * vlc_renderer_item_sout(const vlc_renderer_item_t *p_item)
Get the sout command of a renderer item.
Definition: renderer_discovery.c:126
@ DEMUX_HAS_UNSUPPORTED_META
Definition: vlc_demux.h:225
void aout_Release(audio_output_t *aout)
Definition: output.c:382
@ DEMUX_GET_TIME
Definition: vlc_demux.h:189
@ DEMUX_SET_GROUP_ALL
Definition: vlc_demux.h:210
@ VLC_PLAYER_ERROR_NONE
Definition: vlc_player.h:291
vout_thread_t * vout
Definition: player.h:53
enum vlc_player_state global_state
Definition: player.h:264
es_format_category_e
ES Categories.
Definition: vlc_es.h:600
static int es_out_RestartEs(es_out_t *p_out, vlc_es_id_t *id)
Definition: es_out.h:130
int vlc_clone(vlc_thread_t *th, void *(*entry)(void *), void *data, int priority)
Creates and starts a new thread.
Definition: thread.c:144
int(* pf_readdir)(stream_t *, input_item_node_t *)
Read directory.
Definition: vlc_stream.h:113
void vlc_hash_md5_Init(vlc_hash_md5_t *ctx)
Initialize MD5 context.
Definition: md5.c:338
@ VLC_VOUT_ORDER_NONE
Definition: vlc_vout.h:72
static void es_out_SetDelay(es_out_t *p_out, int i_cat, vlc_tick_t i_delay)
Definition: es_out.h:185
#define CLOCK_FREQ
Definition: vlc_config.h:47
char * vlc_path2uri(const char *path, const char *scheme)
Converts local path to URL.
Definition: url.c:143
#define msg_Warn(p_this,...)
Definition: vlc_messages.h:104
Audio output object.
Definition: vlc_aout.h:141
bool b_bool
Definition: vlc_common.h:460
Definition: vlc_es_out.h:143
vlc_mutex_t lock
Definition: player.h:230
const char * vlc_renderer_item_demux_filter(const vlc_renderer_item_t *p_item)
Get the demux filter to use with a renderer item.
Definition: renderer_discovery.c:142
#define vlc_assert_unreachable()
Impossible branch assertion.
Definition: vlc_common.h:253
static int es_out_SetPauseState(es_out_t *p_out, bool b_source_paused, bool b_paused, vlc_tick_t i_date)
Definition: es_out.h:194
@ DEMUX_CAN_PAUSE
Checks whether (long) pause then stream resumption is supported.
Definition: vlc_demux.h:99
#define SEC_FROM_VLC_TICK(vtk)
Definition: vlc_tick.h:53
void rtp_queue(demux_t *, rtp_session_t *, block_t *)
Receives an RTP packet and queues it.
Definition: session.c:239
static void es_out_Delete(es_out_t *p_out)
Definition: vlc_es_out.h:181
int vlc_savecancel(void)
Disables thread cancellation.
Definition: thread.c:183
Player program structure.
Definition: vlc_player.h:1174
#define DEFAULT_PTS_DELAY
Definition: vlc_config.h:69
static int es_out_SetRate(es_out_t *p_out, float source_rate, float rate)
Definition: es_out.h:198
static int es_out_GetGroupForced(es_out_t *p_out)
Definition: es_out.h:221
static int var_SetString(vlc_object_t *p_obj, const char *psz_name, const char *psz_string)
Set the value of a string variable.
Definition: vlc_variables.h:345
vlc_tick_t vlc_tick_now(void)
Precision monotonic clock.
Definition: thread.c:261
char * current_subtitle_track
Definition: vlc_media_library.h:598
@ DEMUX_SET_NEXT_DEMUX_TIME
Definition: vlc_demux.h:220
static int es_out_Control(es_out_t *out, int i_query,...)
Definition: vlc_es_out.h:170
static void es_out_Eos(es_out_t *p_out)
Definition: es_out.h:228
int i_type
Definition: httpd.c:1269
int vlc_UrlParse(vlc_url_t *url, const char *str)
Parses an URI or IRI.
Definition: url.c:558
Internal module descriptor.
Definition: modules.h:78
@ DEMUX_GET_LENGTH
Definition: vlc_demux.h:188
static void vlc_atomic_rc_inc(vlc_atomic_rc_t *rc)
Increment the RC.
Definition: vlc_atomic.h:52
const input_source_t * vlc_es_id_GetSource(vlc_es_id_t *id)
Definition: es_out.c:4543
float f_float
Definition: vlc_common.h:461
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
const char * vlc_es_id_GetStrId(vlc_es_id_t *id)
Get the unique string identifier.
Definition: es_out.c:4532
char * current_video_track
Definition: vlc_media_library.h:596
bool demux_FilterEnable(demux_t *p_demux_chain, const char *psz_demux)
Definition: demux.c:516
block_t * block_Alloc(size_t size)
Allocates a block.
Definition: block.c:108
uint32_t i_flags
Definition: vlc_block.h:126
struct vlc_player_track_priv * vlc_player_track_vector_FindById(vlc_player_track_vector *vec, vlc_es_id_t *id, size_t *idx)
Definition: track.c:194
@ VLC_PLAYER_MEDIA_STOPPED_CONTINUE
Continue (or stop if there is no next media), default behavior.
Definition: vlc_player.h:98
int current_title
Definition: vlc_media_library.h:595
static void input_SendEventTitle(input_thread_t *p_input, const struct vlc_input_event_title *title)
Definition: event.h:108
@ ES_OUT_MODE_ALL
Definition: es_out.h:53
int vlc_es_id_GetInputId(vlc_es_id_t *id)
Get the ES track input id.
Definition: es_out.c:4520
stream_t * stream_FilterAutoNew(stream_t *source)
Probes stream filters automatically.
Definition: stream_filter.c:93
const char * vlc_strerror_c(int errnum)
Definition: error.c:34
float yaw
Definition: vlc_viewpoint.h:42
@ DEMUX_SET_GROUP_DEFAULT
Definition: vlc_demux.h:209
void vlc_player_SelectTitleIdx(vlc_player_t *player, size_t index)
Select a title index for the current media.
Definition: player.c:843
#define INPUT_UPDATE_META
Definition: vlc_demux.h:51
float roll
Definition: vlc_viewpoint.h:44
#define VLC_TICK_INVALID
Definition: vlc_config.h:44
vlc_cond_t start_delay_cond
Definition: player.h:234
@ VLC_PLAYER_VOUT_STOPPED
Definition: vlc_player.h:2497
static void input_SendEventCapabilities(input_thread_t *p_input, int i_capabilities)
Definition: event.h:48
static void vlc_player_SetPosition(vlc_player_t *player, float position)
Helper to set the absolute position precisely.
Definition: vlc_player.h:721
vlc_tick_t system_date
System date of this record (always valid), this date can be in the future or in the past.
Definition: vlc_player.h:3272
#define INPUT_UPDATE_TITLE
Definition: vlc_demux.h:49
#define TAB_APPEND(count, tab, p)
Definition: vlc_arrays.h:79
@ DEMUX_GET_NORMAL_TIME
Definition: vlc_demux.h:192
short events
Definition: vlc_fixups.h:420
static void vlc_player_SetTime(vlc_player_t *player, vlc_tick_t time)
Helper to set the absolute time precisely.
Definition: vlc_player.h:753
int vlc_memstream_putc(struct vlc_memstream *ms, int c)
Appends a single byte to a byte stream.
Definition: memstream.c:151
@ DEMUX_NAV_ACTIVATE
Activate the navigation item selected.
Definition: vlc_demux.h:261
void vlc_player_program_Delete(struct vlc_player_program *prgm)
Delete a duplicated program.
Definition: track.c:82
static int var_SetBool(vlc_object_t *p_obj, const char *psz_name, bool b)
Set the value of an boolean variable.
Definition: vlc_variables.h:308
int vlc_set_priority(vlc_thread_t th, int priority)
Definition: thread.c:161
char * strtok_r(char *, const char *, char **)
void vlc_interrupt_deinit(vlc_interrupt_t *ctx)
Deinitializes an interruption context.
Definition: interrupt.c:71
@ DEMUX_CAN_SEEK
Checks whether the stream supports seeking.
Definition: vlc_demux.h:91
vlc_es_id_t * es_id
Id used for any player actions, like vlc_player_SelectEsId()
Definition: vlc_player.h:1337
static bool es_out_GetBuffering(es_out_t *p_out)
Definition: es_out.h:164
stream_t definition
Definition: vlc_stream.h:46
@ VLC_PLAYER_TIMER_STATE_PAUSED
Definition: player.h:206
@ VLC_PLAYER_STATE_STOPPING
The player is stopping.
Definition: vlc_player.h:281
#define VLC_HASH_MD5_DIGEST_HEX_SIZE
MD5 digest hex representation size.
Definition: vlc_hash.h:103
#define POLLIN
Definition: vlc_fixups.h:414
static float var_GetFloat(vlc_object_t *p_obj, const char *psz_name)
Get a float value.
Definition: vlc_variables.h:421
static vlc_player_track_vector * vlc_player_input_GetTrackVector(struct vlc_player_input *input, enum es_format_category_e cat)
Definition: player.h:394
#define vlc_player_SendEvent(player, event,...)
Definition: player.h:307
Player chapter structure.
Definition: vlc_player.h:942
static void input_SendEventSubsFPS(input_thread_t *p_input, float fps)
Definition: event.h:173
#define static_assert
Definition: vlc_fixups.h:370
input_item_t * next_media
Definition: player.h:258
enum es_format_category_e vlc_es_id_GetCat(vlc_es_id_t *id)
Get the ES category.
Definition: es_out.c:4538
Opaque structure representing an ES (Elementary Stream) track.
Definition: es_out.c:94
@ AUDIO_ES
Definition: vlc_es.h:604
@ VLC_PLAYER_LIST_REMOVED
Definition: vlc_player.h:2724
struct vlc_player_track t
Definition: player.h:52
unsigned error_count
Definition: player.h:267
#define vlc_tick_from_sec(sec)
Definition: vlc_tick.h:81
#define VLC_DEMUXER_EOF
Definition: vlc_demux.h:44
struct vlc_player_input * input
Definition: player.h:254
int demux_GetTitle(demux_t *p_demux)
Definition: demux.c:423
static int es_out_StopAllEs(es_out_t *p_out, vlc_es_id_t ***context)
Definition: es_out.h:156
@ UNKNOWN_ES
Definition: vlc_es.h:602
void vlc_restorecancel(int state)
Restores the cancellation state.
Definition: thread.c:193
bool no_interact
Definition: vlc_objects.h:51
static int es_out_SetFrameNext(es_out_t *p_out)
Definition: es_out.h:202
Definition: vlc_url.h:145
MD5 hash context.
Definition: vlc_hash.h:85
RTP demux module shared declarations.
vlc_interrupt_t * vlc_interrupt_set(vlc_interrupt_t *newctx)
Sets the interruption context for the calling thread.
Definition: interrupt.c:98
VLC object common members.
Definition: vlc_objects.h:43
void vlc_player_ResetTimer(vlc_player_t *player)
Definition: timer.c:30
#define VLC_ENOMEM
Not enough memory.
Definition: vlc_common.h:476
demux_t * demux_NewAdvanced(vlc_object_t *p_obj, input_thread_t *p_input, const char *module, const char *url, stream_t *s, es_out_t *out, bool b_preparsing)
Definition: demux.c:117
#define VLC_THREAD_PRIORITY_INPUT
Definition: vlc_threads.h:208
@ DEMUX_GET_FPS
Definition: vlc_demux.h:222
@ VLC_PLAYER_MEDIA_STOPPED_EXIT
Exit VLC.
Definition: vlc_player.h:104
size_t count
Definition: player.h:52
@ DEMUX_GET_PTS_DELAY
Retrieves the PTS delay (roughly the default buffer duration).
Definition: vlc_demux.h:112
static void input_SendEventCache(input_thread_t *p_input, double f_level)
Definition: event.h:144
#define VLC_SUCCESS
No error.
Definition: vlc_common.h:472
int vlc_player_program_Update(struct vlc_player_program *prgm, int id, const char *name)
Definition: track.c:60
es_out_t * input_EsOutSourceNew(es_out_t *master_out, input_source_t *in)
Definition: es_out_source.c:80
static int var_SetFloat(vlc_object_t *p_obj, const char *psz_name, float f)
Set the value of a float variable.
Definition: vlc_variables.h:331
static int es_out_SetRecordState(es_out_t *p_out, bool b_record)
Definition: es_out.h:190
@ ES_OUT_RESET_PCR
Definition: vlc_es_out.h:67
es_out_t * input_EsOutTimeshiftNew(input_thread_t *, es_out_t *, float i_rate)
Definition: es_out_timeshift.c:332
input_resource_t * resource
Definition: player.h:250
void vlc_player_UpdateTimerState(vlc_player_t *player, vlc_es_id_t *es_source, enum vlc_player_timer_state state, vlc_tick_t system_date)
Definition: timer.c:175
char * strdup(const char *)
static int64_t var_InheritInteger(vlc_object_t *obj, const char *name)
Definition: vlc_variables.h:685
#define VLC_TICK_FROM_MS(ms)
Definition: vlc_tick.h:122
@ VLC_PLAYER_STATE_PAUSED
The player is paused.
Definition: vlc_player.h:273
static int es_out_SetVbiPage(es_out_t *p_out, vlc_es_id_t *id, unsigned page)
Definition: es_out.h:233
char * current_audio_track
Definition: vlc_media_library.h:597
#define vlc_custom_create(o, s, n)
Definition: libvlc.h:117
#define VLC_TICK_FROM_SEC(sec)
Definition: vlc_tick.h:52
static bool var_GetBool(vlc_object_t *p_obj, const char *psz_name)
Get a boolean value.
Definition: vlc_variables.h:390
char * audio_string_ids
Definition: player.h:261
void vlc_mutex_lock(vlc_mutex_t *mtx)
Acquires a mutex.
Definition: threads.c:158
module_config_t ** list
Definition: core.c:400
@ VLC_PLAYER_VOUT_STARTED
Definition: vlc_player.h:2496
bool selected
True if the track is selected.
Definition: vlc_player.h:1343
const char name[16]
Definition: httpd.c:1268
ssize_t(* pf_read)(stream_t *, void *buf, size_t len)
Read data.
Definition: vlc_stream.h:85
int() var_Type(vlc_object_t *p_this, const char *psz_name)
Get the type of a variable.
Definition: variables.c:655
static int es_out_StartAllEs(es_out_t *p_out, vlc_es_id_t **context)
Definition: es_out.h:160
Definition: renderer_discovery.c:34
int aout_VolumeUpdate(audio_output_t *aout, int value, float *volp)
Raises the volume.
Definition: output.c:671
#define vlc_vector_destroy(pv)
Destroy a vector.
Definition: vlc_vector.h:93
vlc_player_state
State of the player.
Definition: vlc_player.h:243
@ DEMUX_CAN_CONTROL_PACE
Whether the stream can be read at an arbitrary pace.
Definition: vlc_demux.h:105
#define TAB_INIT(count, tab)
Definition: vlc_arrays.h:55
#define VLC_TICK_0
Definition: vlc_config.h:45
@ ES_OUT_MODE_PARTIAL
Definition: es_out.h:55
static int es_out_SetEs(es_out_t *p_out, vlc_es_id_t *id)
Definition: es_out.h:122
bool rtp_dequeue(demux_t *, const rtp_session_t *, vlc_tick_t *)
static void vlc_viewpoint_clip(vlc_viewpoint_t *p_vp)
Definition: vlc_viewpoint.h:54
@ SPU_ES
Definition: vlc_es.h:605
static int var_SetInteger(vlc_object_t *p_obj, const char *psz_name, int64_t i)
Set the value of an integer variable.
Definition: vlc_variables.h:293
@ DEMUX_GET_POSITION
Definition: vlc_demux.h:184
int vlc_player_OpenNextMedia(vlc_player_t *player)
Definition: player.c:70
static int demux_SetPosition(demux_t *p_demux, double pos, bool precise, bool absolute)
Definition: vlc_demux.h:371
int srtp_recv(srtp_session_t *s, uint8_t *buf, size_t *lenp)
Turns a SRTP packet into a RTP packet: authenticates the packet, then decrypts it.
Definition: srtp.c:623
static int es_out_SetEsList(es_out_t *p_out, enum es_format_category_e cat, vlc_es_id_t **ids)
Definition: es_out.h:142
@ DEMUX_SET_RECORD_STATE
Definition: vlc_demux.h:247
static int64_t var_GetInteger(vlc_object_t *p_obj, const char *psz_name)
Get an integer value.
Definition: vlc_variables.h:374
void vlc_player_UpdateTimer(vlc_player_t *player, vlc_es_id_t *es_source, bool es_source_is_master, const struct vlc_player_timer_point *point, vlc_tick_t normal_time, unsigned frame_rate, unsigned frame_rate_base)
Definition: timer.c:259
void vlc_stream_Delete(stream_t *s)
Destroy a stream.
Definition: stream.c:133
static void * var_InheritAddress(vlc_object_t *obj, const char *name)
Definition: vlc_variables.h:720
void vlc_hash_md5_Update(vlc_hash_md5_t *ctx, const void *data, size_t length)
Update MD5 hash computation with new data.
Definition: md5.c:343
#define vlc_object_parent(o)
Definition: vlc_objects.h:158
@ VLC_PLAYER_TIMER_STATE_PLAYING
Definition: player.h:205
rtp_session_t * session
Definition: rtp.h:65
@ ES_OUT_MODE_AUTO
Definition: es_out.h:54
static void input_SendEventState(input_thread_t *p_input, int i_state, vlc_tick_t state_date)
Definition: event.h:135
int demux_Demux(demux_t *demux)
Definition: demux.c:202
#define vlc_object_delete(obj)
Definition: vlc_objects.h:136
static int var_SetAddress(vlc_object_t *p_obj, const char *psz_name, void *ptr)
Set the value of a pointer variable.
Definition: vlc_variables.h:360
#define INPUT_UPDATE_SEEKPOINT
Definition: vlc_demux.h:50
#define likely(p)
Predicted true condition.
Definition: vlc_common.h:218
vlc_tick_t i_time_offset
Definition: vlc_input.h:55
uint8_t * p_buffer
Payload start.
Definition: vlc_block.h:121
#define VLC_OBJECT(x)
Type-safe vlc_object_t cast.
Definition: vlc_objects.h:70
static void input_SendEventRecord(input_thread_t *p_input, bool b_recording)
Definition: event.h:99
static uint8_t rtp_ptype(const block_t *block)
Definition: rtp.h:40
void vlc_interrupt_init(vlc_interrupt_t *ctx)
Initializes an interruption context.
Definition: interrupt.c:51
void vlc_player_track_priv_Delete(struct vlc_player_track_priv *trackpriv)
Definition: track.c:139
Video output thread descriptor.
Definition: vlc_vout.h:55
int vlc_player_track_priv_Update(struct vlc_player_track_priv *trackpriv, const char *name, const es_format_t *fmt)
Definition: track.c:169
es_format_t fmt
Es format.
Definition: vlc_player.h:1341
void vlc_cond_init(vlc_cond_t *cond)
Initializes a condition variable.
Definition: threads.c:234
@ VLC_PLAYER_STATE_STOPPED
The player is stopped.
Definition: vlc_player.h:251
@ DEMUX_CAN_CONTROL_RATE
Definition: vlc_demux.h:254
@ DEMUX_GET_ATTACHMENTS
Definition: vlc_demux.h:232
static float var_InheritFloat(vlc_object_t *obj, const char *name)
Definition: vlc_variables.h:695
char * aspect_ratio
Definition: vlc_media_library.h:599
static void * vlc_alloc(size_t count, size_t size)
Definition: vlc_common.h:1144
int vlc_cond_timedwait(vlc_cond_t *cond, vlc_mutex_t *mutex, vlc_tick_t deadline)
Waits on a condition variable up to a certain date.
Definition: threads.c:349
#define module_unneed(a, b)
Definition: vlc_modules.h:126
static thread_local struct @76 state
static void demux_Delete(demux_t *demux)
Definition: vlc_demux.h:290
static void vlc_atomic_rc_init(vlc_atomic_rc_t *rc)
Init the RC to 1.
Definition: vlc_atomic.h:46
void block_Release(block_t *block)
Releases a block.
Definition: block.c:135
Player timer point.
Definition: vlc_player.h:3256
static bool es_out_GetEmpty(es_out_t *p_out)
Definition: es_out.h:172
void vlc_join(vlc_thread_t handle, void **result)
Waits for a thread to complete (if needed), then destroys it.
Definition: thread.c:151
vlc_renderer_item_t * renderer
Definition: player.h:251
vlc_tick_t delay
Definition: player.h:54
VLC value structure.
Definition: vlc_common.h:457
size_t size
Definition: player.h:43
char * psz_path
Definition: vlc_url.h:152
void vlc_mutex_unlock(vlc_mutex_t *mtx)
Releases a mutex.
Definition: threads.c:209
#define vlc_object_instance(o)
Definition: vlc_objects.h:195
void * p_sys
Private data pointer.
Definition: vlc_stream.h:138
Definition: vlc_block.h:117
static int es_out_UnsetEs(es_out_t *p_out, vlc_es_id_t *id)
Definition: es_out.h:126
struct vlc_player_program * vlc_player_program_New(int id, const char *name)
Definition: track.c:42
@ ES_OUT_MODE_NONE
Definition: es_out.h:52
static int demux_SetTime(demux_t *p_demux, vlc_tick_t time, bool precise, bool absolute)
Definition: vlc_demux.h:390
#define msg_Err(p_this,...)
Definition: vlc_messages.h:102
bool vlc_es_id_IsStrIdStable(vlc_es_id_t *id)
Return whether the ES track identifier is stable.
Definition: es_out.c:4526
void vlc_player_vout_DelCallbacks(vlc_player_t *player, vout_thread_t *vout)
Definition: vout.c:150
#define VLC_CODEC_TELETEXT
Definition: vlc_fourcc.h:594
static void input_SendEventRate(input_thread_t *p_input, float rate)
Definition: event.h:91
void vlc_player_PrepareNextMedia(vlc_player_t *player)
Definition: player.c:54
static ssize_t vlc_dtls_Recv(struct vlc_dtls *dgs, void *buf, size_t len, bool *restrict truncated)
Definition: vlc_dtls.h:52
char * video_string_ids
Definition: player.h:260
float pitch
Definition: vlc_viewpoint.h:43
#define vlc_vector_foreach(item, pv)
For-each loop.
Definition: vlc_vector.h:637
#define module_need(a, b, c, d)
Definition: vlc_modules.h:111
void vlc_event_send(vlc_event_manager_t *p_em, vlc_event_t *p_event)
Send an event to the listener attached to this p_em.
Definition: events.c:97
#define VLC_DEMUXER_SUCCESS
Definition: vlc_demux.h:46
float fov
Definition: vlc_viewpoint.h:45