Main Page   Modules   Compound List   File List   Compound Members   File Members  

XLV Demultiplexer API

This describes the demultiplexer API of XLV. More...

Compounds

struct  _XLV_Demuxer
struct  _XLV_StreamDecoder
struct  _XLV_SystemData
struct  _XLV_SystemStreamSpec

Defines

#define XLV_SYSTEM_BASE_CMD   200
#define XLV_SYSTEM_GET_STREAM_SPEC   (XLV_SYSTEM_BASE_CMD+0)
#define XLV_SYSTEM_AUDIO_STREAM   0
#define XLV_SYSTEM_VIDEO_STREAM   1
#define XLV_SYSTEM_EXT_STREAM   2
#define XLV_SYSTEM_SPU_STREAM   3
#define XLV_SYSTEM_NONE_STREAM   255
#define XLV_SYSTEM_GET_STREAM_NO   (XLV_SYSTEM_BASE_CMD+1)
#define XLV_SYSTEM_GET_VSTREAM   (XLV_SYSTEM_BASE_CMD+2)
#define XLV_SYSTEM_GET_STREAM   (XLV_SYSTEM_BASE_CMD+3)
#define XLV_SYSTEM_UPLOAD_AUDIO_DATA   (XLV_SYSTEM_BASE_CMD+4)
#define XLV_SYSTEM_UPLOAD_VIDEO_DATA   (XLV_SYSTEM_BASE_CMD+5)
#define XLV_SYSTEM_SET_ASTREAM   (XLV_SYSTEM_BASE_CMD+6)
#define XLV_SYSTEM_SET_VSTREAM   (XLV_SYSTEM_BASE_CMD+7)
#define XLV_SYSTEM_BUILD_ASTREAM   (XLV_SYSTEM_BASE_CMD+8)
#define XLV_SYSTEM_BUILD_VSTREAM   (XLV_SYSTEM_BASE_CMD+9)
#define XLV_SYSTEM_BUILD_STREAM   (XLV_SYSTEM_BASE_CMD+10)
#define XLV_SYSTEM_GET_BSIZE   (XLV_SYSTEM_BASE_CMD+11)
#define XLV_SYSTEM_NEXT_FRAME   (XLV_SYSTEM_BASE_CMD+12)
#define XLV_SYSTEM_GET_TIME   (XLV_SYSTEM_BASE_CMD+13)
#define XLV_SYSTEM_SET_MODE   (XLV_SYSTEM_BASE_CMD+14)
#define XLV_SYSTEM_SEEKING   0
#define XLV_SYSTEM_STREAMING   1

Typedefs

typedef _XLV_SystemStreamSpec XLV_SystemStreamSpec
typedef _XLV_SystemData XLV_SystemData
typedef _XLV_Demuxer XLV_Demuxer
typedef _XLV_StreamDecoder XLV_StreamDecoder

Functions

XLV_Demuxer * xlv_demux_new (XLV_Session *session, XLV_Stream *m_input)
XLV_Demuxer * xlv_demux_new_with (XLV_Session *session, XLV_Stream *input, const gchar *type)
void xlv_demux_release (XLV_Demuxer *decoder)
gboolean xlv_demux_set_audio_stream (XLV_Demuxer *decoder, guint8 channel_id)
gboolean xlv_demux_set_video_stream (XLV_Demuxer *decoder, guint8 channel_id)
guint8 xlv_demux_get_number_of_substreams (XLV_Demuxer *decoder)
XLV_StreamDecoder * xlv_demux_get_stream (XLV_Demuxer *decoder, guint8 stream_id)
XLV_StreamDecoder * xlv_demux_get_audio_stream (XLV_Demuxer *decoder)
XLV_StreamDecoder * xlv_demux_get_video_stream (XLV_Demuxer *decoder)
void xlv_demux_release_stream (XLV_StreamDecoder *dec)
glong xlv_demux_get_buffer_size (XLV_Demuxer *decoder)
guint32 xlv_demux_get_time (XLV_Demuxer *decoder)
gboolean xlv_demux_substream_get_spec (XLV_StreamDecoder *decoder, XLV_SystemStreamSpec *spec)
gboolean xlv_demux_substream_next_frame (XLV_StreamDecoder *decoder, XLV_SystemData *data)

Detailed Description

This describes the demultiplexer API of XLV.

Demultiplexing is a hard task to achieve because you need to decode data in a file, find boundaries, creates new virtual stream, and send the right data to the right stream. This interface provides a common way to achieve for all demultiplexers of XLV.


Generated on Mon Jul 1 19:39:11 2002 for XLV by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002