Dirac - A Video Codec

Created by the British Broadcasting Corporation.


Public Member Functions | Protected Member Functions | Private Attributes | List of all members
dirac::CodecParams Class Reference

Parameters common to coder and decoder operation. More...

#include <common.h>

Inheritance diagram for dirac::CodecParams:
dirac::DecoderParams dirac::EncoderParams

Public Member Functions

 CodecParams (const VideoFormat &video_format=VIDEO_FORMAT_CUSTOM, PictureType ftype=INTRA_PICTURE, unsigned int num_refs=0, bool set_defaults=true)
 Default constructor. More...
 
int PictureCodingMode () const
 Returns the picture coding mode (independent of source format) More...
 
bool FieldCoding () const
 Returns true if the pictures are being coded as fields (mode 1 or 3) More...
 
bool TopFieldFirst () const
 Returns true if the topmost field comes first in time when coding. More...
 
int Xl () const
 Return the picture/field luma width. More...
 
int Yl () const
 Return the picture/field luma height. More...
 
int ChromaXl () const
 Return the picture/field chroma width. More...
 
int ChromaYl () const
 Return the picture/field chroma height. More...
 
unsigned int LumaDepth () const
 Returns the luma depth. More...
 
unsigned int ChromaDepth () const
 Returns the chroma depth. More...
 
bool ZeroTransform () const
 Return zero transform flag being used for picture (de)coding. More...
 
WltFilter TransformFilter () const
 Return the wavelet filter currently being used for picture (de)coding. More...
 
unsigned int TransformDepth () const
 Return the transform depth being used for picture (de)coding. More...
 
CodeBlockMode GetCodeBlockMode () const
 Return multiple quantisers flag being used for picture (de)coding. More...
 
bool SpatialPartition () const
 Return the spatial partitioning flag being used for picture (de)coding. More...
 
const CodeBlocksGetCodeBlocks (unsigned int level) const
 Return the code blocks for a particular level. More...
 
VideoFormat GetVideoFormat () const
 Return the video format currently being used for picture (de)coding. More...
 
PicturePredParamsGetPicPredParams ()
 Return the picture prediction params. More...
 
const PicturePredParamsGetPicPredParams () const
 Return the picture prediction params. More...
 
void SetPictureCodingMode (int pic_coding)
 Sets whether input is coded as fields or quincunxially. More...
 
void SetTopFieldFirst (bool topf)
 Sets whether the topmost field comes first in time [NB: TBD since this duplicates metadata in the sequence header]. More...
 
void SetXl (const int x)
 Set the picture/field luma width. More...
 
void SetYl (const int y)
 Set the picture/field luma height. More...
 
void SetChromaXl (const int x)
 Set the frame/field chroma width. More...
 
void SetChromaYl (const int y)
 Set the frame/field chroma height. More...
 
void SetLumaDepth (unsigned int luma_depth)
 Set Luma Depth. More...
 
void SetChromaDepth (unsigned int chroma_depth)
 Set Chroma Depth. More...
 
void SetZeroTransform (bool zero_transform)
 Set the zero transform flag being used for picture (de)coding. More...
 
void SetTransformFilter (const WltFilter wf)
 Set the wavelet filter used for picture (de)coding. More...
 
void SetTransformFilter (unsigned int wf_idx)
 Set the wavelet filter used for picture (de)coding. More...
 
void SetTransformDepth (unsigned int wd)
 Set the transform depth used for picture (de)coding and allocate for the code blocks array. More...
 
void SetCodeBlockMode (unsigned int cb_mode)
 Set the multiple quantisers flag usedto picture (de)coding. More...
 
void SetSpatialPartition (bool spatial_partition)
 Set the spatial partition flag usedto picture (de)coding. More...
 
void SetCodeBlocks (unsigned int level, unsigned int hblocks, unsigned int vblocks)
 Set the number of code blocks for a particular level. More...
 
void SetVideoFormat (const VideoFormat vd)
 Set the video format used for picture (de)coding. More...
 

Protected Member Functions

WltFilter TransformFilter (unsigned int wf_idx)
 Return the Wavelet filter associated with the wavelet index. More...
 

Private Attributes

PicturePredParams m_picpredparams
 The picture prediction parameters. More...
 
int m_pic_coding_mode
 The picture coding mode. More...
 
bool m_topfieldfirst
 True if interlaced and top field is first in temporal order. More...
 
int m_xl
 The frame/field luma width. More...
 
int m_yl
 The frame/field luma height. More...
 
int m_cxl
 The frame/field chroma width. More...
 
int m_cyl
 The frame/field chroma height. More...
 
unsigned int m_luma_depth
 Luma depth - number of bits required for lumz. More...
 
unsigned int m_chroma_depth
 chroma depth - number of bits required for luma More...
 
VideoFormat m_video_format
 The video format being used. More...
 
