Go to the documentation of this file.
24 #ifndef LIBVLC_INPUT_INTERFACE_H
25 #define LIBVLC_INPUT_INTERFACE_H 1
Retrieves stream meta-data.
Definition: vlc_demux.h:172
Sets the paused or playing/resumed state.
Definition: vlc_demux.h:190
size_t count
Definition: core.c:461
Definition: vlc_demux.h:258
Retrieves an estimate of signal quality and strength.
Definition: vlc_demux.h:178
#define TAB_CLEAN(count, tab)
Definition: vlc_arrays.h:46
#define VLC_VAR_SETVALUE
Set the value of this variable without triggering any callbacks.
Definition: vlc_variables.h:87
double atof(const char *)
void input_SendEventPosition(input_thread_t *p_input, double f_position, mtime_t i_time)
Definition: event.c:54
#define var_CreateGetInteger(a, b)
Definition: vlc_variables.h:492
VLC list structure.
Definition: vlc_common.h:340
#define var_SetAddress(o, n, p)
Definition: vlc_variables.h:260
#define INPUT_UPDATE_TITLE_LIST
Definition: vlc_demux.h:109
#define var_SetBool(a, b, c)
Definition: vlc_variables.h:257
es_out_t * input_EsOutNew(input_thread_t *p_input, int i_rate)
Definition: es_out.c:285
#define VOUT_SPU_CHANNEL_OSD
Definition: vlc_vout.h:156
static thread_local struct vlc_thread * thread
Definition: thread.c:162
void input_SendEventSubtitleDelay(input_thread_t *p_input, mtime_t i_delay)
Definition: event.c:106
int strcasecmp(const char *, const char *)
Definition: vlc_demux.h:241
int demux_GetSeekpoint(demux_t *p_demux)
Definition: demux.c:564
static void es_out_SetDelay(es_out_t *p_out, int i_cat, mtime_t i_delay)
Definition: es_out.h:121
#define VLC_VAR_GETCHOICES
Definition: vlc_variables.h:99
int i_out_pace_nocontrol
count of output that can't control the space
Definition: vlc_sout.h:55
static int demux_Control(demux_t *p_demux, int i_query,...)
Definition: vlc_demux.h:358
void vout_OSDMessage(vout_thread_t *vout, int channel, const char *format,...)
Write an informative message at the default location, for the default duration and only if the OSD op...
Definition: video_text.c:141
#define INPUT_IDLE_SLEEP
Definition: vlc_config.h:57
void vout_FlushSubpictureChannel(vout_thread_t *vout, int channel)
Definition: video_output.c:389
static void es_out_SetJitter(es_out_t *p_out, mtime_t i_pts_delay, mtime_t i_pts_jitter, int i_cr_average)
Definition: es_out.h:151
#define VLC_DEMUXER_EGENERIC
Definition: vlc_demux.h:102
int(* pf_demux)(demux_t *)
Definition: vlc_demux.h:81
#define DIR_SEP
Definition: vlc_common.h:1023
void input_SendEventMeta(input_thread_t *p_input)
Definition: event.c:189
#define VLC_VAR_DOINHERIT
Creation flag.
Definition: vlc_variables.h:69
#define VLC_THREAD_PRIORITY_LOW
Definition: vlc_threads.h:321
Definition: vlc_demux.h:252
Definition: vlc_demux.h:279
#define var_InheritInteger(o, n)
Definition: vlc_variables.h:612
void stats_Update(counter_t *p_counter, uint64_t val, uint64_t *new_val)
Update a counter element with new values.
Definition: stats.c:157
bool demux_FilterDisable(demux_t *p_demux_chain, const char *psz_demux)
Definition: demux.c:650
void input_SendEventCache(input_thread_t *p_input, double f_level)
Definition: event.c:179
void input_SendEventAudioDelay(input_thread_t *p_input, mtime_t i_delay)
Definition: event.c:96
#define OBJECT_FLAGS_NOINTERACT
Definition: vlc_objects.h:33
#define demux_NewAdvanced(a, b, c, d, e, f, g, h)
Definition: demux.h:36
demux_t * demux_FilterChainNew(demux_t *p_demux, const char *psz_chain)
Builds an explicit chain of demux filters.
Definition: demux.c:601
static int es_out_SetPauseState(es_out_t *p_out, bool b_source_paused, bool b_paused, mtime_t i_date)
Definition: es_out.h:130
void * p_address
Definition: vlc_common.h:331
#define var_InheritBool(o, n)
Definition: vlc_variables.h:601
void vlc_renderer_item_release(vlc_renderer_item_t *p_item)
Releases a renderer item, i.e.
Definition: renderer_discovery.c:166
static void es_out_SetTimes(es_out_t *p_out, double f_position, mtime_t i_time, mtime_t i_length)
Definition: es_out.h:146
char * psz_name
Definition: vlc_input.h:52
void input_SendEventSignal(input_thread_t *p_input, double f_quality, double f_strength)
Definition: event.c:156
Definition: vlc_input.h:48
Seeks to the beginning of a title.
Definition: vlc_demux.h:198
stream_t * stream_FilterChainNew(stream_t *source, const char *list)
Builds an explicit chain of stream filters.
Definition: stream_filter.c:86
void vlc_UrlClean(vlc_url_t *restrict url)
Definition: url.c:594
#define libvlc_stats(o)
Definition: libvlc.h:207
int vlc_UrlParse(vlc_url_t *url, const char *str)
Parses an URI or IRI.
Definition: url.c:554
Definition: vlc_demux.h:259
#define msg_Dbg(p_this,...)
Definition: vlc_messages.h:86
Definition: vlc_demux.h:43
#define _(str)
Definition: vlc_fixups.h:371
Viewpoints.
Definition: vlc_viewpoint.h:44
#define VLC_EGENERIC
Unspecified error.
Definition: vlc_common.h:350
Seeks to the beginning of a chapter of the current title.
Definition: vlc_demux.h:206
#define ARRAY_SIZE(x)
Definition: vlc_arrays.h:162
int vlc_clone(vlc_thread_t *th, void *(*entry)(void *), void *data, int priority)
Creates and starts a new thread.
Definition: thread.c:263
int vlc_stat(const char *filename, struct stat *buf)
Finds file/inode information - like stat().
Definition: filesystem.c:170
Definition: vlc_es_out.h:55
#define vlc_dialog_display_error(a, b, c,...)
Definition: vlc_dialog.h:72
#define VLC_VAR_STRING
Definition: vlc_variables.h:51
vlc_renderer_item_t * vlc_renderer_item_hold(vlc_renderer_item_t *p_item)
Hold a renderer item, i.e.
Definition: renderer_discovery.c:157
static int es_out_ControlSetMeta(es_out_t *out, const vlc_meta_t *p_meta)
Definition: vlc_es_out.h:165
void input_SendEventTitle(input_thread_t *p_input, int i_title)
Definition: event.c:127
#define VLC_VAR_FLOAT
Definition: vlc_variables.h:52
#define OBJECT_FLAGS_QUIET
Definition: vlc_objects.h:32
#define MSTRTIME_MAX_SIZE
Definition: vlc_mtime.h:50
void vlc_cond_signal(vlc_cond_t *p_condvar)
Wakes up one thread waiting on a condition variable.
Definition: thread.c:256
#define var_InheritString(o, n)
Definition: vlc_variables.h:639
int asprintf(char **, const char *,...)
int64_t i_int
Definition: vlc_common.h:327
#define var_Create(a, b, c)
Definition: vlc_variables.h:121
static void es_out_SetMode(es_out_t *p_out, int i_mode)
Definition: es_out.h:92
Definition: vlc_demux.h:299
unsigned demux_TestAndClearFlags(demux_t *p_demux, unsigned flags)
Definition: demux.c:544
Definition: vlc_demux.h:271
Definition: vlc_demux.h:240
#define var_GetFloat(a, b)
Definition: vlc_variables.h:657
vlc_object_t * parent
Parent object.
Definition: vlc_common.h:448
#define CLOCK_FREQ
Definition: vlc_config.h:45
#define msg_Warn(p_this,...)
Definition: vlc_messages.h:84
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:125
Audio output object.
Definition: vlc_aout.h:114
bool b_bool
Definition: vlc_common.h:328
Checks whether (long) pause then stream resumption is supported.
Definition: vlc_demux.h:153
#define vlc_object_release(a)
Definition: vlc_objects.h:63
static void es_out_Delete(es_out_t *p_out)
Definition: vlc_es_out.h:155
void filename_sanitize(char *str)
Sanitize a file name.
Definition: strings.c:875
#define DEFAULT_PTS_DELAY
Definition: vlc_config.h:65
void input_SendEventSeekpoint(input_thread_t *p_input, int i_title, int i_seekpoint)
Definition: event.c:139
static int es_out_GetGroupForced(es_out_t *p_out)
Definition: es_out.h:163
void vlc_interrupt_kill(vlc_interrupt_t *ctx)
Marks the interruption context as "killed".
Definition: interrupt.c:178
Definition: vlc_demux.h:266
void input_SendEventLength(input_thread_t *p_input, mtime_t i_length)
Definition: event.c:68
static int es_out_Control(es_out_t *out, int i_query,...)
Definition: vlc_es_out.h:144
static void es_out_Eos(es_out_t *p_out)
Definition: es_out.h:170
int i_type
Definition: httpd.c:1250
void input_SendEventDead(input_thread_t *p_input)
Definition: event.c:49
Internal module descriptor.
Definition: modules.h:79
Definition: vlc_demux.h:239
float f_float
Definition: vlc_common.h:329
bool demux_FilterEnable(demux_t *p_demux_chain, const char *psz_demux)
Definition: demux.c:645
static int es_out_SetRate(es_out_t *p_out, int i_source_rate, int i_rate)
Definition: es_out.h:134
Checks whether the stream is actually a playlist, rather than a real stream.
Definition: vlc_demux.h:309
float yaw
Definition: vlc_viewpoint.h:45
#define var_Destroy(a, b)
Definition: vlc_variables.h:124
#define var_SetFloat(a, b, c)
Definition: vlc_variables.h:258
#define VLC_CLIP(v, min, max)
Definition: vlc_common.h:485
#define VLC_VAR_CHOICESCOUNT
Definition: vlc_variables.h:101
#define INPUT_UPDATE_META
Definition: vlc_demux.h:108
float roll
Definition: vlc_viewpoint.h:47
#define vlc_object_set_destructor(a, b)
Definition: libvlc.h:120
Definition: vlc_demux.h:236
vlc_interrupt_t * vlc_interrupt_set(vlc_interrupt_t *newctx)
Sets the interruption context for the calling thread.
Definition: interrupt.c:99
#define INPUT_UPDATE_TITLE
Definition: vlc_demux.h:106
#define TAB_APPEND(count, tab, p)
Definition: vlc_arrays.h:64
#define var_Type(a, b)
Definition: vlc_variables.h:130
static int demux_Demux(demux_t *p_demux)
Definition: vlc_demux.h:348
const char * psz_name
Definition: vlc_codecs.h:315
Activate the navigation item selected.
Definition: vlc_demux.h:313
int vlc_set_priority(vlc_thread_t th, int priority)
Definition: thread.c:291
char * strtok_r(char *, const char *, char **)
void vlc_mutex_init(vlc_mutex_t *p_mutex)
Initializes a fast mutex.
Definition: thread.c:85
void vlc_interrupt_deinit(vlc_interrupt_t *ctx)
Deinitializes an interruption context.
Definition: interrupt.c:71
Checks whether the stream supports seeking.
Definition: vlc_demux.h:145
static bool es_out_GetBuffering(es_out_t *p_out)
Definition: es_out.h:105
stream_t definition
Definition: vlc_stream.h:46
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:141
#define var_GetInteger(a, b)
Definition: vlc_variables.h:655
void input_SendEventState(input_thread_t *p_input, int i_state)
Definition: event.c:169
#define var_SetInteger(a, b, c)
Definition: vlc_variables.h:256
void input_SendEventRate(input_thread_t *p_input, int i_rate)
Definition: event.c:87
#define static_assert
Definition: vlc_fixups.h:367
#define VLC_DEMUXER_EOF
Definition: vlc_demux.h:101
int demux_GetTitle(demux_t *p_demux)
Definition: demux.c:556
es_out_t * input_EsOutTimeshiftNew(input_thread_t *p_input, es_out_t *p_next_out, int i_rate)
Definition: es_out_timeshift.c:300
void stats_ComputeInputStats(input_thread_t *input, input_stats_t *st)
Definition: stats.c:80
static int es_out_SetFrameNext(es_out_t *p_out)
Definition: es_out.h:142
#define likely(p)
Definition: vlc_common.h:113
Definition: vlc_url.h:145
The main vlc_object_t structure.
Definition: vlc_objects.h:39
static char * EnsureUTF8(char *str)
Removes non-UTF-8 sequences.
Definition: vlc_charset.h:94
#define VLC_ENOMEM
Not enough memory.
Definition: vlc_common.h:351
#define var_InheritAddress(o, n)
Definition: vlc_variables.h:650
#define var_GetNonEmptyString(a, b)
Definition: vlc_variables.h:659
#define VLC_THREAD_PRIORITY_INPUT
Definition: vlc_threads.h:322
Definition: vlc_demux.h:268
Retrieves the PTS delay (roughly the default buffer duration).
Definition: vlc_demux.h:166
#define VLC_SUCCESS
No error.
Definition: vlc_common.h:349
static char * str_format(input_thread_t *input, const char *fmt)
Definition: vlc_strings.h:143
static int es_out_SetRecordState(es_out_t *p_out, bool b_record)
Definition: es_out.h:126
Definition: vlc_es_out.h:65
#define FREENULL(a)
Definition: vlc_common.h:766
char * strdup(const char *)
#define VLC_USED
Definition: fourcc_gen.c:31
#define var_InheritFloat(o, n)
Definition: vlc_variables.h:623
#define vlc_custom_create(o, s, n)
Definition: libvlc.h:108
static void vlc_viewpoint_clip(vlc_viewpoint_t *p_vp)
Definition: vlc_viewpoint.h:57
module_config_t ** list
Definition: core.c:460
void vlc_cond_destroy(vlc_cond_t *p_condvar)
Deinitializes a condition variable.
Definition: thread.c:228
Definition: renderer_discovery.c:33
void vlc_cond_init(vlc_cond_t *p_condvar)
Initializes a condition variable.
Definition: thread.c:216
Whether the stream can be read at an arbitrary pace.
Definition: vlc_demux.h:159
#define TAB_INIT(count, tab)
Definition: vlc_arrays.h:40
void vlc_cond_wait(vlc_cond_t *p_condvar, vlc_mutex_t *p_mutex)
Waits on a condition variable.
Definition: thread.c:267
static int es_out_SetTime(es_out_t *p_out, mtime_t i_date)
Definition: es_out.h:138
char * vlc_path2uri(const char *path, const char *scheme)
Converts local path to URL.
Definition: url.c:138
Definition: vlc_demux.h:235
void vlc_mutex_destroy(vlc_mutex_t *p_mutex)
Deinitializes a mutex.
Definition: thread.c:110
#define var_CreateGetFloat(a, b)
Definition: vlc_variables.h:494
#define var_SetString(a, b, c)
Definition: vlc_variables.h:259
void vlc_mutex_unlock(vlc_mutex_t *p_mutex)
Releases a mutex.
Definition: thread.c:138
void input_SendEventRecord(input_thread_t *p_input, bool b_recording)
Definition: event.c:117
Definition: vlc_demux.h:289
#define unlikely(p)
Definition: vlc_common.h:114
static mtime_t es_out_GetWakeup(es_out_t *p_out)
Definition: es_out.h:97
#define vlc_assert_unreachable()
Definition: vlc_common.h:118
int64_t mtime_t
High precision date or time interval.
Definition: vlc_common.h:150
char * header
Log messages header.
Definition: vlc_common.h:426
int64_t i_time_offset
Definition: vlc_input.h:51
void input_SendEventStatistics(input_thread_t *p_input)
Definition: event.c:83
int vlc_cond_timedwait(vlc_cond_t *p_condvar, vlc_mutex_t *p_mutex, mtime_t deadline)
Waits on a condition variable up to a certain date.
Definition: thread.c:273
#define INPUT_UPDATE_SEEKPOINT
Definition: vlc_demux.h:107
void demux_Delete(demux_t *p_demux)
Definition: demux.c:286
void vlc_interrupt_init(vlc_interrupt_t *ctx)
Initializes an interruption context.
Definition: interrupt.c:51
static void vlc_viewpoint_init(vlc_viewpoint_t *p_vp)
Definition: vlc_viewpoint.h:51
Video output thread descriptor.
Definition: vlc_vout.h:70
#define VLC_OBJECT(x)
Type-safe vlc_object_t cast.
Definition: vlc_common.h:464
Definition: vlc_demux.h:274
Definition: vlc_demux.h:296
mtime_t mdate(void)
Precision monotonic clock.
Definition: thread.c:406
#define module_unneed(a, b)
Definition: vlc_modules.h:49
static bool es_out_GetEmpty(es_out_t *p_out)
Definition: es_out.h:113
VLC value structure.
Definition: vlc_common.h:325
char * psz_path
Definition: vlc_url.h:152
void vlc_mutex_lock(vlc_mutex_t *p_mutex)
Acquires a mutex.
Definition: thread.c:123
int aout_VolumeUpdate(audio_output_t *aout, int value, float *volp)
Raises the volume.
Definition: output.c:756
#define msg_Err(p_this,...)
Definition: vlc_messages.h:82
void var_FreeList(vlc_value_t *p_val, vlc_value_t *p_val2)
Free a list and the associated strings.
Definition: variables.c:1285
char * secstotimestr(char *psz_buffer, int32_t i_seconds)
Convert seconds to a time in the format h:mm:ss.
Definition: mtime.c:49
#define var_GetBool(a, b)
Definition: vlc_variables.h:656
void vlc_join(vlc_thread_t handle, void **result)
Waits for a thread to complete (if needed), then destroys it.
Definition: thread.c:270
float pitch
Definition: vlc_viewpoint.h:46
#define module_need(a, b, c, d)
Definition: vlc_modules.h:47
#define VLC_DEMUXER_SUCCESS
Definition: vlc_demux.h:103
float fov
Definition: vlc_viewpoint.h:48
int flags
Definition: vlc_common.h:428
void vlc_stream_Delete(stream_t *s)
Destroy a stream.
Definition: stream.c:120
#define var_Change(a, b, c, d, e)
Definition: vlc_variables.h:127