24 #ifndef VLC_INPUT_ITEM_H 25 #define VLC_INPUT_ITEM_H 1 50 #define info_foreach(info, cat) vlc_list_foreach(info, cat, node) 52 struct info_category_t
91 info_category_t **pp_categories;
116 bool b_error_when_reading;
118 int i_preparse_depth;
121 bool b_preparse_interact;
125 #define INPUT_ITEM_URI_NOP "vlc://nop" 129 #define INPUT_DURATION_UNSET VLC_TICK_INVALID 130 #define INPUT_DURATION_INDEFINITE (-1) 155 #define MASTER_EXTENSIONS \ 156 "asf", "avi", "divx", \ 157 "f4v", "flv", "m1v", \ 158 "m2v", "m4v", "mkv", \ 159 "mov", "mp2", "mp2v", \ 160 "mp4", "mp4v", "mpe", \ 161 "mpeg", "mpeg1", "mpeg2", \ 162 "mpeg4", "mpg", "mpv2", \ 163 "mxf", "ogv", "ogx", \ 164 "ps", "vro","webm", \ 167 #define SLAVE_SPU_EXTENSIONS \ 168 "aqt", "ass", "cdg", \ 169 "dks", "idx", "jss", \ 170 "mpl2", "mpsub", "pjs", \ 171 "psb", "rt", "sami", "sbv", \ 172 "scc", "smi", "srt", \ 173 "ssa", "stl", "sub", \ 174 "tt", "ttml", "usf", \ 177 #define SLAVE_AUDIO_EXTENSIONS \ 178 "aac", "ac3", "dts", \ 179 "dtshd", "eac3", "flac", \ 180 "m4a", "mp3", "pcm" \ 192 input_item_t * p_item;
250 const char *
const *ppsz_options,
260 #define input_item_slave_Delete(p_slave) free(p_slave) 284 #define INPUT_META( name ) \ 286 void input_item_Set ## name (input_item_t *p_input, const char *val) \ 288 input_item_SetMeta (p_input, vlc_meta_ ## name, val); \ 291 char *input_item_Get ## name (input_item_t *p_input) \ 293 return input_item_GetMeta (p_input, vlc_meta_ ## name); \ 324 #define input_item_SetTrackNum input_item_SetTrackNumber 325 #define input_item_GetTrackNum input_item_GetTrackNumber 326 #define input_item_SetArtURL input_item_SetArtworkURL 327 #define input_item_GetArtURL input_item_GetArtworkURL 341 const
char *psz_name,
345 #define input_item_New( psz_uri, psz_name ) \ 346 input_item_NewExt( psz_uri, psz_name, INPUT_DURATION_UNSET, ITEM_TYPE_UNKNOWN, ITEM_NET_UNKNOWN ) 348 #define input_item_NewCard( psz_uri, psz_name ) \ 349 input_item_NewExt( psz_uri, psz_name, INPUT_DURATION_INDEFINITE, ITEM_TYPE_CARD, ITEM_LOCAL ) 351 #define input_item_NewDisc( psz_uri, psz_name, i_duration ) \ 352 input_item_NewExt( psz_uri, psz_name, i_duration, ITEM_TYPE_DISC, ITEM_LOCAL ) 354 #define input_item_NewStream( psz_uri, psz_name, i_duration ) \ 355 input_item_NewExt( psz_uri, psz_name, i_duration, ITEM_TYPE_STREAM, ITEM_NET ) 357 #define input_item_NewDirectory( psz_uri, psz_name, i_net ) \ 358 input_item_NewExt( psz_uri, psz_name, INPUT_DURATION_UNSET, ITEM_TYPE_DIRECTORY, i_net ) 360 #define input_item_NewFile( psz_uri, psz_name, i_duration, i_net ) \ 361 input_item_NewExt( psz_uri, psz_name, i_duration, ITEM_TYPE_FILE, i_net ) 378 #define INPUT_RECORD_PREFIX "vlc-record-%Y-%m-%d-%Hh%Mm%Ss-$ N-$ p" 384 const char *psz_path,
const char *psz_prefix,
385 const char *psz_extension )
VLC_USED;
406 void (*on_ended)(input_item_t *item,
int status,
void *userdata);
497 void *cbs_userdata );
506 int64_t i_read_packets;
507 int64_t i_read_bytes;
508 float f_input_bitrate;
511 int64_t i_demux_read_packets;
512 int64_t i_demux_read_bytes;
513 float f_demux_bitrate;
514 int64_t i_demux_corrupted;
515 int64_t i_demux_discontinuity;
518 int64_t i_decoded_audio;
519 int64_t i_decoded_video;
522 int64_t i_displayed_pictures;
523 int64_t i_lost_pictures;
526 int64_t i_played_abuffers;
527 int64_t i_lost_abuffers;
543 int i_sub_autodetect_fuzzy;
544 bool b_show_hiddenfiles;
546 char *psz_ignored_exts;
557 #define vlc_readdir_helper_init(p_rdh, p_obj, p_node) \ 558 vlc_readdir_helper_init(p_rdh, VLC_OBJECT(p_obj), p_node) 583 const char *psz_uri,
const char *psz_flatpath,
584 const char *psz_filename,
585 int i_type,
int i_net);
char * psz_name
Name of this info.
Definition: vlc_input_item.h:46
vlc_mutex_t lock
Definition: rand.c:32
Definition: vlc_events.h:114
Definition: vlc_objects.h:115
char * psz_value
Value of the info.
Definition: vlc_input_item.h:47
This provides convenience helpers for linked lists.
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
int i_type
Definition: httpd.c:1270
Mutex.
Definition: vlc_threads.h:266
static void on_preparse_ended(input_item_t *media, enum input_item_preparse_status status, void *userdata)
Definition: preparse.c:92
This file defines functions and structures for storing dvb epg information.
Definition: vlc_input_item.h:44
#define VLC_API
Definition: fourcc_gen.c:31
#define VLC_FORMAT(x, y)
String format function annotation.
Definition: vlc_common.h:141
Doubly-linked list node.
Definition: vlc_list.h:43
static void on_art_fetch_ended(input_item_t *item, bool fetched, void *userdata)
Definition: preparser.c:159
VLC object common members.
Definition: vlc_objects.h:43
Access pf_readdir helper struct.
Definition: vlc_input_item.h:537
#define VLC_USED
Definition: fourcc_gen.c:32
static void on_subtree_added(input_item_t *media, input_item_node_t *subtree, void *userdata)
Definition: preparse.c:80
This file is the interface definition for events (implementation in src/misc/events.c)