Dirac - A Video Codec

Created by the British Broadcasting Corporation.


Classes | Typedefs | Enumerations | Functions

dirac Namespace Reference

Definition of class SequenceHeaderByteIO. More...

Classes

Typedefs

Enumerations

Functions


Detailed Description

Returns structures containing default parameter values for different video-formats.

Definition of class DiracException.

Definition of class TransformByteIO.

Definition of class SubbandByteIO.

Definition of class PictureByteIO.

Definition of class ParseUnitByteIO.

Definition of class ParseParamsByteIO.

Definition of class MvDataElementByteIO.

Definition of class MvDataByteIO.

Definition of class EndOfSequenceByteIO.

Definition of class SourceParamsByteIO.

Definition of class DiracByteStream.

Definition of class DiracByteStats.

Definition of class ComponentByteIO.

Definition of class CodingParamsByteIO.

Definition of class ByteIO.


Typedef Documentation

A general class for coding and decoding wavelet subband data, deriving from the abstract ArithCodec class.

A general class for coding and decoding wavelet subband data using variable length coding,

typedef int dirac::CalcValueType
typedef std::vector< std::vector< MVector > > dirac::CandidateList
typedef int dirac::CoeffType
typedef short dirac::ValueType

Enumeration Type Documentation

Enumerator:
ADD 
SUBTRACT 
Enumerator:
Y_COMP 
U_COMP 
V_COMP 
Enumerator:
SIGN0_CTX 
SIGN_POS_CTX 
SIGN_NEG_CTX 
Z_FBIN1z_CTX 
Z_FBIN1nz_CTX 
Z_FBIN2_CTX 
Z_FBIN3_CTX 
Z_FBIN4_CTX 
Z_FBIN5_CTX 
Z_FBIN6plus_CTX 
NZ_FBIN1z_CTX 
NZ_FBIN1nz_CTX 
NZ_FBIN2_CTX 
NZ_FBIN3_CTX 
NZ_FBIN4_CTX 
NZ_FBIN5_CTX 
NZ_FBIN6plus_CTX 
INFO_CTX 
BLOCK_SKIP_CTX 
Q_OFFSET_FOLLOW_CTX 
Q_OFFSET_INFO_CTX 
Q_OFFSET_SIGN_CTX 
TOTAL_COEFF_CTXS 
Enumerator:
ERR_UNSUPPORTED_STREAM_DATA 
ERR_END_OF_STREAM 
ERR_INVALID_VIDEO_FORMAT 
ERR_INVALID_CHROMA_FORMAT 
ERR_INVALID_PICTURE_RATE 
ERR_INVALID_SIGNAL_RANGE 
ERR_INVALID_PIXEL_ASPECT_RATIO 
ERR_INVALID_VIDEO_DEPTH 
ERR_INVALID_MOTION_VECTOR_PRECISION 
ERR_INVALID_INIT_DATA 
Enumerator:
SEVERITY_NO_ERROR 
SEVERITY_WARNING 
SEVERITY_PICTURE_ERROR 
SEVERITY_ACCESSUNIT_ERROR 
SEVERITY_SEQUENCE_ERROR 
SEVERITY_TERMINATE 
Enumerator:
FORWARD 
BACKWARD 
Enumerator:
DC_FBIN1_CTX 
DC_FBIN2plus_CTX 
DC_INFO_CTX 
DC_SIGN_CTX 
MV_FBIN1_CTX 
MV_FBIN2_CTX 
MV_FBIN3_CTX 
MV_FBIN4_CTX 
MV_FBIN5plus_CTX 
MV_INFO_CTX 
MV_SIGN_CTX 
PMODE_BIT0_CTX 
PMODE_BIT1_CTX 
SB_SPLIT_BIN1_CTX 
SB_SPLIT_BIN2_CTX 
SB_SPLIT_INFO_CTX 
TOTAL_MV_CTXS 
Enumerator:
HORIZONTAL 
VERTICAL 
Enumerator:
PU_SEQ_HEADER 
PU_PICTURE 
PU_END_OF_SEQUENCE 
PU_AUXILIARY_DATA 
PU_PADDING_DATA 
PU_CORE_PICTURE 
PU_LOW_DELAY_PICTURE 
PU_UNDEFINED 
Enumerator:
INTRA 
REF1_ONLY 
REF2_ONLY 
REF1AND2 
UNDEFINED 
Enumerator:
STAT_TOTAL_BYTE_COUNT 
STAT_MV_BYTE_COUNT 
STAT_YCOMP_BYTE_COUNT 
STAT_UCOMP_BYTE_COUNT 
STAT_VCOMP_BYTE_COUNT 

Function Documentation

void dirac::AddNewVlist ( CandidateList &  vect_list,
const MVector &  mv,
const int  xr,
const int  yr 
)
void dirac::AddNewVlist ( CandidateList &  vect_list,
const MVector &  mv,
const int  xr,
const int  yr,
const int  step 
)
void dirac::AddNewVlistD ( CandidateList &  vect_list,
const MVector &  mv,
const int  xr,
const int  yr 
)
void dirac::AddVect ( CandidateList &  vect_list,
const MVector &  mv,
const int  list_num 
)

Add a motion vector to the set of motion vector lists, making sure it's not a duplicate.

