dirac::SequenceDecompressor Class Reference

Decompresses a sequence of frames from a stream. More...

#include <seq_decompress.h>

List of all members.

Public Member Functions

 SequenceDecompressor (std::istream *ip, bool verbosity)
 Constructor.
 ~SequenceDecompressor ()
 Destructor.
FrameDecompressNextFrame (bool skip=false)
 Decompress the next frame in sequence.
bool ReadNextFrameHeader ()
 Reads the header data associated with decompressing the frame.
FrameGetNextFrame ()
 Get the next frame available for display.
const FrameParamsGetNextFrameParams () const
 Get the next frame parameters.
bool Finished ()
 Determine if decompression is complete.
SeqParamsGetSeqParams ()
 Interrogates for decompression parameters.


Detailed Description

Decompresses a sequence of frames from a stream.

This class decompresses a sequence of frames, frame by frame.

Definition at line 63 of file seq_decompress.h.


Constructor & Destructor Documentation

SequenceDecompressor::SequenceDecompressor std::istream *  ip,
bool  verbosity
 

Constructor.

Initializes the decompressor with an input stream and level of output detail.

Parameters:
ip input data stream containing a sequence of compressed images
verbosity when true, increases the amount of information displayed during decompression

Definition at line 54 of file seq_decompress.cpp.

References dirac::SeqParams::CFormat(), dirac::CodecParams::ChromaBParams(), dirac::CodecParams::LumaBParams(), dirac::DecoderParams::SetBitsIn(), dirac::CodecParams::SetVerbose(), dirac::CodecParams::SetXNumMB(), dirac::CodecParams::SetYNumMB(), dirac::OLBParams::Xbsep(), dirac::SeqParams::Xl(), dirac::CodecParams::XNumMB(), dirac::OLBParams::Ybsep(), and dirac::SeqParams::Yl().

SequenceDecompressor::~SequenceDecompressor  ) 
 

Destructor.

Closes files and releases resources.

Definition at line 148 of file seq_decompress.cpp.


Member Function Documentation

Frame & SequenceDecompressor::DecompressNextFrame bool  skip = false  ) 
 

Decompress the next frame in sequence.

This function decodes the next frame in coding order and returns the next frame 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 frame 0. At the end you will need to loop for longer to get all the frames out. It's up to the calling function to do something with the decoded frames as they come out -- write them to screen or to file, as required.

Parameters:
skip skip decoding next frame
Returns:
reference to the next locally decoded frame available for display

Definition at line 165 of file seq_decompress.cpp.

References dirac::FrameBuffer::Clean(), dirac::FrameDecompressor::Decompress(), and dirac::FrameBuffer::GetFrame().

Referenced by dirac::DiracParser::GetLastFrame(), and dirac::DiracParser::Parse().

bool dirac::SequenceDecompressor::Finished  )  [inline]
 

Determine if decompression is complete.

Indicates whether or not the last frame in the sequence has been decompressed.

Returns:
true if last frame has been compressed; false if not

Definition at line 112 of file seq_decompress.h.

SeqParams& dirac::SequenceDecompressor::GetSeqParams  )  [inline]
 

Interrogates for decompression parameters.

Returns the parameters used for this decompression run.

Returns:
decompression parameters originally provide din the constructor.

Definition at line 120 of file seq_decompress.h.

Referenced by dirac::DiracParser::GetSeqParams().


The documentation for this class was generated from the following files:
Generated on Tue Dec 13 14:49:24 2005 for guliverkli by  doxygen 1.4.5