bool m_zero_transform
 Zero transform flag. More...
 
WltFilter m_wlt_filter
 The wavelet filter being used. More...
 
unsigned int m_wlt_depth
 Wavelet depth. More...
 
CodeBlockMode m_cb_mode
 Code block mode. More...
 
bool m_spatial_partition
 Spatial partitioning flag. More...
 
OneDArray< CodeBlocksm_cb
 Code block array. Number of entries is m_wlt_depth+1. More...
 

Detailed Description

Parameters used throughout both the encoder and the decoder

Constructor & Destructor Documentation

dirac::CodecParams::CodecParams ( const VideoFormat video_format = VIDEO_FORMAT_CUSTOM,
PictureType  ftype = INTRA_PICTURE,
unsigned int  num_refs = 0,
bool  set_defaults = true 
)

Member Function Documentation

unsigned int dirac::CodecParams::ChromaDepth ( ) const
inline
int dirac::CodecParams::ChromaXl ( ) const
inline
int dirac::CodecParams::ChromaYl ( ) const
inline
bool dirac::CodecParams::FieldCoding ( ) const
inline
CodeBlockMode dirac::CodecParams::GetCodeBlockMode ( ) const
inline
const CodeBlocks& dirac::CodecParams::GetCodeBlocks ( unsigned int  level) const
PicturePredParams& dirac::CodecParams::GetPicPredParams ( )
inline
const PicturePredParams& dirac::CodecParams::GetPicPredParams ( ) const
inline
VideoFormat dirac::CodecParams::GetVideoFormat ( ) const
inline
unsigned int dirac::CodecParams::LumaDepth ( ) const
inline
int dirac::CodecParams::PictureCodingMode ( ) const
inline

Returns the picture coding mode (independent of source format) 0 = Frame coding (no quincunx) 1 = Field coding (no quincunx)

void dirac::CodecParams::SetChromaDepth ( unsigned int  chroma_depth)
inline
void dirac::CodecParams::SetChromaXl ( const int  x)
inline
void dirac::CodecParams::SetChromaYl ( const int  y)
inline
void dirac::CodecParams::SetCodeBlockMode ( unsigned int  cb_mode)
void dirac::CodecParams::SetCodeBlocks ( unsigned int  level,
unsigned int  hblocks,
unsigned int  vblocks 
)
void dirac::CodecParams::SetLumaDepth ( unsigned int  luma_depth)
inline
void dirac::CodecParams::SetPictureCodingMode ( int  pic_coding)
inline
void dirac::CodecParams::SetSpatialPartition ( bool  spatial_partition)
inline
void dirac::CodecParams::SetTopFieldFirst ( bool  topf)
inline
void dirac::CodecParams::SetTransformDepth ( unsigned int  wd)
void dirac::CodecParams::SetTransformFilter ( const WltFilter  wf)
inline
void dirac::CodecParams::SetTransformFilter ( unsigned int  wf_idx)
void dirac::CodecParams::SetVideoFormat ( const VideoFormat  vd)
inline
void dirac::CodecParams::SetXl ( const int  x)
inline
void dirac::CodecParams::SetYl ( const int  y)
inline
void dirac::CodecParams::SetZeroTransform ( bool  zero_transform)
inline
bool dirac::CodecParams::SpatialPartition ( ) const
inline
bool dirac::CodecParams::TopFieldFirst ( ) const
inline
unsigned int dirac::CodecParams::TransformDepth ( ) const
inline
WltFilter dirac::CodecParams::TransformFilter ( ) const
inline
WltFilter dirac::CodecParams::TransformFilter ( unsigned int  wf_idx)
protected
int dirac::CodecParams::Xl ( ) const
inline
int dirac::CodecParams::Yl ( ) const
inline
bool dirac::CodecParams::ZeroTransform ( ) const
inline

Member Data Documentation

OneDArray<CodeBlocks> dirac::CodecParams::m_cb
private
CodeBlockMode dirac::CodecParams::m_cb_mode
private
unsigned int dirac::CodecParams::m_chroma_depth
private
int dirac::CodecParams::m_cxl
private
int dirac::CodecParams::m_cyl
private
unsigned int dirac::CodecParams::m_luma_depth
private
int dirac::CodecParams::m_pic_coding_mode
private
PicturePredParams dirac::CodecParams::m_picpredparams
private
bool dirac::CodecParams::m_spatial_partition
private
bool dirac::CodecParams::m_topfieldfirst
private
VideoFormat dirac::CodecParams::m_video_format
private
unsigned int dirac::CodecParams::m_wlt_depth
private
WltFilter dirac::CodecParams::m_wlt_filter
private
int dirac::CodecParams::m_xl
private
int dirac::CodecParams::m_yl
private
bool dirac::CodecParams::m_zero_transform
private

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

© 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.