- Main Page
- Namespaces
- Classes
- Files
- Directories

- Class List
- Class Hierarchy
- Class Members

# dirac::FrameCompressor Class Reference

Compress a single image frame. More...

`#include <frame_compress.h>`

List of all members.

## Public Member Functions
| FrameCompressor (EncoderParams &encp)
| Constructor.
| ~FrameCompressor ()
| Destructor.
void | Compress (FrameBuffer &fbuffer, const FrameBuffer &orig_buffer, int fnum)
| Compress a specific frame within a group of pictures (GOP).
bool | IsSkipped ()
| Returns true if the frame has been skipped rather than coded normally.
bool | IsMEDataAvail () const
| Returns true if Motion estimation data is available.
const MEData * | GetMEData () const
| Returns the motion estimation data.

## Detailed Description

Compress a single image frame.

This class compresses a single frame at a time, using parameters supplied at its construction. FrameCompressor is used by SequenceCompressor.

Definition at line 58 of file frame_compress.h.

## Constructor & Destructor Documentation

FrameCompressor::FrameCompressor | ( | EncoderParams & | encp | ) |

  | Constructor. Creates a FrameEncoder with specific set of parameters the control the compression process. It encodes motion data before encoding each component of the frame. Parameters:
  | encp | encoder parameters
Definition at line 57 of file frame_compress.cpp.

## Member Function Documentation

void FrameCompressor::Compress | ( | FrameBuffer & | fbuffer,
|  | const FrameBuffer & | orig_buffer,
|  | int | fnum
| ) |

  | Compress a specific frame within a group of pictures (GOP). Compresses a specified frame within a group of pictures. Parameters:
  | fbuffer | picture buffer in which the frame resides
  | orig_buffer | the corresponding picture buffer of uncoded originals
  | fnum | frame number to compress
Definition at line 74 of file frame_compress.cpp. References dirac::EncoderParams::BitsOut(), dirac::FrameParams::CFormat(), dirac::Frame::Clip(), dirac::MotionCompensator::CompensateFrame(), dirac::CompCompressor::Compress(), dirac::ArithCodec< T >::Compress(), dirac::UnitOutputManager::Data(), dirac::FrameParams::ExpiryTime(), dirac::FrameParams::FrameNum(), dirac::SequenceOutputManager::FrameOutput(), dirac::FrameParams::FSort(), dirac::FrameBuffer::GetComponent(), dirac::Frame::GetFparams(), dirac::FrameBuffer::GetFrame(), dirac::GolombCode(), dirac::UnitOutputManager::Header(), dirac::IFRAME_START_CODE, dirac::MvDataCodec::InitContexts(), dirac::L1FRAME_START_CODE, dirac::L2FRAME_START_CODE, dirac::FrameOutputManager::MVOutput(), dirac::BasicOutputManager::OutputBit(), dirac::BasicOutputManager::OutputBytes(), dirac::FrameParams::Refs(), dirac::Frame::SetFrameSort(), dirac::START_CODE_PREFIX_BYTE0, dirac::START_CODE_PREFIX_BYTE1, dirac::START_CODE_PREFIX_BYTE2, dirac::START_CODE_PREFIX_BYTE3, dirac::UnsignedGolombCode(), dirac::CodecParams::XNumMB(), and dirac::CodecParams::YNumMB(). Referenced by dirac::SequenceCompressor::CompressNextFrame().

The documentation for this class was generated from the following files:

- C:/guliverkli/src/filters/parser/diracsplitter/libdirac/libdirac_encoder/frame_compress.h
- C:/guliverkli/src/filters/parser/diracsplitter/libdirac/libdirac_encoder/frame_compress.cpp