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:
Inheritance graph
[legend]
Collaboration diagram for dirac::CodecParams:
Collaboration graph
[legend]

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

◆ CodecParams()

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

◆ ChromaDepth()

unsigned int dirac::CodecParams::ChromaDepth ( ) const
inline

◆ ChromaXl()

int dirac::CodecParams::ChromaXl ( ) const
inline

◆ ChromaYl()

int dirac::CodecParams::ChromaYl ( ) const
inline

◆ FieldCoding()

bool dirac::CodecParams::FieldCoding ( ) const
inline

◆ GetCodeBlockMode()

CodeBlockMode dirac::CodecParams::GetCodeBlockMode ( ) const
inline

◆ GetCodeBlocks()

const CodeBlocks& dirac::CodecParams::GetCodeBlocks ( unsigned int  level) const

◆ GetPicPredParams() [1/2]

PicturePredParams& dirac::CodecParams::GetPicPredParams ( )
inline

◆ GetPicPredParams() [2/2]

const PicturePredParams& dirac::CodecParams::GetPicPredParams ( ) const
inline

◆ GetVideoFormat()

VideoFormat dirac::CodecParams::GetVideoFormat ( ) const
inline

◆ LumaDepth()

unsigned int dirac::CodecParams::LumaDepth ( ) const
inline

◆ PictureCodingMode()

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)

◆ SetChromaDepth()

void dirac::CodecParams::SetChromaDepth ( unsigned int  chroma_depth)
inline

◆ SetChromaXl()

void dirac::CodecParams::SetChromaXl ( const int  x)
inline

◆ SetChromaYl()

void dirac::CodecParams::SetChromaYl ( const int  y)
inline

◆ SetCodeBlockMode()

void dirac::CodecParams::SetCodeBlockMode ( unsigned int  cb_mode)

◆ SetCodeBlocks()

void dirac::CodecParams::SetCodeBlocks ( unsigned int  level,
unsigned int  hblocks,
unsigned int  vblocks 
)

◆ SetLumaDepth()

void dirac::CodecParams::SetLumaDepth ( unsigned int  luma_depth)
inline

◆ SetPictureCodingMode()

void dirac::CodecParams::SetPictureCodingMode ( int  pic_coding)
inline

◆ SetSpatialPartition()

void dirac::CodecParams::SetSpatialPartition ( bool  spatial_partition)
inline

◆ SetTopFieldFirst()

void dirac::CodecParams::SetTopFieldFirst ( bool  topf)
inline

◆ SetTransformDepth()

void dirac::CodecParams::SetTransformDepth ( unsigned int  wd)

◆ SetTransformFilter() [1/2]

void dirac::CodecParams::SetTransformFilter ( const WltFilter  wf)
inline

◆ SetTransformFilter() [2/2]

void dirac::CodecParams::SetTransformFilter ( unsigned int  wf_idx)

◆ SetVideoFormat()

void dirac::CodecParams::SetVideoFormat ( const VideoFormat  vd)
inline

◆ SetXl()

void dirac::CodecParams::SetXl ( const int  x)
inline

◆ SetYl()

void dirac::CodecParams::SetYl ( const int  y)
inline

◆ SetZeroTransform()

void dirac::CodecParams::SetZeroTransform ( bool  zero_transform)
inline

◆ SpatialPartition()

bool dirac::CodecParams::SpatialPartition ( ) const
inline

◆ TopFieldFirst()

bool dirac::CodecParams::TopFieldFirst ( ) const
inline

◆ TransformDepth()

unsigned int dirac::CodecParams::TransformDepth ( ) const
inline

◆ TransformFilter() [1/2]

WltFilter dirac::CodecParams::TransformFilter ( ) const
inline

◆ TransformFilter() [2/2]

WltFilter dirac::CodecParams::TransformFilter ( unsigned int  wf_idx)
protected

◆ Xl()

int dirac::CodecParams::Xl ( ) const
inline

◆ Yl()

int dirac::CodecParams::Yl ( ) const
inline

◆ ZeroTransform()

bool dirac::CodecParams::ZeroTransform ( ) const
inline

Member Data Documentation

◆ m_cb

OneDArray<CodeBlocks> dirac::CodecParams::m_cb
private

◆ m_cb_mode

CodeBlockMode dirac::CodecParams::m_cb_mode
private

◆ m_chroma_depth

unsigned int dirac::CodecParams::m_chroma_depth
private

◆ m_cxl

int dirac::CodecParams::m_cxl
private

◆ m_cyl

int dirac::CodecParams::m_cyl
private

◆ m_luma_depth

unsigned int dirac::CodecParams::m_luma_depth
private

◆ m_pic_coding_mode

int dirac::CodecParams::m_pic_coding_mode
private

◆ m_picpredparams

PicturePredParams dirac::CodecParams::m_picpredparams
private

◆ m_spatial_partition

bool dirac::CodecParams::m_spatial_partition
private

◆ m_topfieldfirst

bool dirac::CodecParams::m_topfieldfirst
private

◆ m_video_format

VideoFormat dirac::CodecParams::m_video_format
private

◆ m_wlt_depth

unsigned int dirac::CodecParams::m_wlt_depth
private

◆ m_wlt_filter

WltFilter dirac::CodecParams::m_wlt_filter
private

◆ m_xl

int dirac::CodecParams::m_xl
private

◆ m_yl

int dirac::CodecParams::m_yl
private

◆ m_zero_transform

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.