ValueType dirac::BChk ( const ValueType &  num,
const ValueType &  max 
) [inline]
unsigned int dirac::BlockParametersIndex ( const OLBParams &  bparams)
Parameters:
bparamsParams object for getting index
void dirac::CWMFilter ( Picture &  picture,
const int  strength 
)
void dirac::CWMFilterComponent ( PicArray &  pic_data,
const int  strength 
)
void dirac::DiagFilter ( PicArray &  pic_data,
const float  qf,
const int  strength 
)
void dirac::dirac_assert ( const char *  p_fname,
int  line_number,
const char *  p_mess 
)

Print a message to standard error and abort if in debug mode

void dirac::dirac_report ( const char *  p_fname,
int  line_number,
const char *  p_mess 
)

Print a message to standard error

int dirac::GetSMean ( std::vector< int > &  values)
unsigned int dirac::GetUMean ( std::vector< unsigned int > &  values)
ValueType dirac::GetVar ( const MVector &  mv1,
const MVector &  mv2 
)

Return the variation between two motion vectors, computed as the sum of absolute differences of their components.

ValueType dirac::GetVar ( const std::vector< MVector > &  pred_list,
const MVector &  mv 
)

Return the variation between a motion vector and a list of motion vectos, computed as the sum of absolute differences between the components of the vector and the median vector produced by the list of vectors

ChromaFormat dirac::IntToChromaFormat ( int  chroma_format)
Parameters:
chroma_formatInteger corresponding to a format
Returns:
Valid chroma-format (returns formatNK if no valid format found)
FrameRateType dirac::IntToFrameRateType ( int  frame_rate_idx)
Parameters:
frame_rate_idxInteger corresponding to a frame-rate in the spec table
Returns:
Valid FrameRateType (returns FRAMERATE_UNDEFINED if no valid frame-rate found)
MVPrecisionType dirac::IntToMVPrecisionType ( int  mv_prec)
Parameters:
mv_precInteger corresponding to a valid motion-vector precision
Returns:
Valid MVPrecisionType (returns SIGNAL_RANGE_UNDEFINED if no valid precision found)
PixelAspectRatioType dirac::IntToPixelAspectRatioType ( int  pix_asr_idx)
Parameters:
pix_asr_idxInteger corresponding to a pixel aspect ratio in the spec table
Returns:
Valid PixelAspectRatioType (returns PIXEL_ASPECT_RATIO_UNDEFINED if no valid pixel aspect ratio found)
SignalRangeType dirac::IntToSignalRangeType ( int  signal_range_idx)
Parameters:
signal_range_idxInteger corresponding to a signal-range in the spec table
Returns:
Valid SignalRangeType (returns SIGNAL_RANGE_UNDEFINED if no valid signal-ratio found)
VideoFormat dirac::IntToVideoFormat ( int  video_format)
Parameters:
video_formatInteger corresponding to a format
Returns:
Valid video-format (returns VIDEO_FORMAT_UNDEFINED if no valid format found)
void dirac::LPFilter ( PicArray &  pic_data,
const float  qf,
const int  strength 
)
int dirac::Median ( const std::vector< int > &  val_list)
ValueType dirac::Median ( const ValueType *  val_list,
const int  length 
)
int dirac::Median ( const int  val1,
const int  val2,
const int  val3 
)
MVector dirac::MvMean ( const MVector &  mv1,
const MVector &  mv2 
)
MVector dirac::MvMedian ( const MVector &  mv1,
const MVector &  mv2,
const MVector &  mv3 
)
MVector dirac::MvMedian ( const std::vector< MVector > &  vect_list)
int dirac::Norm1 ( const MVector &  mv) [inline]
int dirac::Norm2 ( const MVector &  mv) [inline]
template<class T >
std::ostream& dirac::operator<< ( std::ostream &  stream,
MotionVector< T > &  mv 
)
template<class T >
std::ostream& dirac::operator<< ( std::ostream &  stream,
TwoDArray< T > &  array 
)
std::ostream& dirac::operator<< ( std::ostream &  dst,
const DiracException &  exception 
)
template<class T >
std::istream& dirac::operator>> ( std::istream &  stream,
TwoDArray< T > &  array 
)
template<class T >
std::istream& dirac::operator>> ( std::istream &  stream,
MotionVector< T > &  mv 
)
void dirac::SetDefaultBlockParameters ( OLBParams &  bparams,
const VideoFormat video_format 
)
Parameters:
bparamsParams object for setting defaults
video_formatVideo format
void dirac::SetDefaultBlockParameters ( OLBParams &  bparams,
int  pidx 
)
Parameters:
bparamsParams object for setting defaults
pidxIndex into Block Parameters table
void dirac::SetDefaultCodecParameters ( CodecParams &  cparams,
PictureType  ptype,
unsigned int  num_refs 
)
Parameters:
cparamsCodec Params objects for setting defaults
ptypePicture type i,e, INTRA or INTER
num_refsNumber of reference frames
void dirac::SetDefaultEncoderParameters ( EncoderParams &  encparams)
Parameters:
encparamsParams objects for setting defaults
void dirac::SetDefaultSourceParameters ( const VideoFormat vf,
SourceParams &  sparams 
)
Parameters:
vfVideo Format
sparamsParams object for setting defaults
void dirac::SetDefaultTransformFilter ( const PictureType  ptype,
const VideoFormat  video_format,
WltFilter wf 
)
Parameters:
ptypePicture type i.e. intra or inter
video_formatThe video format
wfWltFilter object for getting the default wavelet filter

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