VLC 4.0.0-dev
Loading...
Searching...
No Matches
vlc_media_source.h File Reference
Include dependency graph for vlc_media_source.h:

Go to the source code of this file.

Data Structures

struct  vlc_media_tree
 Media source API aims to manage "services discovery" easily from UI clients. More...
 
struct  vlc_media_tree_callbacks
 Callbacks to receive media tree events. More...
 
struct  vlc_media_source_t
 Media source. More...
 
struct  vlc_media_source_meta
 Structure containing the description of a media source. More...
 

Typedefs

typedef struct vlc_media_tree vlc_media_tree_t
 Media source API aims to manage "services discovery" easily from UI clients.
 
typedef struct vlc_media_tree_listener_id vlc_media_tree_listener_id
 Listener for media tree events.
 
typedef struct vlc_media_source_t vlc_media_source_t
 Media source.
 
typedef struct vlc_media_source_provider_t vlc_media_source_provider_t
 Media source provider (opaque pointer), used to get media sources.
 
typedef struct vlc_media_source_meta_list vlc_media_source_meta_list_t
 List of media source metadata (opaque).
 

Functions

vlc_media_tree_tvlc_media_tree_New (void)
 Create an empty media tree.
 
vlc_media_tree_listener_idvlc_media_tree_AddListener (vlc_media_tree_t *tree, const struct vlc_media_tree_callbacks *cbs, void *userdata, bool notify_current_state)
 Add a listener.
 
void vlc_media_tree_RemoveListener (vlc_media_tree_t *tree, vlc_media_tree_listener_id *listener)
 Remove a listener.
 
void vlc_media_tree_Hold (vlc_media_tree_t *tree)
 Increase the media tree reference count.
 
void vlc_media_tree_Release (vlc_media_tree_t *tree)
 Decrease the media tree reference count.
 
void vlc_media_tree_Lock (vlc_media_tree_t *)
 Lock the media tree (non-recursive).
 
void vlc_media_tree_Unlock (vlc_media_tree_t *)
 Unlock the media tree.
 
input_item_node_tvlc_media_tree_Add (vlc_media_tree_t *tree, input_item_node_t *parent, input_item_t *media)
 Add an item to the media tree.
 
bool vlc_media_tree_Remove (vlc_media_tree_t *tree, input_item_t *media)
 Remove an item from the media tree.
 
bool vlc_media_tree_Find (vlc_media_tree_t *tree, const input_item_t *media, input_item_node_t **result, input_item_node_t **result_parent)
 Find the node containing the requested input item (and its parent).
 
vlc_preparser_req_id vlc_media_tree_Preparse (vlc_media_tree_t *tree, vlc_preparser_t *parser, input_item_t *media)
 Preparse a media, and expand it in the media tree on subitems added.
 
void vlc_media_source_Hold (vlc_media_source_t *)
 Increase the media source reference count.
 
void vlc_media_source_Release (vlc_media_source_t *)
 Decrease the media source reference count.
 
vlc_media_source_provider_tvlc_media_source_provider_Get (libvlc_int_t *)
 Return the media source provider associated to the libvlc instance.
 
vlc_media_source_tvlc_media_source_provider_GetMediaSource (vlc_media_source_provider_t *, const char *name)
 Return the media source identified by psz_name.
 
vlc_media_source_meta_list_tvlc_media_source_provider_List (vlc_media_source_provider_t *, enum services_discovery_category_e category)
 Return the list of metadata of available media sources.
 
size_t vlc_media_source_meta_list_Count (vlc_media_source_meta_list_t *)
 Return the number of items in the list.
 
struct vlc_media_source_metavlc_media_source_meta_list_Get (vlc_media_source_meta_list_t *, size_t index)
 Return the item at index.
 
void vlc_media_source_meta_list_Delete (vlc_media_source_meta_list_t *)
 Delete the list.