
Functions | |
| static void | input_item_subitem_added (const vlc_event_t *p_event, void *user_data) |
| static void | input_item_meta_changed (const vlc_event_t *p_event, void *user_data) |
| static void | input_item_duration_changed (const vlc_event_t *p_event, void *user_data) |
| static void | input_item_preparsed_changed (const vlc_event_t *p_event, void *user_data) |
| static void | install_input_item_observer (libvlc_media_t *p_md) |
| static void | uninstall_input_item_observer (libvlc_media_t *p_md) |
| libvlc_media_t * | libvlc_media_new_from_input_item (libvlc_instance_t *p_instance, input_item_t *p_input_item) |
| libvlc_media_t * | libvlc_media_new_location (libvlc_instance_t *p_instance, const char *psz_mrl) |
| Create a media with a certain given media resource location, for instance a valid URL. | |
| libvlc_media_t * | libvlc_media_new_path (libvlc_instance_t *p_instance, const char *path) |
| Create a media for a certain file path. | |
| libvlc_media_t * | libvlc_media_new_fd (libvlc_instance_t *p_instance, int fd) |
| Create a media for an already open file descriptor. | |
| libvlc_media_t * | libvlc_media_new_as_node (libvlc_instance_t *p_instance, const char *psz_name) |
| Create a media as an empty node with a given name. | |
| void | libvlc_media_add_option (libvlc_media_t *p_md, const char *psz_option) |
| Add an option to the media. | |
| void | libvlc_media_add_option_flag (libvlc_media_t *p_md, const char *ppsz_option, unsigned i_flags) |
| Add an option to the media with configurable flags. | |
| void | libvlc_media_release (libvlc_media_t *p_md) |
| Decrement the reference count of a media descriptor object. | |
| void | libvlc_media_retain (libvlc_media_t *p_md) |
| Retain a reference to a media descriptor object (libvlc_media_t). | |
| libvlc_media_t * | libvlc_media_duplicate (libvlc_media_t *p_md_orig) |
| Duplicate a media descriptor object. | |
| char * | libvlc_media_get_mrl (libvlc_media_t *p_md) |
| Get the media resource locator (mrl) from a media descriptor object. | |
| char * | libvlc_media_get_meta (libvlc_media_t *p_md, libvlc_meta_t e_meta) |
| Read the meta of the media. | |
| void | libvlc_media_set_meta (libvlc_media_t *p_md, libvlc_meta_t e_meta, const char *psz_value) |
| Set the meta of the media (this function will not save the meta, call libvlc_media_save_meta in order to save the meta). | |
| int | libvlc_media_save_meta (libvlc_media_t *p_md) |
| Save the meta previously set. | |
| libvlc_state_t | libvlc_media_get_state (libvlc_media_t *p_md) |
| Get current state of media descriptor object. | |
| void | libvlc_media_set_state (libvlc_media_t *p_md, libvlc_state_t state) |
| libvlc_media_list_t * | libvlc_media_subitems (libvlc_media_t *p_md) |
| int | libvlc_media_get_stats (libvlc_media_t *p_md, libvlc_media_stats_t *p_stats) |
| Get the current statistics about the media. | |
| libvlc_event_manager_t * | libvlc_media_event_manager (libvlc_media_t *p_md) |
| Get event manager from media descriptor object. | |
| int64_t | libvlc_media_get_duration (libvlc_media_t *p_md) |
| Get duration (in ms) of media descriptor object item. | |
| static int | media_parse (libvlc_media_t *media) |
| void | libvlc_media_parse (libvlc_media_t *media) |
| Parse a media. | |
| void | libvlc_media_parse_async (libvlc_media_t *media) |
| Parse a media. | |
| int | libvlc_media_is_parsed (libvlc_media_t *media) |
| Get Parsed status for media descriptor object. | |
| void | libvlc_media_set_user_data (libvlc_media_t *p_md, void *p_new_user_data) |
| Sets media descriptor's user_data. | |
| void * | libvlc_media_get_user_data (libvlc_media_t *p_md) |
| Get media descriptor's user_data. | |
| int | libvlc_media_get_tracks_info (libvlc_media_t *p_md, libvlc_media_track_info_t **pp_es) |
| Get media descriptor's elementary streams description. | |
Variables | |
| static const vlc_meta_type_t | libvlc_to_vlc_meta [] |
| static const libvlc_meta_t | vlc_to_libvlc_meta [] |
| static void input_item_duration_changed | ( | const vlc_event_t * | p_event, | |
| void * | user_data | |||
| ) | [static] |
| static void input_item_meta_changed | ( | const vlc_event_t * | p_event, | |
| void * | user_data | |||
| ) | [static] |
| static void input_item_preparsed_changed | ( | const vlc_event_t * | p_event, | |
| void * | user_data | |||
| ) | [static] |
References vlc_event_t::vlc_event_type_specific::input_item_preparsed_changed, libvlc_media_t::is_parsed, libvlc_event_send(), libvlc_media_t::p_event_manager, libvlc_media_t::parsed_cond, libvlc_media_t::parsed_lock, vlc_event_t::u, vlc_cond_broadcast(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by install_input_item_observer(), and uninstall_input_item_observer().
| static void input_item_subitem_added | ( | const vlc_event_t * | p_event, | |
| void * | user_data | |||
| ) | [static] |
References vlc_event_t::vlc_event_type_specific::input_item_subitem_added, libvlc_event_send(), libvlc_media_list_add_media(), libvlc_media_list_new(), libvlc_media_list_set_media(), libvlc_media_new_from_input_item(), libvlc_media_release(), libvlc_media_t::p_event_manager, libvlc_media_t::p_libvlc_instance, libvlc_media_t::p_subitems, and vlc_event_t::u.
Referenced by install_input_item_observer(), and uninstall_input_item_observer().
| static void install_input_item_observer | ( | libvlc_media_t * | p_md | ) | [static] |
References input_item_t::event_manager, input_item_duration_changed(), input_item_meta_changed(), input_item_preparsed_changed(), input_item_subitem_added(), libvlc_media_t::p_input_item, vlc_event_attach(), vlc_InputItemDurationChanged, vlc_InputItemMetaChanged, vlc_InputItemPreparsedChanged, and vlc_InputItemSubItemAdded.
Referenced by libvlc_media_new_from_input_item().
| libvlc_media_t* libvlc_media_new_from_input_item | ( | libvlc_instance_t * | p_instance, | |
| input_item_t * | p_input_item | |||
| ) |
References libvlc_media_t::i_refcount, install_input_item_observer(), libvlc_event_manager_new(), libvlc_event_manager_register_event_type(), libvlc_MediaDurationChanged, libvlc_MediaFreed, libvlc_MediaMetaChanged, libvlc_MediaParsedChanged, libvlc_MediaStateChanged, libvlc_MediaSubItemAdded, libvlc_printerr(), libvlc_media_t::p_event_manager, libvlc_media_t::p_input_item, libvlc_media_t::p_libvlc_instance, libvlc_media_t::p_subitems, libvlc_media_t::parsed_cond, libvlc_media_t::parsed_lock, libvlc_media_t::state, unlikely, vlc_cond_init(), vlc_gc_incref, and vlc_mutex_init().
Referenced by input_item_subitem_added(), libvlc_media_duplicate(), libvlc_media_list_add_file_content(), libvlc_media_new_as_node(), libvlc_media_new_location(), and services_discovery_item_added().
| void libvlc_media_set_state | ( | libvlc_media_t * | p_md, | |
| libvlc_state_t | state | |||
| ) |
References libvlc_event_send(), libvlc_media_t::p_event_manager, and libvlc_media_t::state.
Referenced by set_state().
| static int media_parse | ( | libvlc_media_t * | media | ) | [static] |
| static void uninstall_input_item_observer | ( | libvlc_media_t * | p_md | ) | [static] |
References input_item_t::event_manager, input_item_duration_changed(), input_item_meta_changed(), input_item_preparsed_changed(), input_item_subitem_added(), libvlc_media_t::p_input_item, vlc_event_detach(), vlc_InputItemDurationChanged, vlc_InputItemMetaChanged, vlc_InputItemPreparsedChanged, and vlc_InputItemSubItemAdded.
Referenced by libvlc_media_release().
const vlc_meta_type_t libvlc_to_vlc_meta[] [static] |
{
[libvlc_meta_Title] = vlc_meta_Title,
[libvlc_meta_Artist] = vlc_meta_Artist,
[libvlc_meta_Genre] = vlc_meta_Genre,
[libvlc_meta_Copyright] = vlc_meta_Copyright,
[libvlc_meta_Album] = vlc_meta_Album,
[libvlc_meta_TrackNumber] = vlc_meta_TrackNumber,
[libvlc_meta_Description] = vlc_meta_Description,
[libvlc_meta_Rating] = vlc_meta_Rating,
[libvlc_meta_Date] = vlc_meta_Date,
[libvlc_meta_Setting] = vlc_meta_Setting,
[libvlc_meta_URL] = vlc_meta_URL,
[libvlc_meta_Language] = vlc_meta_Language,
[libvlc_meta_NowPlaying] = vlc_meta_NowPlaying,
[libvlc_meta_Publisher] = vlc_meta_Publisher,
[libvlc_meta_EncodedBy] = vlc_meta_EncodedBy,
[libvlc_meta_ArtworkURL] = vlc_meta_ArtworkURL,
[libvlc_meta_TrackID] = vlc_meta_TrackID
}
Referenced by libvlc_media_get_meta(), and libvlc_media_set_meta().
const libvlc_meta_t vlc_to_libvlc_meta[] [static] |
{
[vlc_meta_Title] = libvlc_meta_Title,
[vlc_meta_Artist] = libvlc_meta_Artist,
[vlc_meta_Genre] = libvlc_meta_Genre,
[vlc_meta_Copyright] = libvlc_meta_Copyright,
[vlc_meta_Album] = libvlc_meta_Album,
[vlc_meta_TrackNumber] = libvlc_meta_TrackNumber,
[vlc_meta_Description] = libvlc_meta_Description,
[vlc_meta_Rating] = libvlc_meta_Rating,
[vlc_meta_Date] = libvlc_meta_Date,
[vlc_meta_Setting] = libvlc_meta_Setting,
[vlc_meta_URL] = libvlc_meta_URL,
[vlc_meta_Language] = libvlc_meta_Language,
[vlc_meta_NowPlaying] = libvlc_meta_NowPlaying,
[vlc_meta_Publisher] = libvlc_meta_Publisher,
[vlc_meta_EncodedBy] = libvlc_meta_EncodedBy,
[vlc_meta_ArtworkURL] = libvlc_meta_ArtworkURL,
[vlc_meta_TrackID] = libvlc_meta_TrackID
}
Referenced by input_item_meta_changed().
1.7.1