|
Typedefs | |
| typedef struct libvlc_media_list_t | libvlc_media_list_t |
| typedef struct libvlc_media_list_view_t | libvlc_media_list_view_t |
Functions | |
| VLC_PUBLIC_API libvlc_media_list_t * | libvlc_media_list_new (libvlc_instance_t *, libvlc_exception_t *) |
| Create an empty media list. | |
| VLC_PUBLIC_API void | libvlc_media_list_release (libvlc_media_list_t *) |
| Release media list created with libvlc_media_list_new(). | |
| VLC_PUBLIC_API void | libvlc_media_list_retain (libvlc_media_list_t *) |
| Retain reference to a media list. | |
| VLC_DEPRECATED_API void | libvlc_media_list_add_file_content (libvlc_media_list_t *p_mlist, const char *psz_uri, libvlc_exception_t *p_e) |
| VLC_PUBLIC_API void | libvlc_media_list_set_media (libvlc_media_list_t *, libvlc_media_t *, libvlc_exception_t *) |
| Associate media instance with this media list instance. | |
| VLC_PUBLIC_API libvlc_media_t * | libvlc_media_list_media (libvlc_media_list_t *, libvlc_exception_t *) |
| Get media instance from this media list instance. | |
| VLC_PUBLIC_API void | libvlc_media_list_add_media (libvlc_media_list_t *, libvlc_media_t *, libvlc_exception_t *) |
| Add media instance to media list The libvlc_media_list_lock should be held upon entering this function. | |
| VLC_PUBLIC_API void | libvlc_media_list_insert_media (libvlc_media_list_t *, libvlc_media_t *, int, libvlc_exception_t *) |
| Insert media instance in media list on a position The libvlc_media_list_lock should be held upon entering this function. | |
| VLC_PUBLIC_API void | libvlc_media_list_remove_index (libvlc_media_list_t *, int, libvlc_exception_t *) |
| Remove media instance from media list on a position The libvlc_media_list_lock should be held upon entering this function. | |
| VLC_PUBLIC_API int | libvlc_media_list_count (libvlc_media_list_t *p_mlist, libvlc_exception_t *p_e) |
| Get count on media list items The libvlc_media_list_lock should be held upon entering this function. | |
| VLC_PUBLIC_API libvlc_media_t * | libvlc_media_list_item_at_index (libvlc_media_list_t *, int, libvlc_exception_t *) |
| List media instance in media list at a position The libvlc_media_list_lock should be held upon entering this function. | |
| VLC_PUBLIC_API int | libvlc_media_list_index_of_item (libvlc_media_list_t *, libvlc_media_t *, libvlc_exception_t *) |
| Find index position of List media instance in media list. | |
| VLC_PUBLIC_API int | libvlc_media_list_is_readonly (libvlc_media_list_t *p_mlist) |
| This indicates if this media list is read-only from a user point of view. | |
| VLC_PUBLIC_API void | libvlc_media_list_lock (libvlc_media_list_t *) |
| Get lock on media list items. | |
| VLC_PUBLIC_API void | libvlc_media_list_unlock (libvlc_media_list_t *) |
| Release lock on media list items The libvlc_media_list_lock should be held upon entering this function. | |
| VLC_PUBLIC_API libvlc_media_list_view_t * | libvlc_media_list_flat_view (libvlc_media_list_t *, libvlc_exception_t *) |
| Get a flat media list view of media list items. | |
| VLC_PUBLIC_API libvlc_media_list_view_t * | libvlc_media_list_hierarchical_view (libvlc_media_list_t *, libvlc_exception_t *) |
| Get a hierarchical media list view of media list items. | |
| VLC_PUBLIC_API libvlc_media_list_view_t * | libvlc_media_list_hierarchical_node_view (libvlc_media_list_t *p_ml, libvlc_exception_t *p_ex) |
| VLC_PUBLIC_API libvlc_event_manager_t * | libvlc_media_list_event_manager (libvlc_media_list_t *, libvlc_exception_t *) |
| Get libvlc_event_manager from this media list instance. | |
| typedef struct libvlc_media_list_t libvlc_media_list_t |
| typedef struct libvlc_media_list_view_t libvlc_media_list_view_t |
| VLC_DEPRECATED_API void libvlc_media_list_add_file_content | ( | libvlc_media_list_t * | p_mlist, | |
| const char * | psz_uri, | |||
| libvlc_exception_t * | p_e | |||
| ) |
References _, input_item_NewExt, input_Read, libvlc_exception_raise(), libvlc_exception_raised(), libvlc_media_list_add_media(), libvlc_media_new_from_input_item(), libvlc_printerr(), libvlc_media_list_t::p_libvlc_instance, libvlc_instance_t::p_libvlc_int, and vlc_gc_decref.
Referenced by libvlc_media_library_load().
| VLC_PUBLIC_API void libvlc_media_list_add_media | ( | libvlc_media_list_t * | , | |
| libvlc_media_t * | , | |||
| libvlc_exception_t * | ||||
| ) |
Add media instance to media list The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance | |
| p_mi | a media instance | |
| p_e | initialized exception object |
References _libvlc_media_list_add_media(), and mlist_is_writable().
Referenced by input_item_subitem_added(), and libvlc_media_list_add_file_content().
| VLC_PUBLIC_API int libvlc_media_list_count | ( | libvlc_media_list_t * | p_mlist, | |
| libvlc_exception_t * | p_e | |||
| ) |
Get count on media list items The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance | |
| p_e | initialized exception object |
References libvlc_media_list_t::items, vlc_array_count(), and VLC_UNUSED.
Referenced by find_last_item(), get_next_path(), get_path_rec(), get_previous_path(), hierarch_media_list_view_count(), hierarch_node_media_list_view_count(), hierarch_node_media_list_view_item_at_index(), import_mlist_rec(), index_of_item(), install_md_listener(), item_is_already_added(), libvlc_media_list_view_release(), libvlc_media_list_view_set_ml_notification_callback(), services_discovery_item_removed(), and uninstall_md_listener().
| VLC_PUBLIC_API libvlc_event_manager_t* libvlc_media_list_event_manager | ( | libvlc_media_list_t * | , | |
| libvlc_exception_t * | ||||
| ) |
Get libvlc_event_manager from this media list instance.
The p_event_manager is immutable, so you don't have to hold the lock
| p_ml | a media list instance | |
| p_ex | an excpetion instance |
References libvlc_media_list_t::p_event_manager, and VLC_UNUSED.
Referenced by mlist_em().
| VLC_PUBLIC_API libvlc_media_list_view_t* libvlc_media_list_flat_view | ( | libvlc_media_list_t * | , | |
| libvlc_exception_t * | ||||
| ) |
Get a flat media list view of media list items.
| p_ml | a media list instance | |
| p_ex | an excpetion instance |
References libvlc_media_list_view_private_t::array, flat_media_list_view_children_at_index(), flat_media_list_view_count(), flat_media_list_view_item_at_index(), flat_media_list_view_release(), import_mlist_rec(), libvlc_media_list_flat_view(), libvlc_media_list_lock(), libvlc_media_list_unlock(), libvlc_media_list_view_new(), libvlc_media_list_view_set_ml_notification_callback(), ml_item_added(), ml_item_removed(), trace, and vlc_array_init().
Referenced by libvlc_media_list_flat_view().
| VLC_PUBLIC_API libvlc_media_list_view_t* libvlc_media_list_hierarchical_node_view | ( | libvlc_media_list_t * | p_ml, | |
| libvlc_exception_t * | p_ex | |||
| ) |
References hierarch_node_media_list_view_children_at_index(), hierarch_node_media_list_view_count(), hierarch_node_media_list_view_item_at_index(), hierarch_node_media_list_view_release(), libvlc_event_attach(), libvlc_media_list_hierarchical_node_view(), libvlc_media_list_lock(), libvlc_media_list_unlock(), libvlc_media_list_view_new(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, libvlc_MediaListWillAddItem, libvlc_MediaListWillDeleteItem, media_list_item_added(), media_list_item_deleted(), media_list_will_add_item(), media_list_will_delete_item(), libvlc_media_list_t::p_event_manager, libvlc_media_list_view_t::p_mlist, and trace.
Referenced by hierarch_node_media_list_view_children_at_index(), and libvlc_media_list_hierarchical_node_view().
| VLC_PUBLIC_API libvlc_media_list_view_t* libvlc_media_list_hierarchical_view | ( | libvlc_media_list_t * | , | |
| libvlc_exception_t * | ||||
| ) |
Get a hierarchical media list view of media list items.
| p_ml | a media list instance | |
| p_ex | an exception instance |
References hierarch_media_list_view_children_at_index(), hierarch_media_list_view_count(), hierarch_media_list_view_item_at_index(), hierarch_media_list_view_release(), libvlc_event_attach(), libvlc_media_list_hierarchical_view(), libvlc_media_list_lock(), libvlc_media_list_unlock(), libvlc_media_list_view_new(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, libvlc_MediaListWillAddItem, libvlc_MediaListWillDeleteItem, media_list_item_added(), media_list_item_deleted(), media_list_will_add_item(), media_list_will_delete_item(), libvlc_media_list_t::p_event_manager, libvlc_media_list_view_t::p_mlist, and trace.
Referenced by hierarch_media_list_view_children_at_index(), and libvlc_media_list_hierarchical_view().
| VLC_PUBLIC_API int libvlc_media_list_index_of_item | ( | libvlc_media_list_t * | , | |
| libvlc_media_t * | , | |||
| libvlc_exception_t * | ||||
| ) |
Find index position of List media instance in media list.
Warning: the function will return the first matched position. The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance | |
| p_mi | media list instance | |
| p_e | initialized exception object |
References i, libvlc_media_list_t::items, vlc_array_count(), vlc_array_item_at_index(), and VLC_UNUSED.
| VLC_PUBLIC_API void libvlc_media_list_insert_media | ( | libvlc_media_list_t * | , | |
| libvlc_media_t * | , | |||
| int | , | |||
| libvlc_exception_t * | ||||
| ) |
Insert media instance in media list on a position The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance | |
| p_mi | a media instance | |
| i_pos | position in array where to insert | |
| p_e | initialized exception object |
References _libvlc_media_list_insert_media(), and mlist_is_writable().
| VLC_PUBLIC_API int libvlc_media_list_is_readonly | ( | libvlc_media_list_t * | p_mlist | ) |
This indicates if this media list is read-only from a user point of view.
| p_ml | media list instance |
References libvlc_media_list_t::b_read_only.
| VLC_PUBLIC_API libvlc_media_t* libvlc_media_list_item_at_index | ( | libvlc_media_list_t * | , | |
| int | , | |||
| libvlc_exception_t * | ||||
| ) |
List media instance in media list at a position The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance | |
| i_pos | position in array where to insert | |
| p_e | initialized exception object |
References libvlc_media_list_t::items, libvlc_exception_raise(), libvlc_media_retain(), libvlc_printerr(), vlc_array_count(), and vlc_array_item_at_index().
Referenced by get_path_rec(), hierarch_media_list_view_children_at_index(), hierarch_media_list_view_item_at_index(), hierarch_node_media_list_view_count(), hierarch_node_media_list_view_item_at_index(), import_mlist_rec(), index_of_item(), install_md_listener(), libvlc_media_list_item_at_path(), libvlc_media_list_parentlist_at_path(), libvlc_media_list_view_release(), libvlc_media_list_view_set_ml_notification_callback(), services_discovery_item_removed(), and uninstall_md_listener().
| VLC_PUBLIC_API void libvlc_media_list_lock | ( | libvlc_media_list_t * | ) |
Get lock on media list items.
| p_ml | a media list instance |
References libvlc_media_list_t::object_lock, and vlc_mutex_lock().
Referenced by get_path_rec(), import_mlist_rec(), install_md_listener(), libvlc_media_list_flat_view(), libvlc_media_list_hierarchical_node_view(), libvlc_media_list_hierarchical_view(), libvlc_media_list_view_release(), media_list_subitem_added(), services_discovery_item_added(), services_discovery_item_removed(), set_relative_playlist_position_and_play(), and uninstall_md_listener().
| VLC_PUBLIC_API libvlc_media_t* libvlc_media_list_media | ( | libvlc_media_list_t * | , | |
| libvlc_exception_t * | ||||
| ) |
Get media instance from this media list instance.
This action will increase the refcount on the media instance. The libvlc_media_list_lock should NOT be held upon entering this function.
| p_ml | a media list instance | |
| p_e | initialized exception object |
References libvlc_media_retain(), libvlc_media_list_t::object_lock, libvlc_media_list_t::p_md, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_UNUSED.
| VLC_PUBLIC_API libvlc_media_list_t* libvlc_media_list_new | ( | libvlc_instance_t * | , | |
| libvlc_exception_t * | ||||
| ) |
Create an empty media list.
| p_libvlc | libvlc instance | |
| p_e | an initialized exception pointer |
References libvlc_media_list_t::b_read_only, libvlc_media_list_t::i_refcount, libvlc_media_list_t::items, libvlc_event_manager_new(), libvlc_event_manager_register_event_type(), libvlc_event_manager_release(), libvlc_exception_raised(), libvlc_MediaListItemAdded, libvlc_MediaListItemDeleted, libvlc_MediaListWillAddItem, libvlc_MediaListWillDeleteItem, libvlc_media_list_t::object_lock, libvlc_media_list_t::p_event_manager, libvlc_media_list_t::p_flat_mlist, libvlc_media_list_t::p_libvlc_instance, libvlc_media_list_t::p_md, libvlc_media_list_t::refcount_lock, vlc_array_init(), and vlc_mutex_init().
Referenced by input_item_subitem_added(), libvlc_media_discoverer_new_from_name(), libvlc_media_library_load(), and libvlc_media_new_as_node().
| VLC_PUBLIC_API void libvlc_media_list_release | ( | libvlc_media_list_t * | ) |
Release media list created with libvlc_media_list_new().
| p_ml | a media list created with libvlc_media_list_new() |
References i, libvlc_media_list_t::i_refcount, libvlc_media_list_t::items, libvlc_event_manager_release(), libvlc_media_release(), libvlc_media_list_t::object_lock, libvlc_media_list_t::p_event_manager, libvlc_media_list_t::p_md, libvlc_media_list_t::refcount_lock, vlc_array_clear(), vlc_array_count(), vlc_array_item_at_index(), vlc_mutex_destroy(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by find_last_item(), get_next_path(), get_path_rec(), get_previous_path(), hierarch_media_list_view_children_at_index(), hierarch_node_media_list_view_children_at_index(), hierarch_node_media_list_view_count(), hierarch_node_media_list_view_item_at_index(), import_mlist_rec(), index_of_item(), install_md_listener(), item_is_already_added(), libvlc_media_discoverer_new_from_name(), libvlc_media_discoverer_release(), libvlc_media_library_load(), libvlc_media_list_item_at_path(), libvlc_media_list_parentlist_at_path(), libvlc_media_list_player_release(), libvlc_media_list_player_set_media_list(), libvlc_media_list_view_children_for_item(), libvlc_media_list_view_release(), libvlc_media_release(), media_list_subitem_added(), and uninstall_md_listener().
| VLC_PUBLIC_API void libvlc_media_list_remove_index | ( | libvlc_media_list_t * | , | |
| int | , | |||
| libvlc_exception_t * | ||||
| ) |
Remove media instance from media list on a position The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance | |
| i_pos | position in array where to insert | |
| p_e | initialized exception object |
References _libvlc_media_list_remove_index(), and mlist_is_writable().
| VLC_PUBLIC_API void libvlc_media_list_retain | ( | libvlc_media_list_t * | ) |
Retain reference to a media list.
| p_ml | a media list created with libvlc_media_list_new() |
References libvlc_media_list_t::i_refcount, libvlc_media_list_t::refcount_lock, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by libvlc_media_discoverer_media_list(), libvlc_media_library_media_list(), libvlc_media_list_parentlist_at_path(), libvlc_media_list_player_set_media_list(), libvlc_media_list_view_new(), libvlc_media_list_view_parent_media_list(), and libvlc_media_subitems().
| VLC_PUBLIC_API void libvlc_media_list_set_media | ( | libvlc_media_list_t * | , | |
| libvlc_media_t * | , | |||
| libvlc_exception_t * | ||||
| ) |
Associate media instance with this media list instance.
If another media instance was present it will be released. The libvlc_media_list_lock should NOT be held upon entering this function.
| p_ml | a media list instance | |
| p_mi | media instance to add | |
| p_e | initialized exception object |
References libvlc_media_release(), libvlc_media_retain(), libvlc_media_list_t::object_lock, libvlc_media_list_t::p_md, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_UNUSED.
Referenced by input_item_subitem_added().
| VLC_PUBLIC_API void libvlc_media_list_unlock | ( | libvlc_media_list_t * | ) |
Release lock on media list items The libvlc_media_list_lock should be held upon entering this function.
| p_ml | a media list instance |
References libvlc_media_list_t::object_lock, and vlc_mutex_unlock().
Referenced by get_path_rec(), import_mlist_rec(), install_md_listener(), libvlc_media_list_flat_view(), libvlc_media_list_hierarchical_node_view(), libvlc_media_list_hierarchical_view(), libvlc_media_list_view_release(), media_list_subitem_added(), services_discovery_item_added(), services_discovery_item_removed(), set_relative_playlist_position_and_play(), and uninstall_md_listener().
1.5.6