QVisu
Qt-based visualization for smart homes
|
Classes | |
struct | libvlc_media_stats_t |
struct | libvlc_media_track_info_t |
struct | libvlc_audio_track_t |
struct | libvlc_video_track_t |
struct | libvlc_subtitle_track_t |
struct | libvlc_media_track_t |
Macros | |
#define | VLC_FORWARD_DECLARE_OBJECT(a) struct a |
Typedefs | |
typedef struct libvlc_media_t | libvlc_media_t |
typedef enum libvlc_state_t | libvlc_state_t |
typedef enum libvlc_track_type_t | libvlc_track_type_t |
typedef struct libvlc_media_track_info_t | libvlc_media_track_info_t |
typedef struct libvlc_audio_track_t | libvlc_audio_track_t |
typedef struct libvlc_video_track_t | libvlc_video_track_t |
typedef struct libvlc_subtitle_track_t | libvlc_subtitle_track_t |
typedef struct libvlc_media_track_t | libvlc_media_track_t |
Enumerations | |
enum | libvlc_state_t { libvlc_NothingSpecial =0, libvlc_Opening, libvlc_Buffering, libvlc_Playing, libvlc_Paused, libvlc_Stopped, libvlc_Ended, libvlc_Error } |
enum | { libvlc_media_option_trusted = 0x2, libvlc_media_option_unique = 0x100 } |
enum | libvlc_track_type_t { libvlc_track_unknown = -1, libvlc_track_audio = 0, libvlc_track_video = 1, libvlc_track_text = 2 } |
Functions | |
LIBVLC_API libvlc_media_t * | libvlc_media_new_location (libvlc_instance_t *p_instance, const char *psz_mrl) |
LIBVLC_API libvlc_media_t * | libvlc_media_new_path (libvlc_instance_t *p_instance, const char *path) |
LIBVLC_API libvlc_media_t * | libvlc_media_new_fd (libvlc_instance_t *p_instance, int fd) |
LIBVLC_API libvlc_media_t * | libvlc_media_new_as_node (libvlc_instance_t *p_instance, const char *psz_name) |
LIBVLC_API void | libvlc_media_add_option (libvlc_media_t *p_md, const char *psz_options) |
LIBVLC_API void | libvlc_media_add_option_flag (libvlc_media_t *p_md, const char *psz_options, unsigned i_flags) |
LIBVLC_API void | libvlc_media_retain (libvlc_media_t *p_md) |
LIBVLC_API void | libvlc_media_release (libvlc_media_t *p_md) |
LIBVLC_API char * | libvlc_media_get_mrl (libvlc_media_t *p_md) |
LIBVLC_API libvlc_media_t * | libvlc_media_duplicate (libvlc_media_t *p_md) |
LIBVLC_API char * | libvlc_media_get_meta (libvlc_media_t *p_md, libvlc_meta_t e_meta) |
LIBVLC_API void | libvlc_media_set_meta (libvlc_media_t *p_md, libvlc_meta_t e_meta, const char *psz_value) |
LIBVLC_API int | libvlc_media_save_meta (libvlc_media_t *p_md) |
LIBVLC_API libvlc_state_t | libvlc_media_get_state (libvlc_media_t *p_md) |
LIBVLC_API int | libvlc_media_get_stats (libvlc_media_t *p_md, libvlc_media_stats_t *p_stats) |
LIBVLC_API | VLC_FORWARD_DECLARE_OBJECT (libvlc_media_list_t *) libvlc_media_subitems(libvlc_media_t *p_md) |
LIBVLC_API libvlc_event_manager_t * | libvlc_media_event_manager (libvlc_media_t *p_md) |
LIBVLC_API libvlc_time_t | libvlc_media_get_duration (libvlc_media_t *p_md) |
LIBVLC_API void | libvlc_media_parse (libvlc_media_t *p_md) |
LIBVLC_API void | libvlc_media_parse_async (libvlc_media_t *p_md) |
LIBVLC_API int | libvlc_media_is_parsed (libvlc_media_t *p_md) |
LIBVLC_API void | libvlc_media_set_user_data (libvlc_media_t *p_md, void *p_new_user_data) |
LIBVLC_API void * | libvlc_media_get_user_data (libvlc_media_t *p_md) |
LIBVLC_DEPRECATED LIBVLC_API int | libvlc_media_get_tracks_info (libvlc_media_t *p_md, libvlc_media_track_info_t **tracks) |
LIBVLC_API unsigned | libvlc_media_tracks_get (libvlc_media_t *p_md, libvlc_media_track_t ***tracks) |
LIBVLC_API void | libvlc_media_tracks_release (libvlc_media_track_t **p_tracks, unsigned i_count) |
enum | libvlc_meta_t { libvlc_meta_Title, libvlc_meta_Artist, libvlc_meta_Genre, libvlc_meta_Copyright, libvlc_meta_Album, libvlc_meta_TrackNumber, libvlc_meta_Description, libvlc_meta_Rating, libvlc_meta_Date, libvlc_meta_Setting, libvlc_meta_URL, libvlc_meta_Language, libvlc_meta_NowPlaying, libvlc_meta_Publisher, libvlc_meta_EncodedBy, libvlc_meta_ArtworkURL, libvlc_meta_TrackID } |
typedef enum libvlc_meta_t | libvlc_meta_t |
typedef struct libvlc_media_stats_t | libvlc_media_stats_t |
libvlc_media_t is an abstract representation of a playable media. It consists of a media location and various optional meta data.
typedef struct libvlc_media_stats_t libvlc_media_stats_t |
defgroup libvlc_media_stats_t LibVLC media statistics
typedef enum libvlc_meta_t libvlc_meta_t |
defgroup libvlc_meta LibVLC meta dataMeta data types
typedef enum libvlc_state_t libvlc_state_t |
Note the order of libvlc_state_t enum must match exactly the order of
Expected states by web plugins are: IDLE/CLOSE=0, OPENING=1, BUFFERING=2, PLAYING=3, PAUSED=4, STOPPING=5, ENDED=6, ERROR=7
enum libvlc_meta_t |
defgroup libvlc_meta LibVLC meta dataMeta data types
enum libvlc_state_t |
Note the order of libvlc_state_t enum must match exactly the order of
Expected states by web plugins are: IDLE/CLOSE=0, OPENING=1, BUFFERING=2, PLAYING=3, PAUSED=4, STOPPING=5, ENDED=6, ERROR=7
LIBVLC_API void libvlc_media_add_option | ( | libvlc_media_t * | p_md, |
const char * | psz_options | ||
) |
Add an option to the media.
This option will be used to determine how the media_player will read the media. This allows to use VLC's advanced reading/streaming options on a per-media basis.
p_md | the media descriptor |
psz_options | the options (as a string) |
LIBVLC_API void libvlc_media_add_option_flag | ( | libvlc_media_t * | p_md, |
const char * | psz_options, | ||
unsigned | i_flags | ||
) |
Add an option to the media with configurable flags.
This option will be used to determine how the media_player will read the media. This allows to use VLC's advanced reading/streaming options on a per-media basis.
The options are detailed in vlc –long-help, for instance "--sout-all". Note that all options are not usable on medias: specifically, due to architectural issues, video-related options such as text renderer options cannot be set on a single media. They must be set on the whole libvlc instance instead.
p_md | the media descriptor |
psz_options | the options (as a string) |
i_flags | the flags for this option |
LIBVLC_API libvlc_media_t* libvlc_media_duplicate | ( | libvlc_media_t * | p_md | ) |
Duplicate a media descriptor object.
p_md | a media descriptor object. |
LIBVLC_API libvlc_event_manager_t* libvlc_media_event_manager | ( | libvlc_media_t * | p_md | ) |
Get event manager from media descriptor object. NOTE: this function doesn't increment reference counting.
p_md | a media descriptor object |
LIBVLC_API libvlc_time_t libvlc_media_get_duration | ( | libvlc_media_t * | p_md | ) |
Get duration (in ms) of media descriptor object item.
p_md | media descriptor object |
LIBVLC_API char* libvlc_media_get_meta | ( | libvlc_media_t * | p_md, |
libvlc_meta_t | e_meta | ||
) |
Read the meta of the media.
If the media has not yet been parsed this will return NULL.
This methods automatically calls libvlc_media_parse_async(), so after calling it you may receive a libvlc_MediaMetaChanged event. If you prefer a synchronous version ensure that you call libvlc_media_parse() before get_meta().
p_md | the media descriptor |
e_meta | the meta to read |
LIBVLC_API char* libvlc_media_get_mrl | ( | libvlc_media_t * | p_md | ) |
Get the media resource locator (mrl) from a media descriptor object
p_md | a media descriptor object |
LIBVLC_API libvlc_state_t libvlc_media_get_state | ( | libvlc_media_t * | p_md | ) |
Get current state of media descriptor object. Possible media states are defined in libvlc_structures.c ( libvlc_NothingSpecial=0, libvlc_Opening, libvlc_Buffering, libvlc_Playing, libvlc_Paused, libvlc_Stopped, libvlc_Ended, libvlc_Error).
p_md | a media descriptor object |
LIBVLC_API int libvlc_media_get_stats | ( | libvlc_media_t * | p_md, |
libvlc_media_stats_t * | p_stats | ||
) |
Get the current statistics about the media
p_md | media descriptor object |
p_stats | structure that contain the statistics about the media (this structure must be allocated by the caller) |
LIBVLC_DEPRECATED LIBVLC_API int libvlc_media_get_tracks_info | ( | libvlc_media_t * | p_md, |
libvlc_media_track_info_t ** | tracks | ||
) |
Get media descriptor's elementary streams description
Note, you need to call libvlc_media_parse() or play the media at least once before calling this function. Not doing this will result in an empty array.
p_md | media descriptor object |
tracks | address to store an allocated array of Elementary Streams descriptions (must be freed by the caller) [OUT] |
LIBVLC_API void* libvlc_media_get_user_data | ( | libvlc_media_t * | p_md | ) |
Get media descriptor's user_data. user_data is specialized data accessed by the host application, VLC.framework uses it as a pointer to an native object that references a libvlc_media_t pointer
p_md | media descriptor object |
LIBVLC_API int libvlc_media_is_parsed | ( | libvlc_media_t * | p_md | ) |
Get Parsed status for media descriptor object.
p_md | media descriptor object |
LIBVLC_API 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.
p_instance | the instance |
psz_name | the name of the node |
LIBVLC_API libvlc_media_t* libvlc_media_new_fd | ( | libvlc_instance_t * | p_instance, |
int | fd | ||
) |
Create a media for an already open file descriptor. The file descriptor shall be open for reading (or reading and writing).
Regular file descriptors, pipe read descriptors and character device descriptors (including TTYs) are supported on all platforms. Block device descriptors are supported where available. Directory descriptors are supported on systems that provide fdopendir(). Sockets are supported on all platforms where they are file descriptors, i.e. all except Windows.
p_instance | the instance |
fd | open file descriptor |
LIBVLC_API 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.
p_instance | the instance |
psz_mrl | the media location |
LIBVLC_API libvlc_media_t* libvlc_media_new_path | ( | libvlc_instance_t * | p_instance, |
const char * | path | ||
) |
Create a media for a certain file path.
p_instance | the instance |
path | local filesystem path |
LIBVLC_API void libvlc_media_parse | ( | libvlc_media_t * | p_md | ) |
Parse a media.
This fetches (local) meta data and tracks information. The method is synchronous.
p_md | media descriptor object |
LIBVLC_API void libvlc_media_parse_async | ( | libvlc_media_t * | p_md | ) |
Parse a media.
This fetches (local) meta data and tracks information. The method is the asynchronous of libvlc_media_parse().
To track when this is over you can listen to libvlc_MediaParsedChanged event. However if the media was already parsed you will not receive this event.
p_md | media descriptor object |
LIBVLC_API void libvlc_media_release | ( | libvlc_media_t * | p_md | ) |
Decrement the reference count of a media descriptor object. If the reference count is 0, then libvlc_media_release() will release the media descriptor object. It will send out an libvlc_MediaFreed event to all listeners. If the media descriptor object has been released it should not be used again.
p_md | the media descriptor |
LIBVLC_API void libvlc_media_retain | ( | libvlc_media_t * | p_md | ) |
Retain a reference to a media descriptor object (libvlc_media_t). Use libvlc_media_release() to decrement the reference count of a media descriptor object.
p_md | the media descriptor |
LIBVLC_API int libvlc_media_save_meta | ( | libvlc_media_t * | p_md | ) |
Save the meta previously set
p_md | the media desriptor |
LIBVLC_API 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)
p_md | the media descriptor |
e_meta | the meta to write |
psz_value | the media's meta |
LIBVLC_API void libvlc_media_set_user_data | ( | libvlc_media_t * | p_md, |
void * | p_new_user_data | ||
) |
Sets media descriptor's user_data. user_data is specialized data accessed by the host application, VLC.framework uses it as a pointer to an native object that references a libvlc_media_t pointer
p_md | media descriptor object |
p_new_user_data | pointer to user data |
LIBVLC_API unsigned libvlc_media_tracks_get | ( | libvlc_media_t * | p_md, |
libvlc_media_track_t *** | tracks | ||
) |
Get media descriptor's elementary streams description
Note, you need to call libvlc_media_parse() or play the media at least once before calling this function. Not doing this will result in an empty array.
p_md | media descriptor object |
tracks | address to store an allocated array of Elementary Streams descriptions (must be freed with libvlc_media_tracks_release by the caller) [OUT] |
LIBVLC_API void libvlc_media_tracks_release | ( | libvlc_media_track_t ** | p_tracks, |
unsigned | i_count | ||
) |
Release media descriptor's elementary streams description array
p_tracks | tracks info array to release |
i_count | number of elements in the array |
LIBVLC_API VLC_FORWARD_DECLARE_OBJECT | ( | libvlc_media_list_t * | ) |
Get subitems of media descriptor object. This will increment the reference count of supplied media descriptor object. Use libvlc_media_list_release() to decrement the reference counting.
p_md | media descriptor object |