![]() |
![]() |
![]() |
GStreamer Base Plugins 0.10 Library Reference Manual | ![]() |
---|---|---|---|---|
#include <gst/riff/riff-media.h> #define GST_RIFF_00 #define GST_RIFF_0021 #define GST_RIFF_0031 #define GST_RIFF_0032 #define GST_RIFF_00AM #define GST_RIFF_00__ #define GST_RIFF_00db #define GST_RIFF_00dc #define GST_RIFF_00dx #define GST_RIFF_00id #define GST_RIFF_00iv #define GST_RIFF_00pc #define GST_RIFF_00rt #define GST_RIFF_00vc #define GST_RIFF_00xm #define GST_RIFF_00xx #define GST_RIFF_01 #define GST_RIFF_01dc #define GST_RIFF_01pc #define GST_RIFF_01wb #define GST_RIFF_02 #define GST_RIFF_03 #define GST_RIFF_04 #define GST_RIFF_05 #define GST_RIFF_06 #define GST_RIFF_07 #define GST_RIFF_AURA #define GST_RIFF_BW10 #define GST_RIFF_CCC #define GST_RIFF_CRAM #define GST_RIFF_CVID #define GST_RIFF_CYUV #define GST_RIFF_DISP #define GST_RIFF_DIV3 #define GST_RIFF_DMB1 #define GST_RIFF_FCCH_MSVC #define GST_RIFF_FCCH_RLE #define GST_RIFF_FCCH_msvc #define GST_RIFF_FCC_auds #define GST_RIFF_FCC_iavs #define GST_RIFF_FCC_pads #define GST_RIFF_FCC_txts #define GST_RIFF_FCC_vidc #define GST_RIFF_FCC_vids #define GST_RIFF_FF00 #define GST_RIFF_H263 #define GST_RIFF_I420 #define GST_RIFF_IDIT #define GST_RIFF_IJPG #define GST_RIFF_INFO_IARL #define GST_RIFF_INFO_IART #define GST_RIFF_INFO_ICMS #define GST_RIFF_INFO_ICMT #define GST_RIFF_INFO_ICOP #define GST_RIFF_INFO_ICRD #define GST_RIFF_INFO_ICRP #define GST_RIFF_INFO_IDIM #define GST_RIFF_INFO_IDPI #define GST_RIFF_INFO_IENG #define GST_RIFF_INFO_IGNR #define GST_RIFF_INFO_IKEY #define GST_RIFF_INFO_ILGT #define GST_RIFF_INFO_IMED #define GST_RIFF_INFO_INAM #define GST_RIFF_INFO_IPLT #define GST_RIFF_INFO_IPRD #define GST_RIFF_INFO_ISBJ #define GST_RIFF_INFO_ISFT #define GST_RIFF_INFO_ISHP #define GST_RIFF_INFO_ISRC #define GST_RIFF_INFO_ISRF #define GST_RIFF_INFO_ITCH #define GST_RIFF_ISBJ #define GST_RIFF_ISFT #define GST_RIFF_IV31 #define GST_RIFF_IV32 #define GST_RIFF_IV41 #define GST_RIFF_IV50 #define GST_RIFF_IYUV #define GST_RIFF_JPEG #define GST_RIFF_L263 #define GST_RIFF_LIST_AVIX #define GST_RIFF_LIST_INFO #define GST_RIFF_LIST_adtl #define GST_RIFF_LIST_hdrl #define GST_RIFF_LIST_movi #define GST_RIFF_LIST_odml #define GST_RIFF_LIST_strl #define GST_RIFF_M263 #define GST_RIFF_MJPG #define GST_RIFF_MPIX #define GST_RIFF_MVI1 #define GST_RIFF_NONE #define GST_RIFF_PACK #define GST_RIFF_Q1_0 #define GST_RIFF_RGB #define GST_RIFF_RIFF_AVI #define GST_RIFF_RIFF_CDXA #define GST_RIFF_RIFF_WAVE #define GST_RIFF_RLE4 #define GST_RIFF_RLE8 #define GST_RIFF_RT21 #define GST_RIFF_SFMC #define GST_RIFF_TAG_BEXT #define GST_RIFF_TAG_JUNK #define GST_RIFF_TAG_LIST #define GST_RIFF_TAG_RIFF #define GST_RIFF_TAG_RIFX #define GST_RIFF_TAG_avih #define GST_RIFF_TAG_bext #define GST_RIFF_TAG_cue #define GST_RIFF_TAG_data #define GST_RIFF_TAG_dmlh #define GST_RIFF_TAG_fact #define GST_RIFF_TAG_fmt #define GST_RIFF_TAG_idx1 #define GST_RIFF_TAG_plst #define GST_RIFF_TAG_strd #define GST_RIFF_TAG_strf #define GST_RIFF_TAG_strh #define GST_RIFF_TAG_strn #define GST_RIFF_TAG_vedt #define GST_RIFF_TRAN #define GST_RIFF_ULTI #define GST_RIFF_V422 #define GST_RIFF_VDOW #define GST_RIFF_VIXL #define GST_RIFF_VSSH #define GST_RIFF_VYUY #define GST_RIFF_WHAM #define GST_RIFF_WINX #define GST_RIFF_WPY2 #define GST_RIFF_XMPG #define GST_RIFF_Y41P #define GST_RIFF_YUV8 #define GST_RIFF_YUV9 #define GST_RIFF_YUY2 #define GST_RIFF_YV12 #define GST_RIFF_YVU9 #define GST_RIFF_azpr #define GST_RIFF_bw10 #define GST_RIFF_ccc #define GST_RIFF_cram #define GST_RIFF_cvid #define GST_RIFF_cyuv #define GST_RIFF_dmb1 #define GST_RIFF_h263 #define GST_RIFF_i263 #define GST_RIFF_i420 #define GST_RIFF_iv31 #define GST_RIFF_iv32 #define GST_RIFF_iv41 #define GST_RIFF_iv50 #define GST_RIFF_iyuv #define GST_RIFF_jpeg #define GST_RIFF_m263 #define GST_RIFF_mJPG #define GST_RIFF_mvi1 #define GST_RIFF_none #define GST_RIFF_pack #define GST_RIFF_rec #define GST_RIFF_rgb #define GST_RIFF_rle4 #define GST_RIFF_rle8 #define GST_RIFF_rpza #define GST_RIFF_rt21 #define GST_RIFF_tran #define GST_RIFF_ulti #define GST_RIFF_v422 #define GST_RIFF_vixl #define GST_RIFF_vyuy #define GST_RIFF_wham #define GST_RIFF_x263 #define GST_RIFF_xmpg #define GST_RIFF_y41p #define GST_RIFF_yuy2 #define GST_RIFF_yv12 GstCaps* gst_riff_create_audio_caps (guint16 codec_id, gst_riff_strh *strh, gst_riff_strf_auds *strf, GstBuffer *strf_data, GstBuffer *strd_data, char **codec_name); GstCaps* gst_riff_create_audio_template_caps (void); GstCaps* gst_riff_create_iavs_caps (guint32 codec_fcc, gst_riff_strh *strh, gst_riff_strf_iavs *strf, GstBuffer *strf_data, GstBuffer *strd_data, char **codec_name); GstCaps* gst_riff_create_iavs_template_caps (void); GstCaps* gst_riff_create_video_caps (guint32 codec_fcc, gst_riff_strh *strh, gst_riff_strf_vids *strf, GstBuffer *strf_data, GstBuffer *strd_data, char **codec_name); GstCaps* gst_riff_create_video_template_caps (void); gst_riff_dmlh; gst_riff_index_entry; void gst_riff_init (void); gboolean gst_riff_parse_chunk (GstElement *element, GstBuffer *buf, guint *offset, guint32 *fourcc, GstBuffer **chunk_data); gboolean gst_riff_parse_file_header (GstElement *element, GstBuffer *buf, guint32 *doctype); void gst_riff_parse_info (GstElement *element, GstBuffer *buf, GstTagList **taglist); gboolean gst_riff_parse_strf_auds (GstElement *element, GstBuffer *buf, gst_riff_strf_auds **strf, GstBuffer **data); gboolean gst_riff_parse_strf_iavs (GstElement *element, GstBuffer *buf, gst_riff_strf_iavs **strf, GstBuffer **data); gboolean gst_riff_parse_strf_vids (GstElement *element, GstBuffer *buf, gst_riff_strf_vids **strf, GstBuffer **data); gboolean gst_riff_parse_strh (GstElement *element, GstBuffer *buf, gst_riff_strh **strh); GstFlowReturn gst_riff_read_chunk (GstElement *element, GstPad *pad, guint64 *offset, guint32 *tag, GstBuffer **chunk_data); gst_riff_strf_auds; gst_riff_strf_iavs; gst_riff_strf_vids; gst_riff_strh;
#define GST_RIFF_INFO_IPLT GST_MAKE_FOURCC ('I','P','L','T') /* palette setting */
#define GST_RIFF_MPIX GST_MAKE_FOURCC (0x04,0x00, 'i', '1') /* MotionPixels munged their id */
#define GST_RIFF_azpr GST_MAKE_FOURCC ('a', 'z', 'p', 'r') /* recognize Apple's rpza mangled? */
GstCaps* gst_riff_create_audio_caps (guint16 codec_id, gst_riff_strh *strh, gst_riff_strf_auds *strf, GstBuffer *strf_data, GstBuffer *strd_data, char **codec_name);
codec_id
:codec_id
strh
:strh
strf
:strf
strf_data
:strf_data
strd_data
:strd_data
codec_name
:codec_name
Returns :Returns
codec_id : |
|
strh : |
|
strf : |
|
strf_data : |
|
strd_data : |
|
codec_name : |
|
Returns : |
GstCaps* gst_riff_create_audio_template_caps (void);
Returns : |
GstCaps* gst_riff_create_iavs_caps (guint32 codec_fcc, gst_riff_strh *strh, gst_riff_strf_iavs *strf, GstBuffer *strf_data, GstBuffer *strd_data, char **codec_name);
codec_fcc
:codec_fcc
strh
:strh
strf
:strf
strf_data
:strf_data
strd_data
:strd_data
codec_name
:codec_name
Returns :Returns
codec_fcc : |
|
strh : |
|
strf : |
|
strf_data : |
|
strd_data : |
|
codec_name : |
|
Returns : |
GstCaps* gst_riff_create_iavs_template_caps (void);
Returns : |
GstCaps* gst_riff_create_video_caps (guint32 codec_fcc, gst_riff_strh *strh, gst_riff_strf_vids *strf, GstBuffer *strf_data, GstBuffer *strd_data, char **codec_name);
codec_fcc
:codec_fcc
strh
:strh
strf
:strf
strf_data
:strf_data
strd_data
:strd_data
codec_name
:codec_name
Returns :Returns
codec_fcc : |
|
strh : |
|
strf : |
|
strf_data : |
|
strd_data : |
|
codec_name : |
|
Returns : |
GstCaps* gst_riff_create_video_template_caps (void);
Returns : |
typedef struct { guint32 id; guint32 flags; #define GST_RIFF_IF_LIST (0x00000001L) #define GST_RIFF_IF_KEYFRAME (0x00000010L) #define GST_RIFF_IF_NO_TIME (0x00000100L) #define GST_RIFF_IF_COMPUSE (0x0FFF0000L) guint32 offset; guint32 size; } gst_riff_index_entry;
gboolean gst_riff_parse_chunk (GstElement *element, GstBuffer *buf, guint *offset, guint32 *fourcc, GstBuffer **chunk_data);
Reads a single chunk.
element
:element
caller element (used for debugging).
caller element (used for debugging).
buf
:buf
input buffer.
input buffer.
offset
:offset
offset in the buffer in the caller. Is incremented
by the read size by this function.
offset in the buffer in the caller. Is incremented
by the read size by this function.
fourcc
:fourcc
fourcc (returned by this function0 of the chunk.
fourcc (returned by this function0 of the chunk.
chunk_data
:chunk_data
buffer (returned by the function) containing the
chunk data.
buffer (returned by the function) containing the
chunk data.
Returns :Returns the fourcc tag of this chunk, or FALSE on error
the fourcc tag of this chunk, or FALSE on error
element : |
caller element (used for debugging). |
buf : |
input buffer. |
offset : |
offset in the buffer in the caller. Is incremented by the read size by this function. |
fourcc : |
fourcc (returned by this function0 of the chunk. |
chunk_data : |
buffer (returned by the function) containing the chunk data. |
Returns : | the fourcc tag of this chunk, or FALSE on error |
gboolean gst_riff_parse_file_header (GstElement *element, GstBuffer *buf, guint32 *doctype);
Reads the first few bytes from the provided buffer, checks
if this stream is a RIFF stream, and determines document type.
This function takes ownership of buf
so it should not be used anymore
after calling this function.
element
:element
caller element (used for debugging/error).
caller element (used for debugging/error).
buf
:buf
input buffer from which the file header will be parsed,
should be at least 12 bytes long.
input buffer from which the file header will be parsed,
should be at least 12 bytes long.
doctype
:doctype
a fourcc (returned by this function) to indicate the
type of document (according to the header).
a fourcc (returned by this function) to indicate the
type of document (according to the header).
Returns :Returns FALSE if this is not a RIFF stream (in which case the
caller should error out; we already throw an error), or TRUE
if it is.
FALSE if this is not a RIFF stream (in which case the
caller should error out; we already throw an error), or TRUE
if it is.
element : |
caller element (used for debugging/error). |
buf : |
input buffer from which the file header will be parsed, should be at least 12 bytes long. |
doctype : |
a fourcc (returned by this function) to indicate the type of document (according to the header). |
Returns : | FALSE if this is not a RIFF stream (in which case the caller should error out; we already throw an error), or TRUE if it is. |
void gst_riff_parse_info (GstElement *element, GstBuffer *buf, GstTagList **taglist);
Parses stream metadata from input data.
element
:element
caller element (used for debugging/error).
caller element (used for debugging/error).
buf
:buf
input data to be used for parsing, stripped from header.
input data to be used for parsing, stripped from header.
taglist
:taglist
a pointer to a taglist (returned by this function)
containing information about this stream. May be
NULL if no supported tags were found.
a pointer to a taglist (returned by this function)
containing information about this stream. May be
NULL if no supported tags were found.
element : |
caller element (used for debugging/error). |
buf : |
input data to be used for parsing, stripped from header. |
taglist : |
a pointer to a taglist (returned by this function) containing information about this stream. May be NULL if no supported tags were found. |
gboolean gst_riff_parse_strf_auds (GstElement *element, GstBuffer *buf, gst_riff_strf_auds **strf, GstBuffer **data);
Parses an audio stream´s strf structure plus optionally some
extradata from input data. This function takes ownership of buf
.
use.
element
:element
caller element (used for debugging/error).
caller element (used for debugging/error).
buf
:buf
input data to be used for parsing, stripped from header.
input data to be used for parsing, stripped from header.
strf
:strf
a pointer (returned by this function) to a filled-in
strf/auds structure. Caller should free it.
a pointer (returned by this function) to a filled-in
strf/auds structure. Caller should free it.
data
:data
a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
codec initialization data).
a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
codec initialization data).
Returns :Returns TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
element : |
caller element (used for debugging/error). |
buf : |
input data to be used for parsing, stripped from header. |
strf : |
a pointer (returned by this function) to a filled-in strf/auds structure. Caller should free it. |
data : |
a pointer (returned by this function) to a buffer containing extradata for this particular stream (e.g. codec initialization data). |
Returns : | TRUE if parsing succeeded, otherwise FALSE. The stream should be skipped on error, but it is not fatal. |
gboolean gst_riff_parse_strf_iavs (GstElement *element, GstBuffer *buf, gst_riff_strf_iavs **strf, GstBuffer **data);
Parses a interleaved (also known as "complex") stream´s strf
structure plus optionally some extradata from input data. This
function takes ownership of buf
.
element
:element
caller element (used for debugging/error).
caller element (used for debugging/error).
buf
:buf
input data to be used for parsing, stripped from header.
input data to be used for parsing, stripped from header.
strf
:strf
a pointer (returned by this function) to a filled-in
strf/iavs structure. Caller should free it.
a pointer (returned by this function) to a filled-in
strf/iavs structure. Caller should free it.
data
:data
a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
codec initialization data).
a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
codec initialization data).
Returns :Returns TRUE if parsing succeeded, otherwise FALSE.
TRUE if parsing succeeded, otherwise FALSE.
element : |
caller element (used for debugging/error). |
buf : |
input data to be used for parsing, stripped from header. |
strf : |
a pointer (returned by this function) to a filled-in strf/iavs structure. Caller should free it. |
data : |
a pointer (returned by this function) to a buffer containing extradata for this particular stream (e.g. codec initialization data). |
Returns : | TRUE if parsing succeeded, otherwise FALSE. |
gboolean gst_riff_parse_strf_vids (GstElement *element, GstBuffer *buf, gst_riff_strf_vids **strf, GstBuffer **data);
Parses a video stream´s strf structure plus optionally some
extradata from input data. This function takes ownership of buf
.
element
:element
caller element (used for debugging/error).
caller element (used for debugging/error).
buf
:buf
input data to be used for parsing, stripped from header.
input data to be used for parsing, stripped from header.
strf
:strf
a pointer (returned by this function) to a filled-in
strf/vids structure. Caller should free it.
a pointer (returned by this function) to a filled-in
strf/vids structure. Caller should free it.
data
:data
a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
palette, codec initialization data).
a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
palette, codec initialization data).
Returns :Returns TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
element : |
caller element (used for debugging/error). |
buf : |
input data to be used for parsing, stripped from header. |
strf : |
a pointer (returned by this function) to a filled-in strf/vids structure. Caller should free it. |
data : |
a pointer (returned by this function) to a buffer containing extradata for this particular stream (e.g. palette, codec initialization data). |
Returns : | TRUE if parsing succeeded, otherwise FALSE. The stream should be skipped on error, but it is not fatal. |
gboolean gst_riff_parse_strh (GstElement *element, GstBuffer *buf, gst_riff_strh **strh);
Parses a strh structure from input data. Takes ownership of buf
.
element
:element
caller element (used for debugging/error).
caller element (used for debugging/error).
buf
:buf
input data to be used for parsing, stripped from header.
input data to be used for parsing, stripped from header.
strh
:strh
a pointer (returned by this function) to a filled-in
strh structure. Caller should free it.
a pointer (returned by this function) to a filled-in
strh structure. Caller should free it.
Returns :Returns TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
element : |
caller element (used for debugging/error). |
buf : |
input data to be used for parsing, stripped from header. |
strh : |
a pointer (returned by this function) to a filled-in strh structure. Caller should free it. |
Returns : | TRUE if parsing succeeded, otherwise FALSE. The stream should be skipped on error, but it is not fatal. |
GstFlowReturn gst_riff_read_chunk (GstElement *element, GstPad *pad, guint64 *offset, guint32 *tag, GstBuffer **chunk_data);
Reads a single chunk of data. Since 0.10.8 'JUNK' chunks are skipped automatically.
element
:element
caller element (used for debugging).
caller element (used for debugging).
pad
:pad
pad to pull data from.
pad to pull data from.
offset
:offset
offset to pull from, incremented by this function.
offset to pull from, incremented by this function.
tag
:tag
fourcc of the chunk (returned by this function).
fourcc of the chunk (returned by this function).
chunk_data
:chunk_data
buffer (returned by this function).
buffer (returned by this function).
Returns :Returns flow status.
flow status.
element : |
caller element (used for debugging). |
pad : |
pad to pull data from. |
offset : |
offset to pull from, incremented by this function. |
tag : |
fourcc of the chunk (returned by this function). |
chunk_data : |
buffer (returned by this function). |
Returns : | flow status. |
typedef struct { /* == WaveHeader (?) */ guint16 format; /**** from public Microsoft RIFF docs ******/ #define GST_RIFF_WAVE_FORMAT_UNKNOWN (0x0000) #define GST_RIFF_WAVE_FORMAT_PCM (0x0001) #define GST_RIFF_WAVE_FORMAT_ADPCM (0x0002) #define GST_RIFF_WAVE_FORMAT_IBM_CVSD (0x0005) #define GST_RIFF_WAVE_FORMAT_ALAW (0x0006) #define GST_RIFF_WAVE_FORMAT_MULAW (0x0007) #define GST_RIFF_WAVE_FORMAT_WMS (0x000a) /* WMS Windows Media Audio Speech */ #define GST_RIFF_WAVE_FORMAT_OKI_ADPCM (0x0010) #define GST_RIFF_WAVE_FORMAT_DVI_ADPCM (0x0011) #define GST_RIFF_WAVE_FORMAT_DIGISTD (0x0015) #define GST_RIFF_WAVE_FORMAT_DIGIFIX (0x0016) #define GST_RIFF_WAVE_FORMAT_YAMAHA_ADPCM (0x0020) #define GST_RIFF_WAVE_FORMAT_DSP_TRUESPEECH (0x0022) #define GST_RIFF_WAVE_FORMAT_GSM610 (0x0031) #define GST_RIFF_WAVE_FORMAT_MSN (0x0032) #define GST_RIFF_WAVE_FORMAT_ITU_G721_ADPCM (0x0040) #define GST_RIFF_WAVE_FORMAT_MPEGL12 (0x0050) #define GST_RIFF_WAVE_FORMAT_MPEGL3 (0x0055) #define GST_RIFF_WAVE_FORMAT_VOXWARE (0x0062) #define GST_RIFF_WAVE_FORMAT_VOXWARE_BYTE_ALIGNED (0x0069) #define GST_RIFF_WAVE_FORMAT_VOXWARE_AC8 (0x0070) #define GST_RIFF_WAVE_FORMAT_VOXWARE_AC10 (0x0071) #define GST_RIFF_WAVE_FORMAT_VOXWARE_AC16 (0x0072) #define GST_RIFF_WAVE_FORMAT_VOXWARE_AC20 (0x0073) #define GST_RIFF_WAVE_FORMAT_VOXWARE_METAVOICE (0x0074) #define GST_RIFF_WAVE_FORMAT_VOXWARE_METASOUND (0x0075) #define GST_RIFF_WAVE_FORMAT_VOXWARE_RT29HW (0x0076) #define GST_RIFF_WAVE_FORMAT_VOXWARE_VR12 (0x0077) #define GST_RIFF_WAVE_FORMAT_VOXWARE_VR18 (0x0078) #define GST_RIFF_WAVE_FORMAT_VOXWARE_TQ40 (0x0079) #define GST_RIFF_WAVE_FORMAT_VOXWARE_TQ60 (0x0081) #define GST_RIFF_WAVE_FORMAT_AAC (0x00ff) #define GST_RIFF_IBM_FORMAT_MULAW (0x0101) #define GST_RIFF_IBM_FORMAT_ALAW (0x0102) #define GST_RIFF_IBM_FORMAT_ADPCM (0x0103) #define GST_RIFF_WAVE_FORMAT_WMAV1 (0x0160) #define GST_RIFF_WAVE_FORMAT_WMAV2 (0x0161) #define GST_RIFF_WAVE_FORMAT_WMAV3 (0x0162) #define GST_RIFF_WAVE_FORMAT_WMAV3_L (0x0163) #define GST_RIFF_WAVE_FORMAT_SONY_ATRAC3 (0x0270) #define GST_RIFF_WAVE_FORMAT_A52 (0x2000) #define GST_RIFF_WAVE_FORMAT_DTS (0x2001) #define GST_RIFF_WAVE_FORMAT_VORBIS1 (0x674f) #define GST_RIFF_WAVE_FORMAT_VORBIS2 (0x6750) #define GST_RIFF_WAVE_FORMAT_VORBIS3 (0x6751) #define GST_RIFF_WAVE_FORMAT_VORBIS1PLUS (0x676f) #define GST_RIFF_WAVE_FORMAT_VORBIS2PLUS (0x6770) #define GST_RIFF_WAVE_FORMAT_VORBIS3PLUS (0x6771) #define GST_RIFF_WAVE_FORMAT_GSM_AMR_CBR (0x7A21) #define GST_RIFF_WAVE_FORMAT_GSM_AMR_VBR (0x7A22) #define GST_RIFF_WAVE_FORMAT_EXTENSIBLE (0xFFFE) guint16 channels; guint32 rate; guint32 av_bps; guint16 blockalign; guint16 size; } gst_riff_strf_auds;
typedef struct { guint32 DVAAuxSrc; guint32 DVAAuxCtl; guint32 DVAAuxSrc1; guint32 DVAAuxCtl1; guint32 DVVAuxSrc; guint32 DVVAuxCtl; guint32 DVReserved1; guint32 DVReserved2; } gst_riff_strf_iavs;
typedef struct { /* == BitMapInfoHeader */ guint32 size; guint32 width; guint32 height; guint16 planes; guint16 bit_cnt; guint32 compression; guint32 image_size; guint32 xpels_meter; guint32 ypels_meter; guint32 num_colors; /* used colors */ guint32 imp_colors; /* important colors */ /* may be more for some codecs */ } gst_riff_strf_vids;
typedef struct { guint32 type; /* stream type */ guint32 fcc_handler; /* fcc_handler */ guint32 flags; /* flags values */ #define GST_RIFF_STRH_DISABLED 0x000000001 #define GST_RIFF_STRH_VIDEOPALCHANGES 0x000010000 guint32 priority; guint32 init_frames; /* initial frames (???) */ guint32 scale; guint32 rate; guint32 start; guint32 length; guint32 bufsize; /* suggested buffer size */ guint32 quality; guint32 samplesize; /* rcFrame, RECT structure(struct of 4 shorts) gint32 left; gint32 top; gint32 right; gint32 bottom; */ } gst_riff_strh;