Created by the British Broadcasting Corporation.
Decompresses a sequence of pictures from a stream. More...
#include <seq_decompress.h>
This class decompresses a sequence of frames, picture by picture.
dirac::SequenceDecompressor::SequenceDecompressor | ( | ParseUnitByteIO & | parseunit, |
bool | verbosity | ||
) |
Initializes the decompressor with an input stream and level of output detail.
parseunit | First access-unit of new sequence |
verbosity | when true, increases the amount of information displayed during decompression |
dirac::SequenceDecompressor::~SequenceDecompressor | ( | ) |
Closes files and releases resources.
dirac::SequenceDecompressor::SequenceDecompressor | ( | const SequenceDecompressor & | cpy | ) | [private] |
Copy constructor is private and body-less. This class should not be copied.
const Picture* dirac::SequenceDecompressor::DecompressNextPicture | ( | ParseUnitByteIO * | p_parseunit_byteio | ) |
This function decodes the next picture in coding order and returns the next picture in display order. In general these will differ, and because of re-ordering there is a delay which needs to be imposed. This creates problems at the start and at the end of the sequence which must be dealt with. At the start we just keep outputting picture 0. At the end you will need to loop for longer to get all the pictures out. It's up to the calling function to do something with the decoded pictures as they come out -- write them to screen or to file, as required.
p_parseunit_byteio | Picture information in Dirac-stream format |
bool dirac::SequenceDecompressor::Finished | ( | ) |
Indicates whether or not the last picture in the sequence has been decompressed.
DecoderParams& dirac::SequenceDecompressor::GetDecoderParams | ( | ) | [inline] |
Returns the decoder parameters used for this decompression run.
References m_decparams.
const Picture* dirac::SequenceDecompressor::GetNextPicture | ( | ) |
const PictureParams* dirac::SequenceDecompressor::GetNextPictureParams | ( | ) | const |
ParseParams& dirac::SequenceDecompressor::GetParseParams | ( | ) | [inline] |
Returns the parse parameters used for this decompression run.
References m_parse_params.
SourceParams& dirac::SequenceDecompressor::GetSourceParams | ( | ) | [inline] |
Returns the source parameters used for this decompression run.
References m_srcparams.
void dirac::SequenceDecompressor::NewAccessUnit | ( | ParseUnitByteIO & | parseunit_byteio | ) |
parseunit_byteio | AccessUnit info in Dirac-stream format |
SequenceDecompressor& dirac::SequenceDecompressor::operator= | ( | const SequenceDecompressor & | rhs | ) | [private] |
Assignment = is private and body-less. This class should not be assigned.
bool dirac::SequenceDecompressor::m_all_done [private] |
int dirac::SequenceDecompressor::m_current_code_pnum [private] |
Referenced by GetDecoderParams().
int dirac::SequenceDecompressor::m_delay [private] |
int dirac::SequenceDecompressor::m_highest_pnum [private] |
int dirac::SequenceDecompressor::m_last_picture_read [private] |
Referenced by GetParseParams().
int dirac::SequenceDecompressor::m_show_pnum [private] |
Referenced by GetSourceParams().
© 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.