GstRiff
AVI parser and encoder library
The various functions may return the following values:
@GST_RIFF_OK: no error
@GST_RIFF_ENOTRIFF: no riff header found
@GST_RIFF_EINVAL: invalied parameters given
@GST_RIFF_ENOMEM: no memory
Internal state of the parser
@GST_RIFF_STATE_INITIAL:
@GST_RIFF_STATE_HASAVIH:
@GST_RIFF_STATE_HASSTRH:
@GST_RIFF_STATE_HASSTRF:
@GST_RIFF_STATE_MOVI:
Create a FOURCC
@a:
@b:
@c:
@d:
@us_frame:
@max_bps:
@pad_gran:
@flags:
@init_frames:
@streams:
@bufsize:
@width:
@height:
@scale:
@rate:
@start:
@length:
@type:
@fcc_handler:
@flags:
@init_frames:
@scale:
@rate:
@start:
@length:
@bufsize:
@quality:
@samplesize:
@size:
@width:
@height:
@planes:
@bit_cnt:
@compression:
@image_size:
@xpels_meter:
@ypels_meter:
@num_colors:
@imp_colors:
@format:
@rate:
@av_bps:
@blockalign:
@size:
@id:
@size:
@type:
@id:
@size:
@type:
@id:
@size:
@id:
@flags:
@size:
@form:
@chunks:
@incomplete_chunk:
@incomplete_chunk_size:
@state:
@curoffset:
@nextlikely:
@dataleft:
@dataleft_size:
@new_tag_found:
@callback_data:
@offset:
@id:
@size:
@form:
@data:
This function will be called when a new chunk has been decoded
@chunk: the chunk
@data: user data
Create a new riff parser
@function: the function that will be called when a new chunk has been found
@data: the data to include in the function
@Returns: a new riff structure
Subit a new buffer to the parser
@riff: the riff parser
@buf: a buffer
@off: the offset of the buffer in the stream
@Returns: one of the return values
Resync the parser to a new offset
@riff: the parser
@offset: the new offset to resync to
Create a new riff encoder
@type: the type riff stream to encode
@Returns: a riff structure
Submit a new avi header to the encoder
@riff: the encoder
@head: the header
@size: the size of the dat in the body
@Returns: a status
Submit a new stream header to the encoder
@riff: the encoder
@fcc_type: the fourcc type
@head: the header
@size: the size of the body
@Returns: a status
Submit a new stream form to the encoder
@riff: the encoder
@format: the format
@size: the size
@Returns: a status
submit a new chunk to the encoder
@riff: the encoder
@chunk_type: the chunk type
@chunk: the chunk
@size: the size of the chunk data
@Returns: a status
Get the buffer that is currently constructed in the encoder
@riff: the encoder
@Returns: the buffer
Get the buffer that is currently constructed in the encoder and clear it
@riff: the encoder
@Returns: the buffer
Convert a fourcc to an id
@fourcc: the fourcc
@Returns: the id value
Convert an id to a fourcc
@id: the id
@Returns: the fourcc. You must free the data if it is no longer needed.