VLC  2.1.0-git
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
libvlc_media.h File Reference

This file defines libvlc_media external API. More...

Go to the source code of this file.

Data Structures

struct  libvlc_media_stats_t
 defgroup libvlc_media_stats_t LibVLC media statistics More...
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
 Note the order of libvlc_state_t enum must match exactly the order of.
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
typedef struct libvlc_media_stats_t libvlc_media_stats_t
 defgroup libvlc_media_stats_t LibVLC media statistics

Enumerations

enum  libvlc_state_t {
  libvlc_NothingSpecial = 0, libvlc_Opening, libvlc_Buffering, libvlc_Playing,
  libvlc_Paused, libvlc_Stopped, libvlc_Ended, libvlc_Error
}
 Note the order of libvlc_state_t enum must match exactly the order of. More...
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_tlibvlc_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_API libvlc_media_tlibvlc_media_new_path (libvlc_instance_t *p_instance, const char *path)
 Create a media for a certain file path.
LIBVLC_API libvlc_media_tlibvlc_media_new_fd (libvlc_instance_t *p_instance, int fd)
 Create a media for an already open file descriptor.
LIBVLC_API libvlc_media_tlibvlc_media_new_as_node (libvlc_instance_t *p_instance, const char *psz_name)
 Create a media as an empty node with a given name.
LIBVLC_API void libvlc_media_add_option (libvlc_media_t *p_md, const char *ppsz_options)
 Add an option to the media.
LIBVLC_API void libvlc_media_add_option_flag (libvlc_media_t *p_md, const char *ppsz_options, unsigned i_flags)
 Add an option to the media with configurable flags.
LIBVLC_API void libvlc_media_retain (libvlc_media_t *p_md)
 Retain a reference to a media descriptor object (libvlc_media_t).
LIBVLC_API void libvlc_media_release (libvlc_media_t *p_md)
 Decrement the reference count of a media descriptor object.
LIBVLC_API char * libvlc_media_get_mrl (libvlc_media_t *p_md)
 Get the media resource locator (mrl) from a media descriptor object.
LIBVLC_API libvlc_media_tlibvlc_media_duplicate (libvlc_media_t *p_md)
 Duplicate a 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.
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)
LIBVLC_API int libvlc_media_save_meta (libvlc_media_t *p_md)
 Save the meta previously set.
LIBVLC_API libvlc_state_t libvlc_media_get_state (libvlc_media_t *p_md)
 Get current state of 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.
LIBVLC_API struct
libvlc_media_list_t
libvlc_media_subitems (libvlc_media_t *p_md)
 Get subitems of media descriptor object.
LIBVLC_API libvlc_event_manager_tlibvlc_media_event_manager (libvlc_media_t *p_md)
 Get event manager from 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.
LIBVLC_API void libvlc_media_parse (libvlc_media_t *p_md)
 Parse a media.
LIBVLC_API void libvlc_media_parse_async (libvlc_media_t *p_md)
 Parse a media.
LIBVLC_API int libvlc_media_is_parsed (libvlc_media_t *p_md)
 Get Parsed status for media descriptor object.
LIBVLC_API void libvlc_media_set_user_data (libvlc_media_t *p_md, void *p_new_user_data)
 Sets media descriptor's user_data.
LIBVLC_API void * libvlc_media_get_user_data (libvlc_media_t *p_md)
 Get media descriptor's user_data.
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.
LIBVLC_API unsigned libvlc_media_tracks_get (libvlc_media_t *p_md, libvlc_media_track_t ***tracks)
 Get media descriptor's elementary streams description.
LIBVLC_API void libvlc_media_tracks_release (libvlc_media_track_t **p_tracks, unsigned i_count)
 Release media descriptor's elementary streams description array.
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
}
 defgroup libvlc_meta LibVLC meta data More...
typedef enum libvlc_meta_t libvlc_meta_t
 defgroup libvlc_meta LibVLC meta data

Detailed Description

This file defines libvlc_media external API.