Created by the British Broadcasting Corporation.
#include <libdirac_common/dirac_types.h>
#include <libdirac_decoder/decoder_types.h>
Go to the source code of this file.
#include <libdirac_decoder/dirac_parser.h>\n
Initialise the decodern
decoder_handle = dirac_decoder_init();
do
{
dirac_decoder_state_t state = dirac_parse (decoder);
switch (state)
{
case STATE_BUFFER:
read more data.
Pass data to the decoder.
dirac_buffer (decoder_handle, data_start, data_end)
break;
case STATE_SEQUENCE:
handle start of sequence.
The decoder returns the sequence parameters in the
seq_params member of the decoder handle.
Allocate space for the frame data buffers and pass
this to the decoder.
dirac_set_buf (decoder_handle, buf, NULL);
break;
case STATE_SEQUENCE_END:
Deallocate frame data buffers
break;
case STATE_PICTURE_AVAIL:
Handle picture data.
The decoder sets the fbuf member in the decoder
handle to the frame decoded.
break;
case STATE_INVALID:
Unrecoverable error. Stop all processing
break;
}
} while (data available && decoder state != STATE_INVALID
Free the decoder resources
dirac_decoder_close(decoder_handle)
|
|
|
|
||||||||||||||||
|
Copy data into internal buffer
|
|
|
Release the decoder resources
|
|
|
Decoder Init Initialise the decoder.
|
|
|
Parses the data in the input buffer. This function returns the following values.
|
|
||||||||||||||||
|
Set the output buffer into which the decoder copies the decoded data
|
|
||||||||||||
|
Skip the next frame to be decoded
|
© 2004 British Broadcasting Corporation.
Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's
excellent Doxygen tool.