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

References m_chroma_depth.

◆ ChromaXl()

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

References m_cxl.

◆ ChromaYl()

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

References m_cyl.

◆ FieldCoding()

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

References m_pic_coding_mode.

◆ GetCodeBlockMode()

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

References m_cb_mode.

◆ GetCodeBlocks()

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

◆ GetPicPredParams() [1/2]

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

References m_picpredparams.

◆ GetPicPredParams() [2/2]

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

References m_picpredparams.

◆ GetVideoFormat()

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

References m_video_format.

◆ LumaDepth()

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

References m_luma_depth.

◆ 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)

References m_pic_coding_mode.

◆ SetChromaDepth()

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

References m_chroma_depth.

◆ SetChromaXl()

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

References m_cxl.

◆ SetChromaYl()

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

References m_cyl.

◆ 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

References m_luma_depth.

◆ SetPictureCodingMode()

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

References m_pic_coding_mode.

◆ SetSpatialPartition()

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

References m_spatial_partition.

◆ SetTopFieldFirst()

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

References m_topfieldfirst.

◆ SetTransformDepth()

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

◆ SetTransformFilter() [1/2]

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

References m_wlt_filter.

◆ SetTransformFilter() [2/2]

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

◆ SetVideoFormat()

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

References m_video_format.

◆ SetXl()

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

References m_xl.

◆ SetYl()

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

References m_yl.

◆ SetZeroTransform()

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

References m_zero_transform.

◆ SpatialPartition()

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

References m_spatial_partition.

◆ TopFieldFirst()

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

References m_topfieldfirst.

◆ TransformDepth()

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

References m_wlt_depth.

◆ TransformFilter() [1/2]

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

References m_wlt_filter.

◆ TransformFilter() [2/2]

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

◆ Xl()

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

References m_xl.

◆ Yl()

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

References m_yl.

◆ ZeroTransform()

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

References m_zero_transform.

Member Data Documentation

◆ m_cb

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

◆ m_cb_mode

CodeBlockMode dirac::CodecParams::m_cb_mode
private

Referenced by GetCodeBlockMode().

◆ m_chroma_depth

unsigned int dirac::CodecParams::m_chroma_depth
private

Referenced by ChromaDepth(), and SetChromaDepth().

◆ m_cxl

int dirac::CodecParams::m_cxl
private

Referenced by ChromaXl(), and SetChromaXl().

◆ m_cyl

int dirac::CodecParams::m_cyl
private

Referenced by ChromaYl(), and SetChromaYl().

◆ m_luma_depth

unsigned int dirac::CodecParams::m_luma_depth
private

Referenced by LumaDepth(), and SetLumaDepth().

◆ m_pic_coding_mode

int dirac::CodecParams::m_pic_coding_mode
private

◆ m_picpredparams

PicturePredParams dirac::CodecParams::m_picpredparams
private

Referenced by GetPicPredParams().

◆ m_spatial_partition

bool dirac::CodecParams::m_spatial_partition
private

◆ m_topfieldfirst

bool dirac::CodecParams::m_topfieldfirst
private

Referenced by SetTopFieldFirst(), and TopFieldFirst().

◆ m_video_format

VideoFormat dirac::CodecParams::m_video_format
private

Referenced by GetVideoFormat(), and SetVideoFormat().

◆ m_wlt_depth

unsigned int dirac::CodecParams::m_wlt_depth
private

Referenced by TransformDepth().

◆ m_wlt_filter

WltFilter dirac::CodecParams::m_wlt_filter
private

◆ m_xl

int dirac::CodecParams::m_xl
private

Referenced by SetXl(), and Xl().

◆ m_yl

int dirac::CodecParams::m_yl
private

Referenced by SetYl(), and Yl().

◆ m_zero_transform

bool dirac::CodecParams::m_zero_transform
private

Referenced by SetZeroTransform(), and ZeroTransform().


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.