| VLC
    3.0.18
    | 

Go to the source code of this file.
| Data Structures | |
| struct | info_t | 
| struct | info_category_t | 
| struct | input_item_t | 
| Describes an input and is used to spawn input_thread_t objects.  More... | |
| struct | input_item_slave | 
| struct | input_item_node_t | 
| struct | input_stats_t | 
| struct | vlc_readdir_helper | 
| Access pf_readdir helper struct.  More... | |
| Typedefs | |
| typedef struct input_item_opaque | input_item_opaque_t | 
| typedef struct input_item_slave | input_item_slave_t | 
| typedef enum input_item_meta_request_option_t | input_item_meta_request_option_t | 
| Enumerations | |
| enum | input_item_type_e { ITEM_TYPE_UNKNOWN, ITEM_TYPE_FILE, ITEM_TYPE_DIRECTORY, ITEM_TYPE_DISC, ITEM_TYPE_CARD, ITEM_TYPE_STREAM, ITEM_TYPE_PLAYLIST, ITEM_TYPE_NODE, ITEM_TYPE_NUMBER } | 
| enum | input_item_net_type { ITEM_NET_UNKNOWN, ITEM_NET, ITEM_LOCAL } | 
| enum | slave_type { SLAVE_TYPE_SPU, SLAVE_TYPE_AUDIO } | 
| enum | slave_priority { SLAVE_PRIORITY_MATCH_NONE = 1, SLAVE_PRIORITY_MATCH_RIGHT, SLAVE_PRIORITY_MATCH_LEFT, SLAVE_PRIORITY_MATCH_ALL, SLAVE_PRIORITY_USER } | 
| enum | input_item_option_e { VLC_INPUT_OPTION_TRUSTED = 0x2, VLC_INPUT_OPTION_UNIQUE = 0x100 } | 
| Option flags.  More... | |
| enum | input_item_meta_request_option_t { META_REQUEST_OPTION_NONE = 0x00, META_REQUEST_OPTION_SCOPE_LOCAL = 0x01, META_REQUEST_OPTION_SCOPE_NETWORK = 0x02, META_REQUEST_OPTION_SCOPE_ANY = 0x03, META_REQUEST_OPTION_DO_INTERACT = 0x04 } | 
| enum | input_item_preparse_status { ITEM_PREPARSE_SKIPPED, ITEM_PREPARSE_FAILED, ITEM_PREPARSE_TIMEOUT, ITEM_PREPARSE_DONE } | 
| Functions | |
| void | input_item_CopyOptions (input_item_t *p_child, input_item_t *p_parent) | 
| void | input_item_SetName (input_item_t *p_item, const char *psz_name) | 
| input_item_node_t * | input_item_node_Create (input_item_t *p_input) | 
| Start adding multiple subitems.  More... | |
| input_item_node_t * | input_item_node_AppendItem (input_item_node_t *p_node, input_item_t *p_item) | 
| Add a new child node to this parent node that will point to this subitem.  More... | |
| void | input_item_node_AppendNode (input_item_node_t *p_parent, input_item_node_t *p_child) | 
| Add an already created node to children of this parent node.  More... | |
| void | input_item_node_RemoveNode (input_item_node_t *parent, input_item_node_t *child) | 
| Remove a node from its parent.  More... | |
| void | input_item_node_Delete (input_item_node_t *p_node) | 
| Delete a node created with input_item_node_Create() and all its children.  More... | |
| int | input_item_AddOption (input_item_t *, const char *, unsigned i_flags) | 
| This function allows to add an option to an existing input_item_t.  More... | |
| int | input_item_AddOptions (input_item_t *, int i_options, const char *const *ppsz_options, unsigned i_flags) | 
| This function add several options to an existing input_item_t.  More... | |
| int | input_item_AddOpaque (input_item_t *, const char *, void *) | 
| void | input_item_ApplyOptions (vlc_object_t *, input_item_t *) | 
| bool | input_item_slave_GetType (const char *, enum slave_type *) | 
| input_item_slave_t * | input_item_slave_New (const char *, enum slave_type, enum slave_priority) | 
| int | input_item_AddSlave (input_item_t *, input_item_slave_t *) | 
| This function allows adding a slave to an existing input item.  More... | |
| bool | input_item_HasErrorWhenReading (input_item_t *) | 
| void | input_item_SetMeta (input_item_t *, vlc_meta_type_t meta_type, const char *psz_val) | 
| bool | input_item_MetaMatch (input_item_t *p_i, vlc_meta_type_t meta_type, const char *psz) | 
| char * | input_item_GetMeta (input_item_t *p_i, vlc_meta_type_t meta_type) | 
| char * | input_item_GetName (input_item_t *p_i) | 
| char * | input_item_GetTitleFbName (input_item_t *p_i) | 
| char * | input_item_GetURI (input_item_t *p_i) | 
| char * | input_item_GetNowPlayingFb (input_item_t *p_item) | 
| void | input_item_SetURI (input_item_t *p_i, const char *psz_uri) | 
| mtime_t | input_item_GetDuration (input_item_t *p_i) | 
| void | input_item_SetDuration (input_item_t *p_i, mtime_t i_duration) | 
| bool | input_item_IsPreparsed (input_item_t *p_i) | 
| bool | input_item_IsArtFetched (input_item_t *p_i) | 
| static void | input_item_SetTitle (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetTitle (input_item_t *p_input) | 
| static void | input_item_SetArtist (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetArtist (input_item_t *p_input) | 
| static void | input_item_SetAlbumArtist (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetAlbumArtist (input_item_t *p_input) | 
| static void | input_item_SetGenre (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetGenre (input_item_t *p_input) | 
| static void | input_item_SetCopyright (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetCopyright (input_item_t *p_input) | 
| static void | input_item_SetAlbum (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetAlbum (input_item_t *p_input) | 
| static void | input_item_SetTrackNumber (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetTrackNumber (input_item_t *p_input) | 
| static void | input_item_SetDescription (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetDescription (input_item_t *p_input) | 
| static void | input_item_SetRating (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetRating (input_item_t *p_input) | 
| static void | input_item_SetDate (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetDate (input_item_t *p_input) | 
| static void | input_item_SetSetting (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetSetting (input_item_t *p_input) | 
| static void | input_item_SetURL (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetURL (input_item_t *p_input) | 
| static void | input_item_SetLanguage (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetLanguage (input_item_t *p_input) | 
| static void | input_item_SetNowPlaying (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetNowPlaying (input_item_t *p_input) | 
| static void | input_item_SetESNowPlaying (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetESNowPlaying (input_item_t *p_input) | 
| static void | input_item_SetPublisher (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetPublisher (input_item_t *p_input) | 
| static void | input_item_SetEncodedBy (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetEncodedBy (input_item_t *p_input) | 
| static void | input_item_SetArtworkURL (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetArtworkURL (input_item_t *p_input) | 
| static void | input_item_SetTrackID (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetTrackID (input_item_t *p_input) | 
| static void | input_item_SetTrackTotal (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetTrackTotal (input_item_t *p_input) | 
| static void | input_item_SetDirector (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetDirector (input_item_t *p_input) | 
| static void | input_item_SetSeason (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetSeason (input_item_t *p_input) | 
| static void | input_item_SetEpisode (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetEpisode (input_item_t *p_input) | 
| static void | input_item_SetShowName (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetShowName (input_item_t *p_input) | 
| static void | input_item_SetActors (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetActors (input_item_t *p_input) | 
| static void | input_item_SetDiscNumber (input_item_t *p_input, const char *val) | 
| static char * | input_item_GetDiscNumber (input_item_t *p_input) | 
| char * | input_item_GetInfo (input_item_t *p_i, const char *psz_cat, const char *psz_name) | 
| Get a info item from a given category in a given input item.  More... | |
| int | input_item_AddInfo (input_item_t *p_i, const char *psz_cat, const char *psz_name, const char *psz_format,...) | 
| int | input_item_DelInfo (input_item_t *p_i, const char *psz_cat, const char *psz_name) | 
| void | input_item_ReplaceInfos (input_item_t *, info_category_t *) | 
| void | input_item_MergeInfos (input_item_t *, info_category_t *) | 
| input_item_t * | input_item_NewExt (const char *psz_uri, const char *psz_name, mtime_t i_duration, int i_type, enum input_item_net_type i_net) | 
| This function creates a new input_item_t with the provided information.  More... | |
| input_item_t * | input_item_Copy (input_item_t *) | 
| This function creates a new input_item_t as a copy of another.  More... | |
| input_item_t * | input_item_Hold (input_item_t *) | 
| Holds an input item, i.e.  More... | |
| void | input_item_Release (input_item_t *) | 
| Releases an input item, i.e.  More... | |
| int | libvlc_MetadataRequest (libvlc_int_t *, input_item_t *, input_item_meta_request_option_t, int, void *) | 
| Requests extraction of the meta data for an input item (a.k.a.  More... | |
| int | libvlc_ArtRequest (libvlc_int_t *, input_item_t *, input_item_meta_request_option_t) | 
| Requests retrieving/downloading art for an input item.  More... | |
| void | libvlc_MetadataCancel (libvlc_int_t *, void *) | 
| Cancels extraction of the meta data for an input item.  More... | |
| void | vlc_readdir_helper_init (struct vlc_readdir_helper *p_rdh, vlc_object_t *p_obj, input_item_node_t *p_node) | 
| Init a vlc_readdir_helper struct.  More... | |
| void | vlc_readdir_helper_finish (struct vlc_readdir_helper *p_rdh, bool b_success) | 
| Finish adding items to the node.  More... | |
| int | vlc_readdir_helper_additem (struct vlc_readdir_helper *p_rdh, const char *psz_uri, const char *psz_flatpath, const char *psz_filename, int i_type, int i_net) | 
| Add a new input_item_t entry to the node of the vlc_readdir_helper struct.  More... | |
This file defines functions, structures and enums for input items in vlc
| #define input_item_GetArtURL input_item_GetArtworkURL | 
| #define input_item_GetTrackNum input_item_GetTrackNumber | 
| #define input_item_New | ( | psz_uri, | |
| psz_name | |||
| ) | input_item_NewExt( psz_uri, psz_name, -1, ITEM_TYPE_UNKNOWN, ITEM_NET_UNKNOWN ) | 
| #define input_item_NewCard | ( | psz_uri, | |
| psz_name | |||
| ) | input_item_NewExt( psz_uri, psz_name, -1, ITEM_TYPE_CARD, ITEM_LOCAL ) | 
| #define input_item_NewDirectory | ( | psz_uri, | |
| psz_name, | |||
| i_net | |||
| ) | input_item_NewExt( psz_uri, psz_name, -1, ITEM_TYPE_DIRECTORY, i_net ) | 
| #define input_item_NewDisc | ( | psz_uri, | |
| psz_name, | |||
| i_duration | |||
| ) | input_item_NewExt( psz_uri, psz_name, i_duration, ITEM_TYPE_DISC, ITEM_LOCAL ) | 
| #define input_item_NewFile | ( | psz_uri, | |
| psz_name, | |||
| i_duration, | |||
| i_net | |||
| ) | input_item_NewExt( psz_uri, psz_name, i_duration, ITEM_TYPE_FILE, i_net ) | 
| #define input_item_NewStream | ( | psz_uri, | |
| psz_name, | |||
| i_duration | |||
| ) | input_item_NewExt( psz_uri, psz_name, i_duration, ITEM_TYPE_STREAM, ITEM_NET ) | 
| #define input_item_SetArtURL input_item_SetArtworkURL | 
| #define input_item_SetTrackNum input_item_SetTrackNumber | 
| #define input_item_slave_Delete | ( | p_slave | ) | free(p_slave) | 
| #define INPUT_META | ( | name | ) | 
| #define MASTER_EXTENSIONS | 
| #define SLAVE_AUDIO_EXTENSIONS | 
| #define SLAVE_SPU_EXTENSIONS | 
| #define vlc_readdir_helper_init | ( | p_rdh, | |
| p_obj, | |||
| p_node | |||
| ) | vlc_readdir_helper_init(p_rdh, VLC_OBJECT(p_obj), p_node) | 
| typedef struct input_item_opaque input_item_opaque_t | 
| typedef struct input_item_slave input_item_slave_t | 
| enum input_item_net_type | 
| enum input_item_option_e | 
| enum input_item_type_e | 
| enum slave_priority | 
| enum slave_type | 
| int input_item_AddInfo | ( | input_item_t * | p_i, | 
| const char * | psz_cat, | ||
| const char * | psz_name, | ||
| const char * | psz_format, | ||
| ... | |||
| ) | 
References input_item_t::event_manager, InputItemVaAddInfo(), input_item_t::lock, psz_name, vlc_event_send(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_vaControl().
| int input_item_AddOpaque | ( | input_item_t * | , | 
| const char * | , | ||
| void * | |||
| ) | 
< Not enough memory
< No error
References input_item_t::lock, name, input_item_t::opaques, unlikely, input_item_opaque::value, VLC_ENOMEM, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_SUCCESS.
| int input_item_AddOption | ( | input_item_t * | , | 
| const char * | , | ||
| unsigned | i_flags | ||
| ) | 
This function allows to add an option to an existing input_item_t.
< No error
< Unspecified error
< Not enough memory
< Not enough memory
References input_item_t::i_options, input_item_t::lock, input_item_t::optflagc, input_item_t::optflagv, input_item_t::ppsz_options, strdup(), TAB_APPEND, unlikely, VLC_EGENERIC, VLC_ENOMEM, VLC_INPUT_OPTION_UNIQUE, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_SUCCESS.
Referenced by input_item_AddOptions(), and UpdateBookmarksOption().
| int input_item_AddOptions | ( | input_item_t * | , | 
| int | i_options, | ||
| const char *const * | ppsz_options, | ||
| unsigned | i_flags | ||
| ) | 
This function add several options to an existing input_item_t.
< No error
< No error
References input_item_AddOption(), and VLC_SUCCESS.
Referenced by intf_InsertItem(), and playlist_AddExt().
| int input_item_AddSlave | ( | input_item_t * | , | 
| input_item_slave_t * | |||
| ) | 
This function allows adding a slave to an existing input item.
The slave is owned by the input item after this call.
< Unspecified error
< No error
References input_item_slave::i_priority, input_item_t::i_slaves, input_item_t::lock, input_item_t::pp_slaves, SLAVE_PRIORITY_MATCH_NONE, TAB_APPEND, VLC_EGENERIC, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_SUCCESS.
Referenced by rdh_attach_slaves().
| void input_item_ApplyOptions | ( | vlc_object_t * | , | 
| input_item_t * | |||
| ) | 
References input_item_t::i_options, input_item_t::lock, input_item_opaque::next, input_item_t::opaques, input_item_t::optflagc, input_item_t::optflagv, input_item_t::ppsz_options, var_Create, var_OptionParse(), var_SetAddress, VLC_INPUT_OPTION_TRUSTED, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_VAR_ADDRESS.
Referenced by Create(), and vlc_readdir_helper_init().
| input_item_t* input_item_Copy | ( | input_item_t * | ) | 
This function creates a new input_item_t as a copy of another.
References input_item_t::b_net, input_item_t::i_duration, input_item_t::i_type, input_item_CopyOptions(), input_item_NewExt(), ITEM_NET_UNKNOWN, likely, input_item_t::lock, input_item_t::p_meta, input_item_t::psz_name, input_item_t::psz_uri, vlc_meta_Merge(), vlc_meta_New(), vlc_mutex_lock(), and vlc_mutex_unlock().
| void input_item_CopyOptions | ( | input_item_t * | p_child, | 
| input_item_t * | p_parent | ||
| ) | 
References input_item_t::i_options, likely, input_item_t::lock, input_item_t::optflagc, input_item_t::optflagv, input_item_t::ppsz_options, strdup(), unlikely, vlc_alloc(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_item_Copy(), rdh_unflatten(), and vlc_readdir_helper_additem().
| int input_item_DelInfo | ( | input_item_t * | p_i, | 
| const char * | psz_cat, | ||
| const char * | psz_name | ||
| ) | 
< Unspecified error
< Unspecified error
< No error
References input_item_t::event_manager, input_item_t::i_categories, info_category_Delete(), info_category_DeleteInfo(), InputItemFindCat(), input_item_t::lock, input_item_t::pp_categories, psz_name, TAB_ERASE, VLC_EGENERIC, vlc_event_send(), vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_SUCCESS.
Referenced by input_item_SetEpg(), input_item_SetEpgOffline(), and input_vaControl().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| mtime_t input_item_GetDuration | ( | input_item_t * | p_i | ) | 
References input_item_t::i_duration, input_item_t::lock, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by proto_SORT_DURATION().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| char* input_item_GetInfo | ( | input_item_t * | p_i, | 
| const char * | psz_cat, | ||
| const char * | psz_name | ||
| ) | 
Get a info item from a given category in a given input item.
| p_i | The input item to get info from | 
| psz_cat | String representing the category for the info | 
| psz_name | String representing the name of the desired info | 
References info_category_FindInfo(), InputItemFindCat(), input_item_t::lock, psz_name, info_t::psz_value, strdup(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by playlist_FindArtInCacheUsingItemUID(), and playlist_SaveArt().
| 
 | inlinestatic | 
| char* input_item_GetMeta | ( | input_item_t * | p_i, | 
| vlc_meta_type_t | meta_type | ||
| ) | 
References input_item_t::lock, input_item_t::p_meta, strdup(), vlc_meta_Get(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_item_GetNowPlayingFb(), meta_sort(), and vout_OSDEpg().
| char* input_item_GetName | ( | input_item_t * | p_i | ) | 
References input_item_t::lock, input_item_t::psz_name, psz_name, strdup(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by Create(), and input_Destructor().
| 
 | inlinestatic | 
| char* input_item_GetNowPlayingFb | ( | input_item_t * | p_item | ) | 
References input_item_GetMeta(), vlc_meta_ESNowPlaying, and vlc_meta_NowPlaying.
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| char* input_item_GetTitleFbName | ( | input_item_t * | p_i | ) | 
References EMPTY_STR, input_item_t::lock, input_item_t::p_meta, input_item_t::psz_name, strdup(), vlc_meta_Get(), vlc_meta_Title, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by meta_strcasecmp_title(), and proto_SORT_TITLE_NUMERIC().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| char* input_item_GetURI | ( | input_item_t * | p_i | ) | 
References input_item_t::lock, input_item_t::psz_uri, strdup(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_item_WriteMeta(), and proto_SORT_URI().
| 
 | inlinestatic | 
| bool input_item_HasErrorWhenReading | ( | input_item_t * | ) | 
References input_item_t::b_error_when_reading, input_item_t::lock, vlc_mutex_lock(), and vlc_mutex_unlock().
| input_item_t* input_item_Hold | ( | input_item_t * | ) | 
Holds an input item, i.e.
creates a new reference.
References item_owner, and input_item_owner::refs.
Referenced by Create(), fingerprint_request_New(), input_item_node_Create(), playlist_fetcher_Push(), and playlist_ItemNewFromInput().
| bool input_item_IsArtFetched | ( | input_item_t * | p_i | ) | 
References ITEM_ART_FETCHED, input_item_t::lock, input_item_t::p_meta, vlc_meta_GetStatus(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_ExtractAttachmentAndCacheArt().
| bool input_item_IsPreparsed | ( | input_item_t * | p_i | ) | 
| void input_item_MergeInfos | ( | input_item_t * | , | 
| info_category_t * | |||
| ) | 
References input_item_t::event_manager, input_item_t::i_categories, info_category_t::i_infos, info_category_Delete(), info_category_ReplaceInfo(), InputItemFindCat(), input_item_t::lock, input_item_t::pp_categories, info_category_t::pp_infos, info_category_t::psz_name, TAB_APPEND, TAB_CLEAN, vlc_event_send(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by input_vaControl().
| bool input_item_MetaMatch | ( | input_item_t * | p_i, | 
| vlc_meta_type_t | meta_type, | ||
| const char * | psz | ||
| ) | 
References input_item_t::lock, input_item_t::p_meta, strcasestr(), vlc_meta_Get(), vlc_mutex_lock(), and vlc_mutex_unlock().
| input_item_t* input_item_NewExt | ( | const char * | psz_uri, | 
| const char * | psz_name, | ||
| mtime_t | i_duration, | ||
| int | i_type, | ||
| enum input_item_net_type | i_net | ||
| ) | 
This function creates a new input_item_t with the provided information.
XXX You may also use input_item_New, as they need less arguments.
References input_item_t::b_error_when_reading, input_item_t::b_net, input_item_t::es, input_item_t::event_manager, input_item_t::i_categories, input_item_t::i_duration, input_item_t::i_epg, input_item_t::i_es, input_item_t::i_options, input_item_t::i_slaves, input_item_t::i_type, input_item_SetName(), input_item_SetURI(), input_item_owner::item, ITEM_NET, ITEM_NET_UNKNOWN, ITEM_TYPE_UNKNOWN, input_item_t::lock, input_item_t::opaques, input_item_t::optflagc, input_item_t::optflagv, input_item_t::p_meta, input_item_t::p_stats, input_item_t::pp_categories, input_item_t::pp_epg, input_item_t::pp_slaves, input_item_t::ppsz_options, input_item_t::psz_name, psz_name, input_item_t::psz_uri, input_item_owner::refs, TAB_INIT, unlikely, vlc_event_manager_init(), and vlc_mutex_init().
Referenced by input_item_Copy(), playlist_NodeCreate(), rdh_unflatten(), and vlc_readdir_helper_additem().
| input_item_node_t* input_item_node_AppendItem | ( | input_item_node_t * | p_node, | 
| input_item_t * | p_item | ||
| ) | 
Add a new child node to this parent node that will point to this subitem.
References input_item_t::i_preparse_depth, input_item_node_AppendNode(), input_item_node_Create(), input_item_t::lock, input_item_node_t::p_item, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by rdh_unflatten(), and vlc_readdir_helper_additem().
| void input_item_node_AppendNode | ( | input_item_node_t * | p_parent, | 
| input_item_node_t * | p_child | ||
| ) | 
Add an already created node to children of this parent node.
References input_item_node_t::i_children, input_item_node_t::pp_children, and TAB_APPEND.
Referenced by input_item_node_AppendItem().
| input_item_node_t* input_item_node_Create | ( | input_item_t * | p_input | ) | 
Start adding multiple subitems.
Create a root node to hold a tree of subitems for given item
References input_item_node_t::i_children, input_item_Hold(), input_item_node_t::p_item, and input_item_node_t::pp_children.
Referenced by input_item_node_AppendItem().
| void input_item_node_Delete | ( | input_item_node_t * | p_node | ) | 
Delete a node created with input_item_node_Create() and all its children.
References input_item_node_t::i_children, input_item_node_Delete(), input_item_Release(), input_item_node_t::p_item, and input_item_node_t::pp_children.
Referenced by input_item_node_Delete(), input_item_node_PostAndDelete(), and rdh_attach_slaves().
| void input_item_node_RemoveNode | ( | input_item_node_t * | parent, | 
| input_item_node_t * | child | ||
| ) | 
Remove a node from its parent.
References input_item_node_t::i_children, input_item_node_t::pp_children, and TAB_REMOVE.
Referenced by rdh_attach_slaves().
| void input_item_Release | ( | input_item_t * | ) | 
Releases an input item, i.e.
decrements its reference counter.
References input_item_t::es, es_format_Clean(), input_item_t::event_manager, input_item_t::i_categories, input_item_t::i_epg, input_item_t::i_es, input_item_t::i_options, input_item_t::i_slaves, info_category_Delete(), input_item_slave_Delete, item_owner, input_item_t::lock, input_stats_t::lock, input_item_opaque::next, input_item_t::opaques, input_item_t::optflagv, input_item_t::p_meta, input_item_t::p_stats, input_item_t::pp_categories, input_item_t::pp_epg, input_item_t::pp_slaves, input_item_t::ppsz_options, input_item_t::psz_name, input_item_t::psz_uri, input_item_owner::refs, TAB_CLEAN, vlc_epg_Delete(), vlc_event_manager_fini(), vlc_meta_Delete(), and vlc_mutex_destroy().
Referenced by fingerprint_request_Delete(), input_Destructor(), input_item_node_Delete(), InputItemHold(), intf_InsertItem(), playlist_AddExt(), playlist_ItemRelease(), playlist_NodeCreate(), rdh_unflatten(), RequestRelease(), and vlc_readdir_helper_additem().
| void input_item_ReplaceInfos | ( | input_item_t * | , | 
| info_category_t * | |||
| ) | 
Referenced by input_vaControl().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| void input_item_SetDuration | ( | input_item_t * | p_i, | 
| mtime_t | i_duration | ||
| ) | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
Referenced by Create(), and EsOutProgramSelect().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| void input_item_SetMeta | ( | input_item_t * | , | 
| vlc_meta_type_t | meta_type, | ||
| const char * | psz_val | ||
| ) | 
| void input_item_SetName | ( | input_item_t * | p_item, | 
| const char * | psz_name | ||
| ) | 
Referenced by input_item_NewExt().
| 
 | inlinestatic | 
Referenced by Create().
| 
 | inlinestatic | 
Referenced by EsOutProgramSelect().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
Referenced by EsOutProgramSelect().
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| 
 | inlinestatic | 
| void input_item_SetURI | ( | input_item_t * | p_i, | 
| const char * | psz_uri | ||
| ) | 
References asprintf(), input_item_t::b_net, EnsureUTF8(), GuessType(), vlc_url_t::i_port, input_item_t::i_type, ITEM_TYPE_DIRECTORY, ITEM_TYPE_FILE, input_item_t::lock, vlc_url_t::psz_host, input_item_t::psz_name, vlc_url_t::psz_path, vlc_url_t::psz_protocol, input_item_t::psz_uri, strdup(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_uri_decode(), vlc_UrlClean(), and vlc_UrlParse().
Referenced by input_item_NewExt().
| 
 | inlinestatic | 
| bool input_item_slave_GetType | ( | const char * | , | 
| enum slave_type * | |||
| ) | 
References ARRAY_SIZE, bsearch_strcmp_cb(), i_type, psz_ext, SLAVE_AUDIO_EXTENSIONS, SLAVE_SPU_EXTENSIONS, SLAVE_TYPE_AUDIO, and SLAVE_TYPE_SPU.
Referenced by rdh_attach_slaves(), and vlc_readdir_helper_additem().
| input_item_slave_t* input_item_slave_New | ( | const char * | , | 
| enum | slave_type, | ||
| enum | slave_priority | ||
| ) | 
References input_item_slave::b_forced, input_item_slave::i_priority, input_item_slave::i_type, i_type, and input_item_slave::psz_uri.
Referenced by input_vaControl(), rdh_attach_slaves(), subtitles_Detect(), and vlc_readdir_helper_additem().
| int libvlc_ArtRequest | ( | libvlc_int_t * | libvlc, | 
| input_item_t * | item, | ||
| input_item_meta_request_option_t | i_options | ||
| ) | 
Requests retrieving/downloading art for an input item.
The retrieval is performed asynchronously.
< Not enough memory
< No error
References libvlc_priv(), libvlc_priv_t::parser, playlist_preparser_fetcher_Push(), unlikely, VLC_ENOMEM, and VLC_SUCCESS.
Referenced by PlayItem().
| void libvlc_MetadataCancel | ( | libvlc_int_t * | libvlc, | 
| void * | id | ||
| ) | 
Cancels extraction of the meta data for an input item.
This does nothing if the input item is already processed or if it was not added with libvlc_MetadataRequest()
References libvlc_priv(), libvlc_priv_t::parser, playlist_preparser_Cancel(), and unlikely.
Referenced by PlayItem().
| int libvlc_MetadataRequest | ( | libvlc_int_t * | libvlc, | 
| input_item_t * | item, | ||
| input_item_meta_request_option_t | i_options, | ||
| int | timeout, | ||
| void * | id | ||
| ) | 
Requests extraction of the meta data for an input item (a.k.a.
preparsing). The actual extraction is asynchronous. It can be cancelled with libvlc_MetadataCancel()
< Not enough memory
< No error
References input_item_t::b_preparse_interact, input_item_t::i_preparse_depth, libvlc_priv(), input_item_t::lock, META_REQUEST_OPTION_DO_INTERACT, libvlc_priv_t::parser, playlist_preparser_Push(), unlikely, VLC_ENOMEM, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_SUCCESS.
| int vlc_readdir_helper_additem | ( | struct vlc_readdir_helper * | p_rdh, | 
| const char * | psz_uri, | ||
| const char * | psz_flatpath, | ||
| const char * | psz_filename, | ||
| int | i_type, | ||
| int | i_net | ||
| ) | 
Add a new input_item_t entry to the node of the vlc_readdir_helper struct.
| p_rdh | previously inited vlc_readdir_helper struct | 
| psz_uri | uri of the new item | 
| psz_flatpath | flattened path of the new item. If not NULL, this function will create an input item for each sub folders (separated by '/') of psz_flatpath (so, this will un-flatten the folder hierarchy). Either psz_flatpath or psz_filename must be valid. | 
| psz_filename | file name of the new item. If NULL, the file part of path will be used as a filename. Either psz_flatpath or psz_filename must be valid. | 
| i_type | see input_item_type_e | 
| i_net | see input_item_net_type | 
< Not enough memory
< Not enough memory
< No error
< No error
< Not enough memory
< Not enough memory
< No error
References vlc_readdir_helper::b_flatten, vlc_readdir_helper::i_slaves, vlc_readdir_helper::i_sub_autodetect_fuzzy, i_type, input_item_CopyOptions(), input_item_NewExt(), input_item_node_AppendItem(), input_item_Release(), input_item_slave_GetType(), input_item_slave_New(), input_item_node_t::p_item, vlc_readdir_helper::p_node, rdh_slave::p_node, rdh_slave::p_slave, vlc_readdir_helper::pp_slaves, rdh_slave::psz_filename, rdh_file_is_ignored(), rdh_unflatten(), SLAVE_PRIORITY_MATCH_NONE, strdup(), TAB_APPEND, VLC_ENOMEM, and VLC_SUCCESS.
| void vlc_readdir_helper_finish | ( | struct vlc_readdir_helper * | p_rdh, | 
| bool | b_success | ||
| ) | 
Finish adding items to the node.
| b_success | if true, items of the node will be sorted. | 
References vlc_readdir_helper::i_dirs, vlc_readdir_helper::i_slaves, input_item_slave_Delete, vlc_readdir_helper::p_node, rdh_slave::p_slave, vlc_readdir_helper::pp_dirs, vlc_readdir_helper::pp_slaves, rdh_slave::psz_filename, vlc_readdir_helper::psz_ignored_exts, rdh_attach_slaves(), rdh_sort(), and TAB_CLEAN.
| void vlc_readdir_helper_init | ( | struct vlc_readdir_helper * | p_rdh, | 
| vlc_object_t * | p_obj, | ||
| input_item_node_t * | p_node | ||
| ) | 
Init a vlc_readdir_helper struct.
| p_rdh | need to be cleaned with vlc_readdir_helper_finish() | 
| p_node | node that will be used to add items | 
References vlc_readdir_helper::b_flatten, vlc_readdir_helper::b_show_hiddenfiles, vlc_readdir_helper::i_dirs, vlc_readdir_helper::i_slaves, vlc_readdir_helper::i_sub_autodetect_fuzzy, input_item_ApplyOptions(), input_item_node_t::p_item, vlc_readdir_helper::p_node, rdh_dir::p_node, vlc_readdir_helper::pp_dirs, vlc_readdir_helper::pp_slaves, vlc_readdir_helper::psz_ignored_exts, TAB_INIT, var_InheritBool, var_InheritInteger, var_InheritString, vlc_object_create, and vlc_object_release.
 1.8.16
 1.8.16