HEVC Test Model (HM)  HM-16.18
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes
TLibCommon - Library containing functionality that is shared between encoder and decoder

Classes

class  AccessUnit
 
class  ContextModel
 context model class More...
 
class  ContextModel3DBuffer
 context model 3D buffer class More...
 
class  TComBitCounter
 class for counting bits More...
 
class  TComBitIf
 pure virtual class for basic bit handling More...
 
class  TComCABACTables
 static class for CABAC tables More...
 
class  TComList< C >
 list template More...
 
struct  _AMVPInfo
 parameters for AMVP More...
 
class  TComMv
 basic motion vector class More...
 
class  TComPic
 picture class (symbol + YUV buffers) More...
 
class  TComTile
 
class  TComPicYuv
 picture YUV buffer class More...
 
class  TComYuv
 general YUV buffer class More...
 
template<typename T >
Clip3 (const T minVal, const T maxVal, const T a)
 general min/max clip More...
 
template<typename T >
ClipBD (const T x, const Int bitDepth)
 
template<typename T >
Void Check3 (T minVal, T maxVal, T a)
 general min/max clip More...
 
template<typename ValueType >
ValueType leftShift (const ValueType value, const Int shift)
 
template<typename ValueType >
ValueType rightShift (const ValueType value, const Int shift)
 
template<typename ValueType >
ValueType leftShift_round (const ValueType value, const Int shift)
 
template<typename ValueType >
ValueType rightShift_round (const ValueType value, const Int shift)
 
#define NV_VERSION   "16.18"
 Current software version. More...
 
#define NVM_COMPILEDBY   "[Unk-CXX]"
 
#define NVM_ONOS   "[Unk-OS]"
 
#define NVM_BITS   "[%d bit] ", (sizeof(Void*) == 8 ? 64 : 32)
 used for checking 64-bit O/S More...
 
#define NULL   0
 
#define DATA_ALIGN   1
 use 32-bit aligned malloc/free More...
 
#define xMalloc(type, len)   malloc ( sizeof(type)*(len) )
 
#define xFree(ptr)   free ( ptr )
 
#define FATAL_ERROR_0(MESSAGE, EXITCODE)
 
static const UInt MAX_UINT = 0xFFFFFFFFU
 max. value of unsigned 32-bit integer More...
 
static const Int MAX_INT = 2147483647
 max. value of signed 32-bit integer More...
 
static const Double MAX_DOUBLE = 1.7e+308
 max. value of Double-type value More...
 
static const Int MAX_GOP = 64
 max. value of hierarchical GOP size More...
 
static const Int MAX_NUM_REF_PICS = 16
 max. number of pictures used for reference More...
 
static const Int MAX_NUM_REF = 16
 max. number of entries in picture reference list More...
 
static const Int MAX_QP = 51
 
static const Int NOT_VALID = -1
 
static const Int AMVP_MAX_NUM_CANDS = 2
 AMVP: advanced motion vector prediction - max number of final candidates. More...
 
static const Int AMVP_DECIMATION_FACTOR = 4
 
static const Int MRG_MAX_NUM_CANDS = 5
 MERGE. More...
 
static const Int MAX_TLAYER = 7
 Explicit temporal layer QP offset - max number of temporal layer. More...
 
static const Int ADAPT_SR_SCALE = 1
 division factor for adaptive search range More...
 
static const Int MAX_NUM_PICS_IN_SOP = 1024
 
static const Int MAX_NESTING_NUM_OPS = 1024
 
static const Int MAX_NESTING_NUM_LAYER = 64
 
static const Int MAX_VPS_NUM_HRD_PARAMETERS = 1
 
static const Int MAX_VPS_OP_SETS_PLUS1 = 1024
 
static const Int MAX_VPS_NUH_RESERVED_ZERO_LAYER_ID_PLUS1 = 1
 
static const Int MAXIMUM_INTRA_FILTERED_WIDTH = 16
 
static const Int MAXIMUM_INTRA_FILTERED_HEIGHT = 16
 
static const Int MAX_CPB_CNT = 32
 Upper bound of (cpb_cnt_minus1 + 1) More...
 
static const Int MAX_NUM_LAYER_IDS = 64
 
static const Int COEF_REMAIN_BIN_REDUCTION = 3
 indicates the level at which the VLC transitions from Golomb-Rice to TU+EG(k) More...
 
static const Int CU_DQP_TU_CMAX = 5
 max number bins for truncated unary More...
 
static const Int CU_DQP_EG_k = 0
 expgolomb order More...
 
static const Int SBH_THRESHOLD = 4
 value of the fixed SBH controlling threshold More...
 
static const Int C1FLAG_NUMBER = 8
 
static const Int C2FLAG_NUMBER = 1
 
static const Int MAX_NUM_VPS = 16
 
static const Int MAX_NUM_SPS = 16
 
static const Int MAX_NUM_PPS = 64
 
static const Int MLS_GRP_NUM = 64
 Max number of coefficient groups, max(16, 64) More...
 
static const Int MLS_CG_LOG2_WIDTH = 2
 
static const Int MLS_CG_LOG2_HEIGHT = 2
 
static const Int MLS_CG_SIZE = 4
 Coefficient group size of 4x4; = MLS_CG_LOG2_WIDTH + MLS_CG_LOG2_HEIGHT. More...
 
static const Int ARL_C_PRECISION = 7
 G382: 7-bit arithmetic precision. More...
 
static const Int LEVEL_RANGE = 30
 G382: max coefficient level in statistics collection. More...
 
static const Int RVM_VCEGAM10_M = 4
 
static const Int FAST_UDI_MAX_RDMODE_NUM = 35
 maximum number of RD comparison in fast-UDI estimation loop More...
 
static const Int NUM_INTRA_MODE = 36
 
static const Int PLANAR_IDX = 0
 
static const Int VER_IDX = 26
 index for intra VERTICAL mode More...
 
static const Int HOR_IDX = 10
 index for intra HORIZONTAL mode More...
 
static const Int DC_IDX = 1
 index for intra DC mode More...
 
static const Int NUM_CHROMA_MODE = 5
 total number of chroma modes More...
 
static const Int DM_CHROMA_IDX = 36
 chroma mode index for derived from luma intra mode More...
 
static const Int MDCS_ANGLE_LIMIT = 4
 0 = Horizontal/vertical only, 1 = Horizontal/vertical +/- 1, 2 = Horizontal/vertical +/- 2 etc... More...
 
static const Int MDCS_MAXIMUM_WIDTH = 8
 (measured in pixels) TUs with width greater than this can only use diagonal scan More...
 
static const Int MDCS_MAXIMUM_HEIGHT = 8
 (measured in pixels) TUs with height greater than this can only use diagonal scan More...
 
static const Int LOG2_MAX_NUM_COLUMNS_MINUS1 = 7
 
static const Int LOG2_MAX_NUM_ROWS_MINUS1 = 7
 
static const Int CABAC_INIT_PRESENT_FLAG = 1
 
static const Int LUMA_INTERPOLATION_FILTER_SUB_SAMPLE_POSITIONS = 4
 
static const Int CHROMA_INTERPOLATION_FILTER_SUB_SAMPLE_POSITIONS = 8
 
static const Int MAX_NUM_LONG_TERM_REF_PICS = 33
 
static const Int NUM_LONG_TERM_REF_PIC_SPS = 0
 
static const Int MAX_QP_OFFSET_LIST_SIZE = 6
 Maximum size of QP offset list is 6 entries. More...
 
static const Int LOSSLESS_AND_MIXED_LOSSLESS_RD_COST_TEST_QP = 0
 QP to use for lossless coding. More...
 
static const Int LOSSLESS_AND_MIXED_LOSSLESS_RD_COST_TEST_QP_PRIME =4
 QP' to use for mixed_lossy_lossless coding. More...
 
static const Int RExt__GOLOMB_RICE_ADAPTATION_STATISTICS_SETS = 4
 
static const Int RExt__GOLOMB_RICE_INCREMENT_DIVISOR = 4
 
static const Int RExt__PREDICTION_WEIGHTING_ANALYSIS_DC_PRECISION = 0
 Additional fixed bit precision used during encoder-side weighting prediction analysis. Currently only used when high_precision_prediction_weighting_flag is set, for backwards compatibility reasons. More...
 
static const Int MAX_TIMECODE_SEI_SETS = 3
 Maximum number of time sets. More...
 
static const Int MAX_CU_DEPTH = 6
 log2(CTUSize) More...
 
static const Int MAX_CU_SIZE = 64
 = 1<<(MAX_CU_DEPTH) More...
 
static const Int MIN_PU_SIZE = 4
 
static const Int MIN_TU_SIZE = 4
 
static const Int MAX_TU_SIZE = 32
 
static const Int MAX_NUM_PART_IDXS_IN_CTU_WIDTH = MAX_CU_SIZE/MIN_PU_SIZE
 maximum number of partition indices across the width of a CTU (or height of a CTU) More...
 
static const Int SCALING_LIST_REM_NUM = 6
 
static const Int QUANT_SHIFT = 14
 Q(4) = 2^14. More...
 
static const Int IQUANT_SHIFT = 6
 
static const Int SCALE_BITS = 15
 For fractional bit estimates in RDOQ. More...
 
static const Int SCALING_LIST_NUM = MAX_NUM_COMPONENT * NUMBER_OF_PREDICTION_MODES
 list number for quantization matrix More...
 
static const Int SCALING_LIST_START_VALUE = 8
 start value for dpcm mode More...
 
static const Int MAX_MATRIX_COEF_NUM = 64
 max coefficient number for quantization matrix More...
 
static const Int MAX_MATRIX_SIZE_NUM = 8
 max size number for quantization matrix More...
 
static const Int SCALING_LIST_BITS = 8
 bit depth of scaling list entries More...
 
static const Int LOG2_SCALING_LIST_NEUTRAL_VALUE = 4
 log2 of the value that, when used in a scaling list, has no effect on quantisation More...
 
static const Int SCALING_LIST_DC = 16
 default DC value More...
 
static const Int CONTEXT_STATE_BITS = 6
 
static const Int LAST_SIGNIFICANT_GROUPS = 10
 
static const Int MAX_ENCODER_DEBLOCKING_QUALITY_LAYERS = 8
 
static const UInt LUMA_LEVEL_TO_DQP_LUT_MAXSIZE = 1024
 max LUT size for QP offset based on luma More...
 
Void ContextModel::init (Int qp, Int initValue)
 initialize state with initial probability More...
 
 ContextModel3DBuffer::ContextModel3DBuffer (UInt uiSizeZ, UInt uiSizeY, UInt uiSizeX, ContextModel *basePtr, Int &count)
 
Void ContextModel3DBuffer::initBuffer (SliceType eSliceType, Int iQp, UChar *ctxModel)
 initialize 3D buffer by slice type & QP More...
 
UInt ContextModel3DBuffer::calcCost (SliceType sliceType, Int qp, UChar *ctxModel)
 determine cost of choosing a probability table based on current probabilities More...
 
#define MAX_NUM_CTX_MOD   512
 maximum number of supported contexts More...
 
#define NUM_SPLIT_FLAG_CTX   3
 number of context models for split flag More...
 
#define NUM_SKIP_FLAG_CTX   3
 number of context models for skip flag More...
 
#define NUM_MERGE_FLAG_EXT_CTX   1
 number of context models for merge flag of merge extended More...
 
#define NUM_MERGE_IDX_EXT_CTX   1
 number of context models for merge index of merge extended More...
 
#define NUM_PART_SIZE_CTX   4
 number of context models for partition size More...
 
#define NUM_PRED_MODE_CTX   1
 number of context models for prediction mode More...
 
#define NUM_INTRA_PREDICT_CTX   1
 number of context models for intra prediction More...
 
#define NUM_CHROMA_PRED_CTX   2
 number of context models for intra prediction (chroma) More...
 
#define NUM_INTER_DIR_CTX   5
 number of context models for inter prediction direction More...
 
#define NUM_MV_RES_CTX   2
 number of context models for motion vector difference More...
 
#define NUM_CHROMA_QP_ADJ_FLAG_CTX   1
 number of context models for chroma_qp_adjustment_flag More...
 
#define NUM_CHROMA_QP_ADJ_IDC_CTX   1
 number of context models for chroma_qp_adjustment_idc More...
 
#define NUM_REF_NO_CTX   2
 number of context models for reference index More...
 
#define NUM_TRANS_SUBDIV_FLAG_CTX   3
 number of context models for transform subdivision flags More...
 
#define NUM_QT_ROOT_CBF_CTX   1
 number of context models for QT ROOT CBF More...
 
#define NUM_DELTA_QP_CTX   3
 number of context models for dQP More...
 
#define NUM_SIG_CG_FLAG_CTX   2
 number of context models for MULTI_LEVEL_SIGNIFICANCE More...
 
#define NUM_EXPLICIT_RDPCM_FLAG_CTX   1
 number of context models for the flag which specifies whether to use RDPCM on inter coded residues More...
 
#define NUM_EXPLICIT_RDPCM_DIR_CTX   1
 number of context models for the flag which specifies which RDPCM direction is used on inter coded residues More...
 
#define NUM_SIG_FLAG_CTX_LUMA   28
 number of context models for luma sig flag More...
 
#define NUM_SIG_FLAG_CTX_CHROMA   16
 number of context models for chroma sig flag More...
 
#define NEIGHBOURHOOD_00_CONTEXT_1_THRESHOLD_4x4   3
 
#define NEIGHBOURHOOD_00_CONTEXT_2_THRESHOLD_4x4   1
 
#define FIRST_SIG_FLAG_CTX_LUMA   0
 
#define FIRST_SIG_FLAG_CTX_CHROMA   (FIRST_SIG_FLAG_CTX_LUMA + NUM_SIG_FLAG_CTX_LUMA)
 
#define NUM_SIG_FLAG_CTX   (NUM_SIG_FLAG_CTX_LUMA + NUM_SIG_FLAG_CTX_CHROMA)
 number of context models for sig flag More...
 
#define NUM_CTX_LAST_FLAG_SETS   2
 
#define NUM_CTX_LAST_FLAG_XY   15
 number of context models for last coefficient position More...
 
#define NUM_ONE_FLAG_CTX_PER_SET   4
 number of context models for greater than 1 flag in a set More...
 
#define NUM_ABS_FLAG_CTX_PER_SET   1
 number of context models for greater than 2 flag in a set More...
 
#define NUM_CTX_SETS_LUMA   4
 number of context model sets for luminance More...
 
#define NUM_CTX_SETS_CHROMA   2
 number of context model sets for combined chrominance More...
 
#define FIRST_CTX_SET_LUMA   0
 index of first luminance context set More...
 
#define NUM_ONE_FLAG_CTX_LUMA   (NUM_ONE_FLAG_CTX_PER_SET * NUM_CTX_SETS_LUMA)
 number of context models for greater than 1 flag of luma More...
 
#define NUM_ONE_FLAG_CTX_CHROMA   (NUM_ONE_FLAG_CTX_PER_SET * NUM_CTX_SETS_CHROMA)
 number of context models for greater than 1 flag of chroma More...
 
#define NUM_ABS_FLAG_CTX_LUMA   (NUM_ABS_FLAG_CTX_PER_SET * NUM_CTX_SETS_LUMA)
 number of context models for greater than 2 flag of luma More...
 
#define NUM_ABS_FLAG_CTX_CHROMA   (NUM_ABS_FLAG_CTX_PER_SET * NUM_CTX_SETS_CHROMA)
 number of context models for greater than 2 flag of chroma More...
 
#define NUM_ONE_FLAG_CTX   (NUM_ONE_FLAG_CTX_LUMA + NUM_ONE_FLAG_CTX_CHROMA)
 number of context models for greater than 1 flag More...
 
#define NUM_ABS_FLAG_CTX   (NUM_ABS_FLAG_CTX_LUMA + NUM_ABS_FLAG_CTX_CHROMA)
 number of context models for greater than 2 flag More...
 
#define FIRST_CTX_SET_CHROMA   (FIRST_CTX_SET_LUMA + NUM_CTX_SETS_LUMA)
 index of first chrominance context set More...
 
#define NUM_QT_CBF_CTX_SETS   2
 
#define NUM_QT_CBF_CTX_PER_SET   5
 number of context models for QT CBF More...
 
#define FIRST_CBF_CTX_LUMA   0
 index of first luminance CBF context More...
 
#define FIRST_CBF_CTX_CHROMA   (FIRST_CBF_CTX_LUMA + NUM_QT_CBF_CTX_PER_SET)
 index of first chrominance CBF context More...
 
#define NUM_MVP_IDX_CTX   1
 number of context models for MVP index More...
 
#define NUM_SAO_MERGE_FLAG_CTX   1
 number of context models for SAO merge flags More...
 
#define NUM_SAO_TYPE_IDX_CTX   1
 number of context models for SAO type index More...
 
#define NUM_TRANSFORMSKIP_FLAG_CTX   1
 number of context models for transform skipping More...
 
#define NUM_CU_TRANSQUANT_BYPASS_FLAG_CTX   1
 
#define NUM_CROSS_COMPONENT_PREDICTION_CTX   10
 
#define CNU   154
 dummy initialization value for unused context models 'Context model Not Used' More...
 
#define BSLICE_LUMA_CBF_CONTEXT   153, 111, CNU, CNU, CNU
 
#define PSLICE_LUMA_CBF_CONTEXT   153, 111, CNU, CNU, CNU
 
#define ISLICE_LUMA_CBF_CONTEXT   111, 141, CNU, CNU, CNU
 
#define BSLICE_CHROMA_CBF_CONTEXT   149, 92, 167, 154, 154
 
#define PSLICE_CHROMA_CBF_CONTEXT   149, 107, 167, 154, 154
 
#define ISLICE_CHROMA_CBF_CONTEXT   94, 138, 182, 154, 154
 
#define BSLICE_LUMA_LAST_POSITION_CONTEXT   125, 110, 124, 110, 95, 94, 125, 111, 111, 79, 125, 126, 111, 111, 79
 
#define PSLICE_LUMA_LAST_POSITION_CONTEXT   125, 110, 94, 110, 95, 79, 125, 111, 110, 78, 110, 111, 111, 95, 94
 
#define ISLICE_LUMA_LAST_POSITION_CONTEXT   110, 110, 124, 125, 140, 153, 125, 127, 140, 109, 111, 143, 127, 111, 79
 
#define BSLICE_CHROMA_LAST_POSITION_CONTEXT   108, 123, 93, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU
 
#define PSLICE_CHROMA_LAST_POSITION_CONTEXT   108, 123, 108, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU
 
#define ISLICE_CHROMA_LAST_POSITION_CONTEXT   108, 123, 63, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU
 
#define BSLICE_LUMA_SIGNIFICANCE_CONTEXT   170, 154, 139, 153, 139, 123, 123, 63, 124, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140
 
#define PSLICE_LUMA_SIGNIFICANCE_CONTEXT   155, 154, 139, 153, 139, 123, 123, 63, 153, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140
 
#define ISLICE_LUMA_SIGNIFICANCE_CONTEXT   111, 111, 125, 110, 110, 94, 124, 108, 124, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 141
 
#define BSLICE_CHROMA_SIGNIFICANCE_CONTEXT   170, 153, 138, 138, 122, 121, 122, 121, 167, 151, 183, 140, 151, 183, 140, 140
 
#define PSLICE_CHROMA_SIGNIFICANCE_CONTEXT   170, 153, 123, 123, 107, 121, 107, 121, 167, 151, 183, 140, 151, 183, 140, 140
 
#define ISLICE_CHROMA_SIGNIFICANCE_CONTEXT   140, 139, 182, 182, 152, 136, 152, 136, 153, 136, 139, 111, 136, 139, 111, 111
 
#define BSLICE_LUMA_ONE_CONTEXT   154, 196, 167, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 122
 
#define PSLICE_LUMA_ONE_CONTEXT   154, 196, 196, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 137
 
#define ISLICE_LUMA_ONE_CONTEXT   140, 92, 137, 138, 140, 152, 138, 139, 153, 74, 149, 92, 139, 107, 122, 152
 
#define BSLICE_LUMA_ABS_CONTEXT   107, 167, 91, 107
 
#define PSLICE_LUMA_ABS_CONTEXT   107, 167, 91, 122
 
#define ISLICE_LUMA_ABS_CONTEXT   138, 153, 136, 167
 
#define BSLICE_CHROMA_ONE_CONTEXT   169, 208, 166, 167, 154, 152, 167, 182
 
#define PSLICE_CHROMA_ONE_CONTEXT   169, 194, 166, 167, 154, 167, 137, 182
 
#define ISLICE_CHROMA_ONE_CONTEXT   140, 179, 166, 182, 140, 227, 122, 197
 
#define BSLICE_CHROMA_ABS_CONTEXT   107, 167
 
#define PSLICE_CHROMA_ABS_CONTEXT   107, 167
 
#define ISLICE_CHROMA_ABS_CONTEXT   152, 152
 
static const UInt significanceMapContextSetStart [MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES] = { {0, 9, 21, 27}, {0, 9, 12, 15} }
 
static const UInt significanceMapContextSetSize [MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES] = { {9, 12, 6, 1}, {9, 3, 3, 1} }
 
static const UInt nonDiagonalScan8x8ContextOffset [MAX_NUM_CHANNEL_TYPE] = { 6, 0 }
 
static const UInt notFirstGroupNeighbourhoodContextOffset [MAX_NUM_CHANNEL_TYPE] = { 3, 0 }
 
static const UChar INIT_CU_TRANSQUANT_BYPASS_FLAG [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_SPLIT_FLAG [NUMBER_OF_SLICE_TYPES][3]
 
static const UChar INIT_SKIP_FLAG [NUMBER_OF_SLICE_TYPES][3]
 
static const UChar INIT_MERGE_FLAG_EXT [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_MERGE_IDX_EXT [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_PART_SIZE [NUMBER_OF_SLICE_TYPES][4]
 
static const UChar INIT_PRED_MODE [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_INTRA_PRED_MODE [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_CHROMA_PRED_MODE [NUMBER_OF_SLICE_TYPES][2]
 
static const UChar INIT_INTER_DIR [NUMBER_OF_SLICE_TYPES][5]
 
static const UChar INIT_MVD [NUMBER_OF_SLICE_TYPES][2]
 
static const UChar INIT_REF_PIC [NUMBER_OF_SLICE_TYPES][2]
 
static const UChar INIT_DQP [NUMBER_OF_SLICE_TYPES][3]
 
static const UChar INIT_CHROMA_QP_ADJ_FLAG [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_CHROMA_QP_ADJ_IDC [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_QT_CBF [NUMBER_OF_SLICE_TYPES][2 *5]
 
static const UChar INIT_QT_ROOT_CBF [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_LAST [NUMBER_OF_SLICE_TYPES][2 *15]
 
static const UChar INIT_SIG_CG_FLAG [NUMBER_OF_SLICE_TYPES][2 *2]
 
static const UChar INIT_SIG_FLAG [NUMBER_OF_SLICE_TYPES][(28+16)]
 
static const UChar INIT_ONE_FLAG [NUMBER_OF_SLICE_TYPES][((4 *4)+(4 *2))]
 
static const UChar INIT_ABS_FLAG [NUMBER_OF_SLICE_TYPES][((1 *4)+(1 *2))]
 
static const UChar INIT_MVP_IDX [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_SAO_MERGE_FLAG [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_SAO_TYPE_IDX [NUMBER_OF_SLICE_TYPES][1]
 
static const UChar INIT_TRANS_SUBDIV_FLAG [NUMBER_OF_SLICE_TYPES][3]
 
static const UChar INIT_TRANSFORMSKIP_FLAG [NUMBER_OF_SLICE_TYPES][2 *1]
 
static const UChar INIT_EXPLICIT_RDPCM_FLAG [NUMBER_OF_SLICE_TYPES][2 *1]
 
static const UChar INIT_EXPLICIT_RDPCM_DIR [NUMBER_OF_SLICE_TYPES][2 *1]
 
static const UChar INIT_CROSS_COMPONENT_PREDICTION [NUMBER_OF_SLICE_TYPES][10]
 
 TComOutputBitstream::TComOutputBitstream ()
 this value is always msb-aligned, bigendian. More...
 
 TComOutputBitstream::~TComOutputBitstream ()
 
Void TComOutputBitstream::write (UInt uiBits, UInt uiNumberOfBits)
 
Void TComOutputBitstream::writeAlignOne ()
 
Void TComOutputBitstream::writeAlignZero ()
 
UCharTComOutputBitstream::getByteStream () const
 
UInt TComOutputBitstream::getByteStreamLength ()
 
Void TComOutputBitstream::clear ()
 
Void TComOutputBitstream::insertAt (const TComOutputBitstream &src, UInt pos)
 
Void TComOutputBitstream::addSubstream (TComOutputBitstream *pcSubstream)
 
Void TComOutputBitstream::writeByteAlignment ()
 
Int TComOutputBitstream::countStartCodeEmulations ()
 returns the number of start code emulations contained in the current buffer More...
 
static const UChar TComCABACTables::sm_aucLPSTable [1<< CONTEXT_STATE_BITS][4]
 
static const UChar TComCABACTables::sm_aucRenormTable [32]
 
 TComDataCU::TComDataCU ()
 
static Void TComInterpolationFilter::filterCopy (Int bitDepth, const Pel *src, Int srcStride, Pel *dst, Int dstStride, Int width, Int height, Bool isFirst, Bool isLast)
 Apply unit FIR filter to a block of samples. More...
 
template<Int N, Bool isVertical, Bool isFirst, Bool isLast>
static Void TComInterpolationFilter::filter (Int bitDepth, Pel const *src, Int srcStride, Pel *dst, Int dstStride, Int width, Int height, TFilterCoeff const *coeff)
 Apply FIR filter to a block of samples. More...
 
template<Int N>
static Void TComInterpolationFilter::filterHor (Int bitDepth, Pel *src, Int srcStride, Pel *dst, Int dstStride, Int width, Int height, Bool isLast, TFilterCoeff const *coeff)
 Filter a block of samples (horizontal) More...
 
template<Int N>
static Void TComInterpolationFilter::filterVer (Int bitDepth, Pel *src, Int srcStride, Pel *dst, Int dstStride, Int width, Int height, Bool isFirst, Bool isLast, TFilterCoeff const *coeff)
 Filter a block of samples (vertical) More...
 
Void TComInterpolationFilter::filterHor (const ComponentID compID, Pel *src, Int srcStride, Pel *dst, Int dstStride, Int width, Int height, Int frac, Bool isLast, const ChromaFormat fmt, const Int bitDepth)
 Filter a block of Luma/Chroma samples (horizontal) More...
 
Void TComInterpolationFilter::filterVer (const ComponentID compID, Pel *src, Int srcStride, Pel *dst, Int dstStride, Int width, Int height, Int frac, Bool isFirst, Bool isLast, const ChromaFormat fmt, const Int bitDepth)
 Filter a block of Luma/Chroma samples (vertical) More...
 
static const TFilterCoeff TComInterpolationFilter::m_lumaFilter [LUMA_INTERPOLATION_FILTER_SUB_SAMPLE_POSITIONS][8]
 Luma filter taps. More...
 
static const TFilterCoeff TComInterpolationFilter::m_chromaFilter [CHROMA_INTERPOLATION_FILTER_SUB_SAMPLE_POSITIONS][4]
 Chroma filter taps. More...
 
#define NTAPS_LUMA   8
 Number of taps for luma. More...
 
#define NTAPS_CHROMA   4
 Number of taps for chroma. More...
 
#define IF_INTERNAL_PREC   14
 Number of bits for internal precision. More...
 
#define IF_FILTER_PREC   6
 Log2 of sum of filter taps. More...
 
#define IF_INTERNAL_OFFS   (1<<(IF_INTERNAL_PREC-1))
 Offset used internally. More...
 
#define DEFAULT_INTRA_TC_OFFSET   2
 Default intra TC offset. More...
 
#define DEBLOCK_SMALLEST_BLOCK   8
 
Void TComCUMvField::create (UInt uiNumPartition)
 
typedef struct _AMVPInfo AMVPInfo
 parameters for AMVP More...
 
Void fillReferenceSamples (const Int bitDepth, const Pel *piRoiOrigin, Pel *piIntraTemp, const Bool *bNeighborFlags, const Int iNumIntraNeighbor, const Int unitWidth, const Int unitHeight, const Int iAboveUnits, const Int iLeftUnits, const UInt uiWidth, const UInt uiHeight, const Int iPicStride)
 padding of unavailable reference samples for intra prediction More...
 
Bool isAboveLeftAvailable (const TComDataCU *pcCU, UInt uiPartIdxLT)
 constrained intra prediction More...
 
Int isAboveAvailable (const TComDataCU *pcCU, UInt uiPartIdxLT, UInt uiPartIdxRT, Bool *bValidFlags)
 
Int isLeftAvailable (const TComDataCU *pcCU, UInt uiPartIdxLT, UInt uiPartIdxLB, Bool *bValidFlags)
 
Int isAboveRightAvailable (const TComDataCU *pcCU, UInt uiPartIdxLT, UInt uiPartIdxRT, Bool *bValidFlags)
 
Int isBelowLeftAvailable (const TComDataCU *pcCU, UInt uiPartIdxLT, UInt uiPartIdxLB, Bool *bValidFlags)
 
 TComPic::TComPic ()
 
virtual TComPic::~TComPic ()
 
Void TComPic::create (const TComSPS &sps, const TComPPS &pps, const Bool bCreateEncoderSourcePicYuv, const Bool bCreateForImmediateReconstruction)
 
Void TComPic::prepareForEncoderSourcePicYuv ()
 
Void TComPic::prepareForReconstruction ()
 
Void TComPic::releaseReconstructionIntermediateData ()
 
Void TComPic::releaseAllReconstructionData ()
 
Void TComPic::releaseEncoderSourceImageData ()
 
virtual Void TComPic::destroy ()
 
Void TComPic::compressMotion ()
 
Bool TComPic::getSAOMergeAvailability (Int currAddr, Int mergeAddr)
 
UInt TComPic::getSubstreamForCtuAddr (const UInt ctuAddr, const Bool bAddressInRaster, TComSlice *pcSlice)
 
 TComPicSym::TComPicSym ()
 
 TComPicYuv::TComPicYuv ()
 
virtual TComPicYuv::~TComPicYuv ()
 
Void TComPicYuv::create (const Int picWidth, const Int picHeight, const ChromaFormat chromaFormatIDC, const UInt maxCUWidth, const UInt maxCUHeight, const UInt maxCUDepth, const Bool bUseMargin)
 if true, then a margin of uiMaxCUWidth+16 and uiMaxCUHeight+16 is created around the image. More...
 
Void TComPicYuv::createWithoutCUInfo (const Int picWidth, const Int picHeight, const ChromaFormat chromaFormatIDC, const Bool bUseMargin=false, const UInt maxCUWidth=0, const UInt maxCUHeight=0)
 used for margin only More...
 
Void TComPicYuv::destroy ()
 
Void TComPicYuv::copyToPic (TComPicYuv *pcPicYuvDst) const
 
Void TComPicYuv::extendPicBorder ()
 
Void TComPicYuv::dump (const std::string &fileName, const BitDepths &bitDepths, const Bool bAppend=false, const Bool bForceTo8Bit=false) const
 
template<UInt OUTPUT_BITDEPTH_DIV8>
static Void md5_block (MD5 &md5, const Pel *plane, UInt n)
 
template<UInt OUTPUT_BITDEPTH_DIV8>
static Void md5_plane (MD5 &md5, const Pel *plane, UInt width, UInt height, UInt stride)
 
UInt compCRC (Int bitdepth, const Pel *plane, UInt width, UInt height, UInt stride, TComPictureHash &digest)
 
UInt calcCRC (const TComPicYuv &pic, TComPictureHash &digest, const BitDepths &bitDepths)
 
UInt compChecksum (Int bitdepth, const Pel *plane, UInt width, UInt height, UInt stride, TComPictureHash &digest, const BitDepths &)
 
UInt calcChecksum (const TComPicYuv &pic, TComPictureHash &digest, const BitDepths &bitDepths)
 
UInt calcMD5 (const TComPicYuv &pic, TComPictureHash &digest, const BitDepths &bitDepths)
 
std::string hashToString (const TComPictureHash &digest, Int numChar)
 
Void TComPrediction::xPredIntraAng (Int bitDepth, const Pel *pSrc, Int srcStride, Pel *pDst, Int dstStride, UInt width, UInt height, ChannelType channelType, UInt dirMode, const Bool bEnableEdgeFilters)
 
Void TComPrediction::xPredIntraPlanar (const Pel *pSrc, Int srcStride, Pel *rpDst, Int dstStride, UInt width, UInt height)
 
Void TComPrediction::xPredInterUni (TComDataCU *pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv *pcYuvPred, Bool bi=false)
 
Void TComPrediction::xPredInterBi (TComDataCU *pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv *pcYuvPred)
 
Void TComPrediction::xPredInterBlk (const ComponentID compID, TComDataCU *cu, TComPicYuv *refPic, UInt partAddr, TComMv *mv, Int width, Int height, TComYuv *dstPic, Bool bi, const Int bitDepth)
 Generate motion-compensated block. More...
 
Void TComPrediction::xWeightedAverage (TComYuv *pcYuvSrc0, TComYuv *pcYuvSrc1, Int iRefIdx0, Int iRefIdx1, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv *pcYuvDst, const BitDepths &clipBitDepths)
 
Void TComPrediction::xDCPredFiltering (const Pel *pSrc, Int iSrcStride, Pel *pDst, Int iDstStride, Int iWidth, Int iHeight, ChannelType channelType)
 
Bool TComPrediction::xCheckIdenticalMotion (TComDataCU *pcCU, UInt PartAddr)
 
Void TComPrediction::destroy ()
 
 TComPrediction::TComPrediction ()
 
virtual TComPrediction::~TComPrediction ()
 
Void TComPrediction::initTempBuff (ChromaFormat chromaFormatIDC)
 
Void TComPrediction::motionCompensation (TComDataCU *pcCU, TComYuv *pcYuvPred, RefPicList eRefPicList=REF_PIC_LIST_X, Int iPartIdx=-1)
 
Void TComPrediction::getMvPredAMVP (TComDataCU *pcCU, UInt uiPartIdx, UInt uiPartAddr, RefPicList eRefPicList, TComMv &rcMvPred)
 
Void TComPrediction::predIntraAng (const ComponentID compID, UInt uiDirMode, Pel *piOrg, UInt uiOrgStride, Pel *piPred, UInt uiStride, TComTU &rTu, const Bool bUseFilteredPredSamples, const Bool bUseLosslessDPCM=false)
 
Pel TComPrediction::predIntraGetPredValDC (const Pel *pSrc, Int iSrcStride, UInt iWidth, UInt iHeight)
 
Bool TComPrediction::checkTMctsMvp (TComDataCU *pcCU, Int partIdx=-1)
 
static Bool TComPrediction::UseDPCMForFirstPassIntraEstimation (TComTU &rTu, const UInt uiDirMode)
 
static const UChar TComPrediction::m_aucIntraFilter [MAX_NUM_CHANNEL_TYPE][MAX_INTRA_FILTER_DEPTHS]
 
enum  PRED_BUF_E { PRED_BUF_UNFILTERED =0, PRED_BUF_FILTERED =1, NUM_PRED_BUF =2 }
 prediction class More...
 
typedef enum PRED_BUF_E PRED_BUF
 prediction class More...
 
static const UInt MAX_INTRA_FILTER_DEPTHS =5
 
 TComRdCost::TComRdCost ()
 
virtual TComRdCost::~TComRdCost ()
 
Double TComRdCost::calcRdCost (Double numBits, Double distortion, DFunc eDFunc=DF_DEFAULT)
 
Void TComRdCost::setLambda (Double dLambda, const BitDepths &bitDepths)
 
Void TComRdCost::init ()
 
Void TComRdCost::setDistParam (UInt uiBlkWidth, UInt uiBlkHeight, DFunc eDFunc, DistParam &rcDistParam)
 
Void TComRdCost::setDistParam (const TComPattern *const pcPatternKey, const Pel *piRefY, Int iRefStride, DistParam &rcDistParam)
 
Void TComRdCost::setDistParam (const TComPattern *const pcPatternKey, const Pel *piRefY, Int iRefStride, Int iStep, DistParam &rcDistParam, Bool bHADME=false)
 
Void TComRdCost::setDistParam (DistParam &rcDP, Int bitDepth, const Pel *p1, Int iStride1, const Pel *p2, Int iStride2, Int iWidth, Int iHeight, Bool bHadamard=false)
 
Distortion TComRdCost::calcHAD (Int bitDepth, const Pel *pi0, Int iStride0, const Pel *pi1, Int iStride1, Int iWidth, Int iHeight)
 
Distortion TComRdCost::getDistPart (Int bitDepth, const Pel *piCur, Int iCurStride, const Pel *piOrg, Int iOrgStride, UInt uiBlkWidth, UInt uiBlkHeight, const ComponentID compID, DFunc eDFunc=DF_SSE)
 
static UInt TComRdCost::xGetExpGolombNumberOfBits (Int iVal)
 
static Distortion TComRdCost::xGetSSE (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSSE4 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSSE8 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSSE16 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSSE32 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSSE64 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSSE16N (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD4 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD8 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD16 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD32 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD64 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD16N (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD12 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD24 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetSAD48 (DistParam *pcDtParam)
 
static Distortion TComRdCost::xGetHADs (DistParam *pcDtParam)
 
static Distortion TComRdCost::xCalcHADs2x2 (const Pel *piOrg, const Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep)
 
static Distortion TComRdCost::xCalcHADs4x4 (const Pel *piOrg, const Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep)
 
static Distortion TComRdCost::xCalcHADs8x8 (const Pel *piOrg, const Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep)
 
const TCharnalUnitTypeToString (NalUnitType type)
 
Void initROM ()
 
 SAOOffset::SAOOffset ()
 
 SAOOffset::~SAOOffset ()
 
Void SAOOffset::reset ()
 
const SAOOffsetSAOOffset::operator= (const SAOOffset &src)
 
template<typename T >
Int sgn (T val)
 
#define MAX_SAO_TRUNCATED_BITDEPTH   10
 
 TComSlice::TComSlice ()
 
virtual TComSlice::~TComSlice ()
 
Void TComSlice::initSlice ()
 
Void TComSlice::checkColRefIdx (UInt curSliceIdx, TComPic *pic)
 
Int TComSlice::getNumRpsCurrTempList () const
 
Bool TComSlice::getRapPicFlag () const
 
Void TComSlice::checkCRA (const TComReferencePictureSet *pReferencePictureSet, Int &pocCRA, NalUnitType &associatedIRAPType, TComList< TComPic * > &rcListPic)
 
Void TComSlice::decodingRefreshMarking (Int &pocCRA, Bool &bRefreshPending, TComList< TComPic * > &rcListPic, const bool bEfficientFieldIRAPEnabled)
 
Void TComSlice::setRefPicList (TComList< TComPic * > &rcListPic, Bool checkNumPocTotalCurr=false)
 
Void TComSlice::setRefPOCList ()
 
Void TComSlice::initEqualRef ()
 
Void TComSlice::setList1IdxToList0Idx ()
 
Void TComSlice::setTLayerInfo (UInt uiTLayer)
 
Void TComSlice::checkLeadingPictureRestrictions (TComList< TComPic * > &rcListPic)
 
Void TComSlice::applyReferencePictureSet (TComList< TComPic * > &rcListPic, const TComReferencePictureSet *RPSList)
 
Bool TComSlice::isTemporalLayerSwitchingPoint (TComList< TComPic * > &rcListPic)
 
Bool TComSlice::isStepwiseTemporalLayerSwitchingPointCandidate (TComList< TComPic * > &rcListPic)
 
Int TComSlice::checkThatAllRefPicsAreAvailable (TComList< TComPic * > &rcListPic, const TComReferencePictureSet *pReferencePictureSet, Bool printErrors, Int pocRandomAccess=0, Bool bUseRecoveryPoint=false)
 
Void TComSlice::createExplicitReferencePictureSetFromReference (TComList< TComPic * > &rcListPic, const TComReferencePictureSet *pReferencePictureSet, Bool isRAP, Int pocRandomAccess, Bool bUseRecoveryPoint, const Bool bEfficientFieldIRAPEnabled)
 
Void TComSlice::copySliceInfo (TComSlice *pcSliceSrc)
 
Void TComSlice::getWpScaling (RefPicList e, Int iRefIdx, WPScalingParam *&wp)
 get tables for weighted prediction More...
 
Void TComSlice::resetWpScaling ()
 reset Default WP tables settings : no weight. More...
 
Void TComSlice::initWpScaling (const TComSPS *sps)
 init WP table More...
 
Void TComSlice::getWpAcDcParam (WPACDCParam *&wp)
 get AC and DC values for weighted pred More...
 
Void TComSlice::initWpAcDcParam ()
 init AC and DC values for weighted pred More...
 
static Void TComSlice::sortPicList (TComList< TComPic * > &rcListPic)
 
TComPicTComSlice::xGetRefPic (TComList< TComPic * > &rcListPic, Int poc)
 
TComPicTComSlice::xGetLongTermRefPic (TComList< TComPic * > &rcListPic, Int poc, Bool pocHasMsb)
 
Void partialButterfly4 (TCoeff *src, TCoeff *dst, Int shift, Int line)
 
Void fastForwardDst (TCoeff *block, TCoeff *coeff, Int shift)
 
Void fastInverseDst (TCoeff *tmp, TCoeff *block, Int shift, const TCoeff outputMinimum, const TCoeff outputMaximum)
 
Void partialButterflyInverse4 (TCoeff *src, TCoeff *dst, Int shift, Int line, const TCoeff outputMinimum, const TCoeff outputMaximum)
 
Void partialButterfly8 (TCoeff *src, TCoeff *dst, Int shift, Int line)
 
Void partialButterflyInverse8 (TCoeff *src, TCoeff *dst, Int shift, Int line, const TCoeff outputMinimum, const TCoeff outputMaximum)
 
Void partialButterfly16 (TCoeff *src, TCoeff *dst, Int shift, Int line)
 
Void partialButterflyInverse16 (TCoeff *src, TCoeff *dst, Int shift, Int line, const TCoeff outputMinimum, const TCoeff outputMaximum)
 
Void partialButterfly32 (TCoeff *src, TCoeff *dst, Int shift, Int line)
 
Void partialButterflyInverse32 (TCoeff *src, TCoeff *dst, Int shift, Int line, const TCoeff outputMinimum, const TCoeff outputMaximum)
 
Void xTrMxN (Int bitDepth, TCoeff *block, TCoeff *coeff, Int iWidth, Int iHeight, Bool useDST, const Int maxLog2TrDynamicRange)
 
Void xITrMxN (Int bitDepth, TCoeff *coeff, TCoeff *block, Int iWidth, Int iHeight, Bool useDST, const Int maxLog2TrDynamicRange)
 
#define RDOQ_CHROMA   1
 use of RDOQ in chroma More...
 
#define QP_BITS   15
 
 TComYuv::TComYuv ()
 
virtual TComYuv::~TComYuv ()
 
Void TComYuv::create (const UInt iWidth, const UInt iHeight, const ChromaFormat chromaFormatIDC)
 Create YUV buffer. More...
 
Void TComYuv::destroy ()
 Destroy YUV buffer. More...
 
Void TComYuv::clear ()
 clear YUV buffer More...
 
Void TComYuv::copyToPicYuv (TComPicYuv *pcPicYuvDst, const UInt ctuRsAddr, const UInt uiAbsZorderIdx, const UInt uiPartDepth=0, const UInt uiPartIdx=0) const
 
Void TComYuv::copyToPicComponent (const ComponentID id, TComPicYuv *pcPicYuvDst, const UInt iCtuRsAddr, const UInt uiAbsZorderIdx, const UInt uiPartDepth=0, const UInt uiPartIdx=0) const
 
Void TComYuv::copyFromPicYuv (const TComPicYuv *pcPicYuvSrc, const UInt ctuRsAddr, const UInt uiAbsZorderIdx)
 
Void TComYuv::copyFromPicComponent (const ComponentID id, const TComPicYuv *pcPicYuvSrc, const UInt iCtuRsAddr, const UInt uiAbsZorderIdx)
 
Void TComYuv::copyToPartYuv (TComYuv *pcYuvDst, const UInt uiDstPartIdx) const
 
Void TComYuv::copyToPartComponent (const ComponentID id, TComYuv *pcYuvDst, const UInt uiDstPartIdx) const
 
Void TComYuv::copyPartToYuv (TComYuv *pcYuvDst, const UInt uiSrcPartIdx) const
 
Void TComYuv::copyPartToComponent (const ComponentID id, TComYuv *pcYuvDst, const UInt uiSrcPartIdx) const
 
Void TComYuv::copyPartToPartYuv (TComYuv *pcYuvDst, const UInt uiPartIdx, const UInt uiWidth, const UInt uiHeight) const
 
Void TComYuv::copyPartToPartComponent (const ComponentID id, TComYuv *pcYuvDst, const UInt uiPartIdx, const UInt uiWidthComponent, const UInt uiHeightComponent) const
 
Void TComYuv::copyPartToPartComponentMxN (const ComponentID id, TComYuv *pcYuvDst, const TComRectangle &rect) const
 
Void TComYuv::addClip (const TComYuv *pcYuvSrc0, const TComYuv *pcYuvSrc1, const UInt uiTrUnitIdx, const UInt uiPartSize, const BitDepths &clipBitDepths)
 
Void TComYuv::subtract (const TComYuv *pcYuvSrc0, const TComYuv *pcYuvSrc1, const UInt uiTrUnitIdx, const UInt uiPartSize)
 
Void TComYuv::addAvg (const TComYuv *pcYuvSrc0, const TComYuv *pcYuvSrc1, const UInt iPartUnitIdx, const UInt iWidth, const UInt iHeight, const BitDepths &clipBitDepths)
 
Void TComYuv::removeHighFreq (const TComYuv *pcYuvSrc, const UInt uiPartIdx, const UInt uiWidth, const UInt uiHeight, const Int bitDepths[MAX_NUM_CHANNEL_TYPE], const Bool bClipToBitDepths)
 
enum  RDPCMMode { RDPCM_OFF = 0, RDPCM_HOR = 1, RDPCM_VER = 2, NUMBER_OF_RDPCM_MODES = 3 }
 
enum  RDPCMSignallingMode { RDPCM_SIGNAL_IMPLICIT = 0, RDPCM_SIGNAL_EXPLICIT = 1, NUMBER_OF_RDPCM_SIGNALLING_MODES = 2 }
 
enum  SliceType { B_SLICE = 0, P_SLICE = 1, I_SLICE = 2, NUMBER_OF_SLICE_TYPES = 3 }
 supported slice type More...
 
enum  ChromaFormat {
  CHROMA_400 = 0, CHROMA_420 = 1, CHROMA_422 = 2, CHROMA_444 = 3,
  NUM_CHROMA_FORMAT = 4
}
 chroma formats (according to semantics of chroma_format_idc) More...
 
enum  ChannelType { CHANNEL_TYPE_LUMA = 0, CHANNEL_TYPE_CHROMA = 1, MAX_NUM_CHANNEL_TYPE = 2 }
 
enum  ComponentID { COMPONENT_Y = 0, COMPONENT_Cb = 1, COMPONENT_Cr = 2, MAX_NUM_COMPONENT = 3 }
 
enum  InputColourSpaceConversion {
  IPCOLOURSPACE_UNCHANGED = 0, IPCOLOURSPACE_YCbCrtoYCrCb = 1, IPCOLOURSPACE_YCbCrtoYYY = 2, IPCOLOURSPACE_RGBtoGBR = 3,
  NUMBER_INPUT_COLOUR_SPACE_CONVERSIONS = 4
}
 
enum  MATRIX_COEFFICIENTS {
  MATRIX_COEFFICIENTS_RGB = 0, MATRIX_COEFFICIENTS_BT709 = 1, MATRIX_COEFFICIENTS_UNSPECIFIED = 2, MATRIX_COEFFICIENTS_RESERVED_BY_ITUISOIEC = 3,
  MATRIX_COEFFICIENTS_USFCCT47 = 4, MATRIX_COEFFICIENTS_BT601_625 = 5, MATRIX_COEFFICIENTS_BT601_525 = 6, MATRIX_COEFFICIENTS_SMPTE240 = 7,
  MATRIX_COEFFICIENTS_YCGCO = 8, MATRIX_COEFFICIENTS_BT2020_NON_CONSTANT_LUMINANCE = 9, MATRIX_COEFFICIENTS_BT2020_CONSTANT_LUMINANCE = 10
}
 
enum  DeblockEdgeDir { EDGE_VER = 0, EDGE_HOR = 1, NUM_EDGE_DIR = 2 }
 
enum  PartSize {
  SIZE_2Nx2N = 0, SIZE_2NxN = 1, SIZE_Nx2N = 2, SIZE_NxN = 3,
  SIZE_2NxnU = 4, SIZE_2NxnD = 5, SIZE_nLx2N = 6, SIZE_nRx2N = 7,
  NUMBER_OF_PART_SIZES = 8
}
 supported partition shape More...
 
enum  PredMode { MODE_INTER = 0, MODE_INTRA = 1, NUMBER_OF_PREDICTION_MODES = 2 }
 supported prediction type More...
 
enum  RefPicList { REF_PIC_LIST_0 = 0, REF_PIC_LIST_1 = 1, NUM_REF_PIC_LIST_01 = 2, REF_PIC_LIST_X = 100 }
 reference list index More...
 
enum  DFunc {
  DF_DEFAULT = 0, DF_SSE = 1, DF_SSE4 = 2, DF_SSE8 = 3,
  DF_SSE16 = 4, DF_SSE32 = 5, DF_SSE64 = 6, DF_SSE16N = 7,
  DF_SAD = 8, DF_SAD4 = 9, DF_SAD8 = 10, DF_SAD16 = 11,
  DF_SAD32 = 12, DF_SAD64 = 13, DF_SAD16N = 14, DF_SADS = 15,
  DF_SADS4 = 16, DF_SADS8 = 17, DF_SADS16 = 18, DF_SADS32 = 19,
  DF_SADS64 = 20, DF_SADS16N = 21, DF_HADS = 22, DF_HADS4 = 23,
  DF_HADS8 = 24, DF_HADS16 = 25, DF_HADS32 = 26, DF_HADS64 = 27,
  DF_HADS16N = 28, DF_SAD12 = 43, DF_SAD24 = 44, DF_SAD48 = 45,
  DF_SADS12 = 46, DF_SADS24 = 47, DF_SADS48 = 48, DF_SSE_FRAME = 50,
  DF_TOTAL_FUNCTIONS = 64
}
 distortion function index More...
 
enum  CI_IDX {
  CI_CURR_BEST = 0, CI_NEXT_BEST, CI_TEMP_BEST, CI_CHROMA_INTRA,
  CI_QT_TRAFO_TEST, CI_QT_TRAFO_ROOT, CI_NUM
}
 index for SBAC based RD optimization More...
 
enum  MVP_DIR {
  MD_LEFT = 0, MD_ABOVE, MD_ABOVE_RIGHT, MD_BELOW_LEFT,
  MD_ABOVE_LEFT
}
 motion vector predictor direction used in AMVP More...
 
enum  StoredResidualType { RESIDUAL_RECONSTRUCTED = 0, RESIDUAL_ENCODER_SIDE = 1, NUMBER_OF_STORED_RESIDUAL_TYPES = 2 }
 
enum  TransformDirection { TRANSFORM_FORWARD = 0, TRANSFORM_INVERSE = 1, TRANSFORM_NUMBER_OF_DIRECTIONS = 2 }
 
enum  MESearchMethod {
  MESEARCH_FULL = 0, MESEARCH_DIAMOND = 1, MESEARCH_SELECTIVE = 2, MESEARCH_DIAMOND_ENHANCED = 3,
  MESEARCH_NUMBER_OF_METHODS = 4
}
 supported ME search methods More...
 
enum  COEFF_SCAN_TYPE { SCAN_DIAG = 0, SCAN_HOR = 1, SCAN_VER = 2, SCAN_NUMBER_OF_TYPES = 3 }
 coefficient scanning type used in ACS More...
 
enum  COEFF_SCAN_GROUP_TYPE { SCAN_UNGROUPED = 0, SCAN_GROUPED_4x4 = 1, SCAN_NUMBER_OF_GROUP_TYPES = 2 }
 
enum  SignificanceMapContextType {
  CONTEXT_TYPE_4x4 = 0, CONTEXT_TYPE_8x8 = 1, CONTEXT_TYPE_NxN = 2, CONTEXT_TYPE_SINGLE = 3,
  CONTEXT_NUMBER_OF_TYPES = 4
}
 
enum  ScalingListMode { SCALING_LIST_OFF, SCALING_LIST_DEFAULT, SCALING_LIST_FILE_READ }
 
enum  ScalingListSize {
  SCALING_LIST_4x4 = 0, SCALING_LIST_8x8, SCALING_LIST_16x16, SCALING_LIST_32x32,
  SCALING_LIST_SIZE_NUM
}
 
enum  SliceConstraint {
  NO_SLICES = 0, FIXED_NUMBER_OF_CTU = 1, FIXED_NUMBER_OF_BYTES = 2, FIXED_NUMBER_OF_TILES = 3,
  NUMBER_OF_SLICE_CONSTRAINT_MODES = 4
}
 
enum  HashType {
  HASHTYPE_MD5 = 0, HASHTYPE_CRC = 1, HASHTYPE_CHECKSUM = 2, HASHTYPE_NONE = 3,
  NUMBER_OF_HASHTYPES = 4
}
 
enum  SAOMode { SAO_MODE_OFF = 0, SAO_MODE_NEW, SAO_MODE_MERGE, NUM_SAO_MODES }
 
enum  SAOModeMergeTypes { SAO_MERGE_LEFT =0, SAO_MERGE_ABOVE, NUM_SAO_MERGE_TYPES }
 
enum  SAOModeNewTypes {
  SAO_TYPE_START_EO =0, SAO_TYPE_EO_0 = SAO_TYPE_START_EO, SAO_TYPE_EO_90, SAO_TYPE_EO_135,
  SAO_TYPE_EO_45, SAO_TYPE_START_BO, SAO_TYPE_BO = SAO_TYPE_START_BO, NUM_SAO_NEW_TYPES
}
 
enum  SAOEOClasses {
  SAO_CLASS_EO_FULL_VALLEY = 0, SAO_CLASS_EO_HALF_VALLEY = 1, SAO_CLASS_EO_PLAIN = 2, SAO_CLASS_EO_HALF_PEAK = 3,
  SAO_CLASS_EO_FULL_PEAK = 4, NUM_SAO_EO_CLASSES
}
 
enum  CostMode { COST_STANDARD_LOSSY = 0, COST_SEQUENCE_LEVEL_LOSSLESS = 1, COST_LOSSLESS_CODING = 2, COST_MIXED_LOSSLESS_LOSSY_CODING = 3 }
 
enum  WeightedPredictionMethod {
  WP_PER_PICTURE_WITH_SIMPLE_DC_COMBINED_COMPONENT =0, WP_PER_PICTURE_WITH_SIMPLE_DC_PER_COMPONENT =1, WP_PER_PICTURE_WITH_HISTOGRAM_AND_PER_COMPONENT =2, WP_PER_PICTURE_WITH_HISTOGRAM_AND_PER_COMPONENT_AND_CLIPPING =3,
  WP_PER_PICTURE_WITH_HISTOGRAM_AND_PER_COMPONENT_AND_CLIPPING_AND_EXTENSION =4
}
 
enum  FastInterSearchMode { FASTINTERSEARCH_DISABLED = 0, FASTINTERSEARCH_MODE1 = 1, FASTINTERSEARCH_MODE2 = 2, FASTINTERSEARCH_MODE3 = 3 }
 
enum  SPSExtensionFlagIndex { SPS_EXT__REXT = 0, NUM_SPS_EXTENSION_FLAGS = 8 }
 
enum  PPSExtensionFlagIndex { PPS_EXT__REXT = 0, NUM_PPS_EXTENSION_FLAGS = 8 }
 
enum  NalUnitType {
  NAL_UNIT_CODED_SLICE_TRAIL_N = 0, NAL_UNIT_CODED_SLICE_TRAIL_R, NAL_UNIT_CODED_SLICE_TSA_N, NAL_UNIT_CODED_SLICE_TSA_R,
  NAL_UNIT_CODED_SLICE_STSA_N, NAL_UNIT_CODED_SLICE_STSA_R, NAL_UNIT_CODED_SLICE_RADL_N, NAL_UNIT_CODED_SLICE_RADL_R,
  NAL_UNIT_CODED_SLICE_RASL_N, NAL_UNIT_CODED_SLICE_RASL_R, NAL_UNIT_RESERVED_VCL_N10, NAL_UNIT_RESERVED_VCL_R11,
  NAL_UNIT_RESERVED_VCL_N12, NAL_UNIT_RESERVED_VCL_R13, NAL_UNIT_RESERVED_VCL_N14, NAL_UNIT_RESERVED_VCL_R15,
  NAL_UNIT_CODED_SLICE_BLA_W_LP, NAL_UNIT_CODED_SLICE_BLA_W_RADL, NAL_UNIT_CODED_SLICE_BLA_N_LP, NAL_UNIT_CODED_SLICE_IDR_W_RADL,
  NAL_UNIT_CODED_SLICE_IDR_N_LP, NAL_UNIT_CODED_SLICE_CRA, NAL_UNIT_RESERVED_IRAP_VCL22, NAL_UNIT_RESERVED_IRAP_VCL23,
  NAL_UNIT_RESERVED_VCL24, NAL_UNIT_RESERVED_VCL25, NAL_UNIT_RESERVED_VCL26, NAL_UNIT_RESERVED_VCL27,
  NAL_UNIT_RESERVED_VCL28, NAL_UNIT_RESERVED_VCL29, NAL_UNIT_RESERVED_VCL30, NAL_UNIT_RESERVED_VCL31,
  NAL_UNIT_VPS, NAL_UNIT_SPS, NAL_UNIT_PPS, NAL_UNIT_ACCESS_UNIT_DELIMITER,
  NAL_UNIT_EOS, NAL_UNIT_EOB, NAL_UNIT_FILLER_DATA, NAL_UNIT_PREFIX_SEI,
  NAL_UNIT_SUFFIX_SEI, NAL_UNIT_RESERVED_NVCL41, NAL_UNIT_RESERVED_NVCL42, NAL_UNIT_RESERVED_NVCL43,
  NAL_UNIT_RESERVED_NVCL44, NAL_UNIT_RESERVED_NVCL45, NAL_UNIT_RESERVED_NVCL46, NAL_UNIT_RESERVED_NVCL47,
  NAL_UNIT_UNSPECIFIED_48, NAL_UNIT_UNSPECIFIED_49, NAL_UNIT_UNSPECIFIED_50, NAL_UNIT_UNSPECIFIED_51,
  NAL_UNIT_UNSPECIFIED_52, NAL_UNIT_UNSPECIFIED_53, NAL_UNIT_UNSPECIFIED_54, NAL_UNIT_UNSPECIFIED_55,
  NAL_UNIT_UNSPECIFIED_56, NAL_UNIT_UNSPECIFIED_57, NAL_UNIT_UNSPECIFIED_58, NAL_UNIT_UNSPECIFIED_59,
  NAL_UNIT_UNSPECIFIED_60, NAL_UNIT_UNSPECIFIED_61, NAL_UNIT_UNSPECIFIED_62, NAL_UNIT_UNSPECIFIED_63,
  NAL_UNIT_INVALID
}
 
enum  LumaLevelToDQPMode { LUMALVL_TO_DQP_DISABLED = 0, LUMALVL_TO_DQP_AVG_METHOD = 1, LUMALVL_TO_DQP_MAX_METHOD = 2, LUMALVL_TO_DQP_NUM_MODES = 3 }
 
typedef void Void
 
typedef bool Bool
 
typedef char TChar
 
typedef signed char SChar
 
typedef unsigned char UChar
 
typedef short Short
 
typedef unsigned short UShort
 
typedef int Int
 
typedef unsigned int UInt
 
typedef double Double
 
typedef float Float
 
typedef long long Int64
 
typedef unsigned long long UInt64
 
typedef Short Pel
 pixel type More...
 
typedef Int TCoeff
 transform coefficient More...
 
typedef Short TMatrixCoeff
 transform matrix coefficient More...
 
typedef Short TFilterCoeff
 filter coefficient More...
 
typedef Int Intermediate_Int
 used as intermediate value in calculations More...
 
typedef UInt Intermediate_UInt
 used as intermediate value in calculations More...
 
typedef UInt Distortion
 distortion measurement More...
 
typedef struct _LFCUParam LFCUParam
 parameters for deblocking filter More...
 
typedef std::vector< RNSEIWindowRNSEIWindowVec
 
#define DEBUG_STRING   0
 When enabled, prints out final decision debug info at encoder and decoder. More...
 
#define DEBUG_ENCODER_SEARCH_BINS   0
 When enabled, prints out each bin as it is coded during encoder search. More...
 
#define DEBUG_CABAC_BINS   0
 When enabled, prints out each bin as it is coded during final encode and decode. More...
 
#define DEBUG_INTRA_SEARCH_COSTS   0
 When enabled, prints out the cost for each mode during encoder search. More...
 
#define DEBUG_TRANSFORM_AND_QUANTISE   0
 When enabled, prints out each TU as it passes through the transform-quantise-dequantise-inverseTransform process. More...
 
#define ENVIRONMENT_VARIABLE_DEBUG_AND_TEST   0
 When enabled, allows control of debug modifications via environment variables. More...
 
#define PRINT_MACRO_VALUES   1
 When enabled, the encoder prints out a list of the non-environment-variable controlled macros and their values on startup. More...
 
#define RExt__DECODER_DEBUG_BIT_STATISTICS   0
 0 (default) = decoder reports as normal, 1 = decoder produces bit usage statistics (will impact decoder run time by up to ~10%) More...
 
#define ENC_DEC_TRACE   0
 
#define DEC_NUH_TRACE   0
 When trace enabled, enable tracing of NAL unit headers at the decoder (currently not possible at the encoder) More...
 
#define PRINT_RPS_INFO   0
 Enable/disable the printing of bits used to send the RPS. More...
 
#define DECODER_CHECK_SUBSTREAM_AND_SLICE_TRAILING_BYTES   1
 TODO: integrate this macro into a broader conformance checking system. More...
 
#define X0038_LAMBDA_FROM_QP_CAPABILITY   1
 This approach derives lambda from QP+QPoffset+QPoffset2. QPoffset2 is derived from QP+QPoffset using a linear model that is clipped between 0 and 3. More...
 
#define JCTVC_Y0038_PARAMS   1
 
#define JVET_E0059_FLOATING_POINT_QP_FIX   1
 Replace floating point QP with a source-file frame number. More...
 
#define JVET_G0101_QP_SWITCHING   1
 After switching POC, increase base QP instead of frame level QP. More...
 
#define JVET_F0064_MSSSIM   1
 Calculate MS-SSIM scores. More...
 
#define EXTENSION_360_VIDEO   0
 extension for 360/spherical video coding support; this macro should be controlled by makefile, as it would be used to control whether the library is built and linked More...
 
#define MCTS_ENC_CHECK   1
 Temporal MCTS encoder constraint and decoder checks. Also requires SEITMCTSTileConstraint to be enabled to enforce constraint. More...
 
#define CCV_SEI_MESSAGE   1
 
#define RWP_SEI_MESSAGE   1
 
#define CMP_SEI_MESSAGE   1
 
#define ERP_SR_OV_SEI_MESSAGE   1
 
#define RNSEI   1
 Support for signalling regional nesting SEI message. More...
 
#define REDUCED_ENCODER_MEMORY   1
 When 1, the encoder will allocate TComPic memory when required and release it when no longer required. More...
 
#define ADAPTIVE_QP_SELECTION   1
 G382: Adaptive reconstruction levels, non-normative part for adaptive QP selection. More...
 
#define AMP_ENC_SPEEDUP   1
 encoder only speed-up by AMP mode skipping More...
 
#define AMP_MRG   1
 encoder only force merge for AMP partition (no motion search for AMP) More...
 
#define FAST_BIT_EST   1
 G763: Table-based bit estimation for CABAC. More...
 
#define HHI_RQT_INTRA_SPEEDUP   1
 tests one best mode with full rqt More...
 
#define HHI_RQT_INTRA_SPEEDUP_MOD   0
 tests two best modes with full rqt More...
 
#define MATRIX_MULT   0
 Brute force matrix multiplication instead of partial butterfly. More...
 
#define O0043_BEST_EFFORT_DECODING   0
 0 (default) = disable code related to best effort decoding, 1 = enable code relating to best effort decoding [ decode-side only ]. More...
 
#define ME_ENABLE_ROUNDING_OF_MVS   1
 0 (default) = disables rounding of motion vectors when right shifted, 1 = enables rounding More...
 
#define RDOQ_CHROMA_LAMBDA   1
 F386: weighting of chroma for RDOQ. More...
 
#define RExt__HIGH_BIT_DEPTH_SUPPORT   0
 0 (default) use data type definitions for 8-10 bit video, 1 = use larger data types to allow for up to 16-bit video (originally developed as part of N0188) More...
 
#define VECTOR_CODING__INTERPOLATION_FILTER   0
 enable vector coding for the interpolation filter. 0 (default if SSE not possible) disable SSE vector coding. Should not affect RD costs/decisions. Code back-ported from JEM2.0. More...
 
#define VECTOR_CODING__DISTORTION_CALCULATIONS   0
 enable vector coding for distortion calculations 0 (default if SSE not possible) disable SSE vector coding. Should not affect RD costs/decisions. Code back-ported from JEM2.0. More...
 
#define FULL_NBIT   0
 When enabled, use distortion measure derived from all bits of source data, otherwise discard (bitDepth - 8) least-significant bits of distortion. More...
 
#define RExt__HIGH_PRECISION_FORWARD_TRANSFORM   0
 0 (default) use original 6-bit transform matrices for both forward and inverse transform, 1 = use original matrices for inverse transform and high precision matrices for forward transform More...
 
#define DISTORTION_PRECISION_ADJUSTMENT(x)   (x)
 
#define DEBUG_STRING_PASS_INTO(name)
 
#define DEBUG_STRING_PASS_INTO_OPTIONAL(name, exp)
 
#define DEBUG_STRING_FN_DECLARE(name)
 
#define DEBUG_STRING_FN_DECLAREP(name)
 
#define DEBUG_STRING_NEW(name)
 
#define DEBUG_STRING_OUTPUT(os, name)
 
#define DEBUG_STRING_APPEND(str1, str2)
 
#define DEBUG_STRING_SWAP(srt1, str2)
 
#define DEBUG_STRING_CHANNEL_CONDITION(compID)
 
#define NUM_SAO_EO_TYPES_LOG2   2
 
#define NUM_SAO_BO_CLASSES_LOG2   5
 
#define NUM_SAO_BO_CLASSES   (1<<NUM_SAO_BO_CLASSES_LOG2)
 
#define MAX_NUM_SAO_CLASSES   32
 

Detailed Description

Macro Definition Documentation

#define ADAPTIVE_QP_SELECTION   1

G382: Adaptive reconstruction levels, non-normative part for adaptive QP selection.

Definition at line 112 of file TypeDef.h.

#define AMP_ENC_SPEEDUP   1

encoder only speed-up by AMP mode skipping

Definition at line 114 of file TypeDef.h.

#define AMP_MRG   1

encoder only force merge for AMP partition (no motion search for AMP)

Definition at line 116 of file TypeDef.h.

#define BSLICE_CHROMA_ABS_CONTEXT   107, 167

Definition at line 410 of file ContextTables.h.

#define BSLICE_CHROMA_CBF_CONTEXT   149, 92, 167, 154, 154

Definition at line 301 of file ContextTables.h.

#define BSLICE_CHROMA_LAST_POSITION_CONTEXT   108, 123, 93, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU

Definition at line 335 of file ContextTables.h.

#define BSLICE_CHROMA_ONE_CONTEXT   169, 208, 166, 167, 154, 152, 167, 182

Definition at line 406 of file ContextTables.h.

#define BSLICE_CHROMA_SIGNIFICANCE_CONTEXT   170, 153, 138, 138, 122, 121, 122, 121, 167, 151, 183, 140, 151, 183, 140, 140

Definition at line 377 of file ContextTables.h.

#define BSLICE_LUMA_ABS_CONTEXT   107, 167, 91, 107

Definition at line 401 of file ContextTables.h.

#define BSLICE_LUMA_CBF_CONTEXT   153, 111, CNU, CNU, CNU

Definition at line 297 of file ContextTables.h.

#define BSLICE_LUMA_LAST_POSITION_CONTEXT   125, 110, 124, 110, 95, 94, 125, 111, 111, 79, 125, 126, 111, 111, 79

Definition at line 331 of file ContextTables.h.

#define BSLICE_LUMA_ONE_CONTEXT   154, 196, 167, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 122

Definition at line 397 of file ContextTables.h.

#define BSLICE_LUMA_SIGNIFICANCE_CONTEXT   170, 154, 139, 153, 139, 123, 123, 63, 124, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140

Definition at line 372 of file ContextTables.h.

#define CCV_SEI_MESSAGE   1

Definition at line 98 of file TypeDef.h.

#define CMP_SEI_MESSAGE   1

Definition at line 100 of file TypeDef.h.

#define CNU   154

dummy initialization value for unused context models 'Context model Not Used'

Definition at line 163 of file ContextTables.h.

#define DATA_ALIGN   1

use 32-bit aligned malloc/free

Definition at line 265 of file CommonDef.h.

#define DEBLOCK_SMALLEST_BLOCK   8

Definition at line 47 of file TComLoopFilter.h.

#define DEBUG_CABAC_BINS   0

When enabled, prints out each bin as it is coded during final encode and decode.

Definition at line 58 of file TypeDef.h.

#define DEBUG_ENCODER_SEARCH_BINS   0

When enabled, prints out each bin as it is coded during encoder search.

Definition at line 57 of file TypeDef.h.

#define DEBUG_INTRA_SEARCH_COSTS   0

When enabled, prints out the cost for each mode during encoder search.

Definition at line 59 of file TypeDef.h.

#define DEBUG_STRING   0

When enabled, prints out final decision debug info at encoder and decoder.

Definition at line 56 of file TypeDef.h.

#define DEBUG_STRING_APPEND (   str1,
  str2 
)

Definition at line 186 of file TypeDef.h.

#define DEBUG_STRING_CHANNEL_CONDITION (   compID)

Definition at line 188 of file TypeDef.h.

#define DEBUG_STRING_FN_DECLARE (   name)

Definition at line 182 of file TypeDef.h.

#define DEBUG_STRING_FN_DECLAREP (   name)

Definition at line 183 of file TypeDef.h.

#define DEBUG_STRING_NEW (   name)

Definition at line 184 of file TypeDef.h.

#define DEBUG_STRING_OUTPUT (   os,
  name 
)

Definition at line 185 of file TypeDef.h.

#define DEBUG_STRING_PASS_INTO (   name)

Definition at line 180 of file TypeDef.h.

#define DEBUG_STRING_PASS_INTO_OPTIONAL (   name,
  exp 
)

Definition at line 181 of file TypeDef.h.

#define DEBUG_STRING_SWAP (   srt1,
  str2 
)

Definition at line 187 of file TypeDef.h.

#define DEBUG_TRANSFORM_AND_QUANTISE   0

When enabled, prints out each TU as it passes through the transform-quantise-dequantise-inverseTransform process.

Definition at line 60 of file TypeDef.h.

#define DEC_NUH_TRACE   0

When trace enabled, enable tracing of NAL unit headers at the decoder (currently not possible at the encoder)

Definition at line 75 of file TypeDef.h.

#define DECODER_CHECK_SUBSTREAM_AND_SLICE_TRAILING_BYTES   1

TODO: integrate this macro into a broader conformance checking system.

Definition at line 83 of file TypeDef.h.

#define DEFAULT_INTRA_TC_OFFSET   2

Default intra TC offset.

Definition at line 53 of file TComLoopFilter.cpp.

#define DISTORTION_PRECISION_ADJUSTMENT (   x)    (x)

Definition at line 164 of file TypeDef.h.

#define ENC_DEC_TRACE   0

Definition at line 73 of file TypeDef.h.

#define ENVIRONMENT_VARIABLE_DEBUG_AND_TEST   0

When enabled, allows control of debug modifications via environment variables.

Definition at line 62 of file TypeDef.h.

#define ERP_SR_OV_SEI_MESSAGE   1

Definition at line 101 of file TypeDef.h.

#define EXTENSION_360_VIDEO   0

extension for 360/spherical video coding support; this macro should be controlled by makefile, as it would be used to control whether the library is built and linked

Definition at line 94 of file TypeDef.h.

#define FAST_BIT_EST   1

G763: Table-based bit estimation for CABAC.

Definition at line 119 of file TypeDef.h.

#define FATAL_ERROR_0 (   MESSAGE,
  EXITCODE 
)
Value:
{ \
printf(MESSAGE); \
exit(EXITCODE); \
}

Definition at line 274 of file CommonDef.h.

#define FIRST_CBF_CTX_CHROMA   (FIRST_CBF_CTX_LUMA + NUM_QT_CBF_CTX_PER_SET)

index of first chrominance CBF context

Definition at line 147 of file ContextTables.h.

#define FIRST_CBF_CTX_LUMA   0

index of first luminance CBF context

Definition at line 145 of file ContextTables.h.

#define FIRST_CTX_SET_CHROMA   (FIRST_CTX_SET_LUMA + NUM_CTX_SETS_LUMA)

index of first chrominance context set

Definition at line 135 of file ContextTables.h.

#define FIRST_CTX_SET_LUMA   0

index of first luminance context set

Definition at line 122 of file ContextTables.h.

#define FIRST_SIG_FLAG_CTX_CHROMA   (FIRST_SIG_FLAG_CTX_LUMA + NUM_SIG_FLAG_CTX_LUMA)

Definition at line 98 of file ContextTables.h.

#define FIRST_SIG_FLAG_CTX_LUMA   0

Definition at line 97 of file ContextTables.h.

#define FULL_NBIT   0

When enabled, use distortion measure derived from all bits of source data, otherwise discard (bitDepth - 8) least-significant bits of distortion.

Definition at line 157 of file TypeDef.h.

#define HHI_RQT_INTRA_SPEEDUP   1

tests one best mode with full rqt

Definition at line 121 of file TypeDef.h.

#define HHI_RQT_INTRA_SPEEDUP_MOD   0

tests two best modes with full rqt

Definition at line 122 of file TypeDef.h.

#define IF_FILTER_PREC   6

Log2 of sum of filter taps.

Definition at line 50 of file TComInterpolationFilter.h.

#define IF_INTERNAL_OFFS   (1<<(IF_INTERNAL_PREC-1))

Offset used internally.

Definition at line 51 of file TComInterpolationFilter.h.

#define IF_INTERNAL_PREC   14

Number of bits for internal precision.

Definition at line 49 of file TComInterpolationFilter.h.

#define ISLICE_CHROMA_ABS_CONTEXT   152, 152

Definition at line 412 of file ContextTables.h.

#define ISLICE_CHROMA_CBF_CONTEXT   94, 138, 182, 154, 154

Definition at line 303 of file ContextTables.h.

#define ISLICE_CHROMA_LAST_POSITION_CONTEXT   108, 123, 63, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU

Definition at line 337 of file ContextTables.h.

#define ISLICE_CHROMA_ONE_CONTEXT   140, 179, 166, 182, 140, 227, 122, 197

Definition at line 408 of file ContextTables.h.

#define ISLICE_CHROMA_SIGNIFICANCE_CONTEXT   140, 139, 182, 182, 152, 136, 152, 136, 153, 136, 139, 111, 136, 139, 111, 111

Definition at line 379 of file ContextTables.h.

#define ISLICE_LUMA_ABS_CONTEXT   138, 153, 136, 167

Definition at line 403 of file ContextTables.h.

#define ISLICE_LUMA_CBF_CONTEXT   111, 141, CNU, CNU, CNU

Definition at line 299 of file ContextTables.h.

#define ISLICE_LUMA_LAST_POSITION_CONTEXT   110, 110, 124, 125, 140, 153, 125, 127, 140, 109, 111, 143, 127, 111, 79

Definition at line 333 of file ContextTables.h.

#define ISLICE_LUMA_ONE_CONTEXT   140, 92, 137, 138, 140, 152, 138, 139, 153, 74, 149, 92, 139, 107, 122, 152

Definition at line 399 of file ContextTables.h.

#define ISLICE_LUMA_SIGNIFICANCE_CONTEXT   111, 111, 125, 110, 110, 94, 124, 108, 124, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 141

Definition at line 374 of file ContextTables.h.

#define JCTVC_Y0038_PARAMS   1

Definition at line 86 of file TypeDef.h.

#define JVET_E0059_FLOATING_POINT_QP_FIX   1

Replace floating point QP with a source-file frame number.

Definition at line 88 of file TypeDef.h.

#define JVET_F0064_MSSSIM   1

Calculate MS-SSIM scores.

Definition at line 91 of file TypeDef.h.

#define JVET_G0101_QP_SWITCHING   1

After switching POC, increase base QP instead of frame level QP.

Definition at line 89 of file TypeDef.h.

#define MATRIX_MULT   0

Brute force matrix multiplication instead of partial butterfly.

Definition at line 128 of file TypeDef.h.

#define MAX_NUM_CTX_MOD   512

maximum number of supported contexts

Definition at line 49 of file ContextTables.h.

#define MAX_NUM_SAO_CLASSES   32

Definition at line 757 of file TypeDef.h.

#define MAX_SAO_TRUNCATED_BITDEPTH   10

Definition at line 52 of file TComSampleAdaptiveOffset.h.

#define MCTS_ENC_CHECK   1

Temporal MCTS encoder constraint and decoder checks. Also requires SEITMCTSTileConstraint to be enabled to enforce constraint.

Definition at line 97 of file TypeDef.h.

#define ME_ENABLE_ROUNDING_OF_MVS   1

0 (default) = disables rounding of motion vectors when right shifted, 1 = enables rounding

Definition at line 132 of file TypeDef.h.

#define NEIGHBOURHOOD_00_CONTEXT_1_THRESHOLD_4x4   3

Definition at line 92 of file ContextTables.h.

#define NEIGHBOURHOOD_00_CONTEXT_2_THRESHOLD_4x4   1

Definition at line 93 of file ContextTables.h.

#define NTAPS_CHROMA   4

Number of taps for chroma.

Definition at line 48 of file TComInterpolationFilter.h.

#define NTAPS_LUMA   8

Number of taps for luma.

Definition at line 47 of file TComInterpolationFilter.h.

#define NULL   0

Definition at line 107 of file CommonDef.h.

#define NUM_ABS_FLAG_CTX   (NUM_ABS_FLAG_CTX_LUMA + NUM_ABS_FLAG_CTX_CHROMA)

number of context models for greater than 2 flag

Definition at line 133 of file ContextTables.h.

#define NUM_ABS_FLAG_CTX_CHROMA   (NUM_ABS_FLAG_CTX_PER_SET * NUM_CTX_SETS_CHROMA)

number of context models for greater than 2 flag of chroma

Definition at line 130 of file ContextTables.h.

#define NUM_ABS_FLAG_CTX_LUMA   (NUM_ABS_FLAG_CTX_PER_SET * NUM_CTX_SETS_LUMA)

number of context models for greater than 2 flag of luma

Definition at line 129 of file ContextTables.h.

#define NUM_ABS_FLAG_CTX_PER_SET   1

number of context models for greater than 2 flag in a set

Definition at line 115 of file ContextTables.h.

#define NUM_CHROMA_PRED_CTX   2

number of context models for intra prediction (chroma)

Definition at line 62 of file ContextTables.h.

#define NUM_CHROMA_QP_ADJ_FLAG_CTX   1

number of context models for chroma_qp_adjustment_flag

Definition at line 65 of file ContextTables.h.

#define NUM_CHROMA_QP_ADJ_IDC_CTX   1

number of context models for chroma_qp_adjustment_idc

Definition at line 66 of file ContextTables.h.

#define NUM_CROSS_COMPONENT_PREDICTION_CTX   10

Definition at line 161 of file ContextTables.h.

#define NUM_CTX_LAST_FLAG_SETS   2

Definition at line 106 of file ContextTables.h.

#define NUM_CTX_LAST_FLAG_XY   15

number of context models for last coefficient position

Definition at line 108 of file ContextTables.h.

#define NUM_CTX_SETS_CHROMA   2

number of context model sets for combined chrominance

Definition at line 120 of file ContextTables.h.

#define NUM_CTX_SETS_LUMA   4

number of context model sets for luminance

Definition at line 119 of file ContextTables.h.

#define NUM_CU_TRANSQUANT_BYPASS_FLAG_CTX   1

Definition at line 159 of file ContextTables.h.

#define NUM_DELTA_QP_CTX   3

number of context models for dQP

Definition at line 71 of file ContextTables.h.

#define NUM_EXPLICIT_RDPCM_DIR_CTX   1

number of context models for the flag which specifies which RDPCM direction is used on inter coded residues

Definition at line 75 of file ContextTables.h.

#define NUM_EXPLICIT_RDPCM_FLAG_CTX   1

number of context models for the flag which specifies whether to use RDPCM on inter coded residues

Definition at line 74 of file ContextTables.h.

#define NUM_INTER_DIR_CTX   5

number of context models for inter prediction direction

Definition at line 63 of file ContextTables.h.

#define NUM_INTRA_PREDICT_CTX   1

number of context models for intra prediction

Definition at line 60 of file ContextTables.h.

#define NUM_MERGE_FLAG_EXT_CTX   1

number of context models for merge flag of merge extended

Definition at line 54 of file ContextTables.h.

#define NUM_MERGE_IDX_EXT_CTX   1

number of context models for merge index of merge extended

Definition at line 55 of file ContextTables.h.

#define NUM_MV_RES_CTX   2

number of context models for motion vector difference

Definition at line 64 of file ContextTables.h.

#define NUM_MVP_IDX_CTX   1

number of context models for MVP index

Definition at line 152 of file ContextTables.h.

#define NUM_ONE_FLAG_CTX   (NUM_ONE_FLAG_CTX_LUMA + NUM_ONE_FLAG_CTX_CHROMA)

number of context models for greater than 1 flag

Definition at line 132 of file ContextTables.h.

#define NUM_ONE_FLAG_CTX_CHROMA   (NUM_ONE_FLAG_CTX_PER_SET * NUM_CTX_SETS_CHROMA)

number of context models for greater than 1 flag of chroma

Definition at line 127 of file ContextTables.h.

#define NUM_ONE_FLAG_CTX_LUMA   (NUM_ONE_FLAG_CTX_PER_SET * NUM_CTX_SETS_LUMA)

number of context models for greater than 1 flag of luma

Definition at line 126 of file ContextTables.h.

#define NUM_ONE_FLAG_CTX_PER_SET   4

number of context models for greater than 1 flag in a set

Definition at line 114 of file ContextTables.h.

#define NUM_PART_SIZE_CTX   4

number of context models for partition size

Definition at line 57 of file ContextTables.h.

#define NUM_PRED_MODE_CTX   1

number of context models for prediction mode

Definition at line 58 of file ContextTables.h.

#define NUM_QT_CBF_CTX_PER_SET   5

number of context models for QT CBF

Definition at line 143 of file ContextTables.h.

#define NUM_QT_CBF_CTX_SETS   2

Definition at line 141 of file ContextTables.h.

#define NUM_QT_ROOT_CBF_CTX   1

number of context models for QT ROOT CBF

Definition at line 70 of file ContextTables.h.

#define NUM_REF_NO_CTX   2

number of context models for reference index

Definition at line 68 of file ContextTables.h.

#define NUM_SAO_BO_CLASSES   (1<<NUM_SAO_BO_CLASSES_LOG2)

Definition at line 575 of file TypeDef.h.

#define NUM_SAO_BO_CLASSES_LOG2   5

Definition at line 574 of file TypeDef.h.

#define NUM_SAO_EO_TYPES_LOG2   2

Definition at line 562 of file TypeDef.h.

#define NUM_SAO_MERGE_FLAG_CTX   1

number of context models for SAO merge flags

Definition at line 154 of file ContextTables.h.

#define NUM_SAO_TYPE_IDX_CTX   1

number of context models for SAO type index

Definition at line 155 of file ContextTables.h.

#define NUM_SIG_CG_FLAG_CTX   2

number of context models for MULTI_LEVEL_SIGNIFICANCE

Definition at line 73 of file ContextTables.h.

#define NUM_SIG_FLAG_CTX   (NUM_SIG_FLAG_CTX_LUMA + NUM_SIG_FLAG_CTX_CHROMA)

number of context models for sig flag

Definition at line 100 of file ContextTables.h.

#define NUM_SIG_FLAG_CTX_CHROMA   16

number of context models for chroma sig flag

Definition at line 82 of file ContextTables.h.

#define NUM_SIG_FLAG_CTX_LUMA   28

number of context models for luma sig flag

Definition at line 81 of file ContextTables.h.

#define NUM_SKIP_FLAG_CTX   3

number of context models for skip flag

Definition at line 52 of file ContextTables.h.

#define NUM_SPLIT_FLAG_CTX   3

number of context models for split flag

Definition at line 51 of file ContextTables.h.

#define NUM_TRANS_SUBDIV_FLAG_CTX   3

number of context models for transform subdivision flags

Definition at line 69 of file ContextTables.h.

#define NUM_TRANSFORMSKIP_FLAG_CTX   1

number of context models for transform skipping

Definition at line 157 of file ContextTables.h.

#define NV_VERSION   "16.18"

Current software version.

Definition at line 67 of file CommonDef.h.

#define NVM_BITS   "[%d bit] ", (sizeof(Void*) == 8 ? 64 : 32)

used for checking 64-bit O/S

Definition at line 104 of file CommonDef.h.

#define NVM_COMPILEDBY   "[Unk-CXX]"

Definition at line 89 of file CommonDef.h.

#define NVM_ONOS   "[Unk-OS]"

Definition at line 101 of file CommonDef.h.

#define O0043_BEST_EFFORT_DECODING   0

0 (default) = disable code related to best effort decoding, 1 = enable code relating to best effort decoding [ decode-side only ].

Definition at line 130 of file TypeDef.h.

#define PRINT_MACRO_VALUES   1

When enabled, the encoder prints out a list of the non-environment-variable controlled macros and their values on startup.

Definition at line 63 of file TypeDef.h.

#define PRINT_RPS_INFO   0

Enable/disable the printing of bits used to send the RPS.

Definition at line 77 of file TypeDef.h.

#define PSLICE_CHROMA_ABS_CONTEXT   107, 167

Definition at line 411 of file ContextTables.h.

#define PSLICE_CHROMA_CBF_CONTEXT   149, 107, 167, 154, 154

Definition at line 302 of file ContextTables.h.

#define PSLICE_CHROMA_LAST_POSITION_CONTEXT   108, 123, 108, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU

Definition at line 336 of file ContextTables.h.

#define PSLICE_CHROMA_ONE_CONTEXT   169, 194, 166, 167, 154, 167, 137, 182

Definition at line 407 of file ContextTables.h.

#define PSLICE_CHROMA_SIGNIFICANCE_CONTEXT   170, 153, 123, 123, 107, 121, 107, 121, 167, 151, 183, 140, 151, 183, 140, 140

Definition at line 378 of file ContextTables.h.

#define PSLICE_LUMA_ABS_CONTEXT   107, 167, 91, 122

Definition at line 402 of file ContextTables.h.

#define PSLICE_LUMA_CBF_CONTEXT   153, 111, CNU, CNU, CNU

Definition at line 298 of file ContextTables.h.

#define PSLICE_LUMA_LAST_POSITION_CONTEXT   125, 110, 94, 110, 95, 79, 125, 111, 110, 78, 110, 111, 111, 95, 94

Definition at line 332 of file ContextTables.h.

#define PSLICE_LUMA_ONE_CONTEXT   154, 196, 196, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 137

Definition at line 398 of file ContextTables.h.

#define PSLICE_LUMA_SIGNIFICANCE_CONTEXT   155, 154, 139, 153, 139, 123, 123, 63, 153, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140

Definition at line 373 of file ContextTables.h.

#define QP_BITS   15

Definition at line 54 of file TComTrQuant.h.

#define RDOQ_CHROMA   1

use of RDOQ in chroma

Definition at line 64 of file TComTrQuant.cpp.

#define RDOQ_CHROMA_LAMBDA   1

F386: weighting of chroma for RDOQ.

Definition at line 134 of file TypeDef.h.

#define REDUCED_ENCODER_MEMORY   1

When 1, the encoder will allocate TComPic memory when required and release it when no longer required.

Definition at line 110 of file TypeDef.h.

#define RExt__DECODER_DEBUG_BIT_STATISTICS   0

0 (default) = decoder reports as normal, 1 = decoder produces bit usage statistics (will impact decoder run time by up to ~10%)

Definition at line 68 of file TypeDef.h.

#define RExt__HIGH_BIT_DEPTH_SUPPORT   0

0 (default) use data type definitions for 8-10 bit video, 1 = use larger data types to allow for up to 16-bit video (originally developed as part of N0188)

Definition at line 138 of file TypeDef.h.

#define RExt__HIGH_PRECISION_FORWARD_TRANSFORM   0

0 (default) use original 6-bit transform matrices for both forward and inverse transform, 1 = use original matrices for inverse transform and high precision matrices for forward transform

Definition at line 158 of file TypeDef.h.

#define RNSEI   1

Support for signalling regional nesting SEI message.

Definition at line 103 of file TypeDef.h.

#define RWP_SEI_MESSAGE   1

Definition at line 99 of file TypeDef.h.

#define VECTOR_CODING__DISTORTION_CALCULATIONS   0

enable vector coding for distortion calculations 0 (default if SSE not possible) disable SSE vector coding. Should not affect RD costs/decisions. Code back-ported from JEM2.0.

Definition at line 146 of file TypeDef.h.

#define VECTOR_CODING__INTERPOLATION_FILTER   0

enable vector coding for the interpolation filter. 0 (default if SSE not possible) disable SSE vector coding. Should not affect RD costs/decisions. Code back-ported from JEM2.0.

Definition at line 145 of file TypeDef.h.

#define X0038_LAMBDA_FROM_QP_CAPABILITY   1

This approach derives lambda from QP+QPoffset+QPoffset2. QPoffset2 is derived from QP+QPoffset using a linear model that is clipped between 0 and 3.

Definition at line 84 of file TypeDef.h.

#define xFree (   ptr)    free ( ptr )

Definition at line 271 of file CommonDef.h.

#define xMalloc (   type,
  len 
)    malloc ( sizeof(type)*(len) )

Definition at line 270 of file CommonDef.h.

Typedef Documentation

typedef struct _AMVPInfo AMVPInfo

parameters for AMVP

typedef bool Bool

Definition at line 204 of file TypeDef.h.

typedef UInt Distortion

distortion measurement

Definition at line 260 of file TypeDef.h.

typedef double Double

Definition at line 213 of file TypeDef.h.

typedef float Float

Definition at line 214 of file TypeDef.h.

typedef int Int

Definition at line 211 of file TypeDef.h.

typedef long long Int64

Definition at line 232 of file TypeDef.h.

used as intermediate value in calculations

Definition at line 253 of file TypeDef.h.

used as intermediate value in calculations

Definition at line 254 of file TypeDef.h.

typedef struct _LFCUParam LFCUParam

parameters for deblocking filter

typedef Short Pel

pixel type

Definition at line 249 of file TypeDef.h.

typedef enum PRED_BUF_E PRED_BUF

prediction class

typedef std::vector<RNSEIWindow> RNSEIWindowVec

Definition at line 979 of file TypeDef.h.

typedef signed char SChar

Definition at line 207 of file TypeDef.h.

typedef short Short

Definition at line 209 of file TypeDef.h.

typedef char TChar

Definition at line 206 of file TypeDef.h.

typedef Int TCoeff

transform coefficient

Definition at line 250 of file TypeDef.h.

filter coefficient

Definition at line 252 of file TypeDef.h.

transform matrix coefficient

Definition at line 251 of file TypeDef.h.

typedef unsigned char UChar

Definition at line 208 of file TypeDef.h.

typedef unsigned int UInt

Definition at line 212 of file TypeDef.h.

typedef unsigned long long UInt64

Definition at line 233 of file TypeDef.h.

typedef unsigned short UShort

Definition at line 210 of file TypeDef.h.

typedef void Void

Definition at line 203 of file TypeDef.h.

Enumeration Type Documentation

Enumerator
CHANNEL_TYPE_LUMA 
CHANNEL_TYPE_CHROMA 
MAX_NUM_CHANNEL_TYPE 

Definition at line 301 of file TypeDef.h.

chroma formats (according to semantics of chroma_format_idc)

Enumerator
CHROMA_400 
CHROMA_420 
CHROMA_422 
CHROMA_444 
NUM_CHROMA_FORMAT 

Definition at line 292 of file TypeDef.h.

enum CI_IDX

index for SBAC based RD optimization

Enumerator
CI_CURR_BEST 

best mode index

CI_NEXT_BEST 

next best index

CI_TEMP_BEST 

temporal index

CI_CHROMA_INTRA 

chroma intra index

CI_QT_TRAFO_TEST 
CI_QT_TRAFO_ROOT 
CI_NUM 

total number

Definition at line 427 of file TypeDef.h.

Enumerator
SCAN_UNGROUPED 
SCAN_GROUPED_4x4 
SCAN_NUMBER_OF_GROUP_TYPES 

Definition at line 481 of file TypeDef.h.

coefficient scanning type used in ACS

Enumerator
SCAN_DIAG 

up-right diagonal scan

SCAN_HOR 

horizontal first scan

SCAN_VER 

vertical first scan

SCAN_NUMBER_OF_TYPES 

Definition at line 473 of file TypeDef.h.

Enumerator
COMPONENT_Y 
COMPONENT_Cb 
COMPONENT_Cr 
MAX_NUM_COMPONENT 

Definition at line 308 of file TypeDef.h.

enum CostMode
Enumerator
COST_STANDARD_LOSSY 
COST_SEQUENCE_LEVEL_LOSSLESS 
COST_LOSSLESS_CODING 
COST_MIXED_LOSSLESS_LOSSY_CODING 

Definition at line 620 of file TypeDef.h.

Enumerator
EDGE_VER 
EDGE_HOR 
NUM_EDGE_DIR 

Definition at line 340 of file TypeDef.h.

enum DFunc

distortion function index

Enumerator
DF_DEFAULT 
DF_SSE 

general size SSE

DF_SSE4 

4xM SSE

DF_SSE8 

8xM SSE

DF_SSE16 

16xM SSE

DF_SSE32 

32xM SSE

DF_SSE64 

64xM SSE

DF_SSE16N 

16NxM SSE

DF_SAD 

general size SAD

DF_SAD4 

4xM SAD

DF_SAD8 

8xM SAD

DF_SAD16 

16xM SAD

DF_SAD32 

32xM SAD

DF_SAD64 

64xM SAD

DF_SAD16N 

16NxM SAD

DF_SADS 

general size SAD with step

DF_SADS4 

4xM SAD with step

DF_SADS8 

8xM SAD with step

DF_SADS16 

16xM SAD with step

DF_SADS32 

32xM SAD with step

DF_SADS64 

64xM SAD with step

DF_SADS16N 

16NxM SAD with step

DF_HADS 

general size Hadamard with step

DF_HADS4 

4xM HAD with step

DF_HADS8 

8xM HAD with step

DF_HADS16 

16xM HAD with step

DF_HADS32 

32xM HAD with step

DF_HADS64 

64xM HAD with step

DF_HADS16N 

16NxM HAD with step

DF_SAD12 
DF_SAD24 
DF_SAD48 
DF_SADS12 
DF_SADS24 
DF_SADS48 
DF_SSE_FRAME 

Frame-based SSE.

DF_TOTAL_FUNCTIONS 

Definition at line 379 of file TypeDef.h.

Enumerator
FASTINTERSEARCH_DISABLED 
FASTINTERSEARCH_MODE1 
FASTINTERSEARCH_MODE2 
FASTINTERSEARCH_MODE3 

Definition at line 637 of file TypeDef.h.

enum HashType
Enumerator
HASHTYPE_MD5 
HASHTYPE_CRC 
HASHTYPE_CHECKSUM 
HASHTYPE_NONE 
NUMBER_OF_HASHTYPES 

Definition at line 524 of file TypeDef.h.

Enumerator
IPCOLOURSPACE_UNCHANGED 
IPCOLOURSPACE_YCbCrtoYCrCb 
IPCOLOURSPACE_YCbCrtoYYY 
IPCOLOURSPACE_RGBtoGBR 
NUMBER_INPUT_COLOUR_SPACE_CONVERSIONS 

Definition at line 316 of file TypeDef.h.

Enumerator
LUMALVL_TO_DQP_DISABLED 
LUMALVL_TO_DQP_AVG_METHOD 
LUMALVL_TO_DQP_MAX_METHOD 
LUMALVL_TO_DQP_NUM_MODES 

Definition at line 742 of file TypeDef.h.

Enumerator
MATRIX_COEFFICIENTS_RGB 
MATRIX_COEFFICIENTS_BT709 
MATRIX_COEFFICIENTS_UNSPECIFIED 
MATRIX_COEFFICIENTS_RESERVED_BY_ITUISOIEC 
MATRIX_COEFFICIENTS_USFCCT47 
MATRIX_COEFFICIENTS_BT601_625 
MATRIX_COEFFICIENTS_BT601_525 
MATRIX_COEFFICIENTS_SMPTE240 
MATRIX_COEFFICIENTS_YCGCO 
MATRIX_COEFFICIENTS_BT2020_NON_CONSTANT_LUMINANCE 
MATRIX_COEFFICIENTS_BT2020_CONSTANT_LUMINANCE 

Definition at line 325 of file TypeDef.h.

supported ME search methods

Enumerator
MESEARCH_FULL 
MESEARCH_DIAMOND 
MESEARCH_SELECTIVE 
MESEARCH_DIAMOND_ENHANCED 
MESEARCH_NUMBER_OF_METHODS 

Definition at line 463 of file TypeDef.h.

enum MVP_DIR

motion vector predictor direction used in AMVP

Enumerator
MD_LEFT 

MVP of left block.

MD_ABOVE 

MVP of above block.

MD_ABOVE_RIGHT 

MVP of above right block.

MD_BELOW_LEFT 

MVP of below left block.

MD_ABOVE_LEFT 

MVP of above left block.

Definition at line 439 of file TypeDef.h.

Enumerator
NAL_UNIT_CODED_SLICE_TRAIL_N 
NAL_UNIT_CODED_SLICE_TRAIL_R 
NAL_UNIT_CODED_SLICE_TSA_N 
NAL_UNIT_CODED_SLICE_TSA_R 
NAL_UNIT_CODED_SLICE_STSA_N 
NAL_UNIT_CODED_SLICE_STSA_R 
NAL_UNIT_CODED_SLICE_RADL_N 
NAL_UNIT_CODED_SLICE_RADL_R 
NAL_UNIT_CODED_SLICE_RASL_N 
NAL_UNIT_CODED_SLICE_RASL_R 
NAL_UNIT_RESERVED_VCL_N10 
NAL_UNIT_RESERVED_VCL_R11 
NAL_UNIT_RESERVED_VCL_N12 
NAL_UNIT_RESERVED_VCL_R13 
NAL_UNIT_RESERVED_VCL_N14 
NAL_UNIT_RESERVED_VCL_R15 
NAL_UNIT_CODED_SLICE_BLA_W_LP 
NAL_UNIT_CODED_SLICE_BLA_W_RADL 
NAL_UNIT_CODED_SLICE_BLA_N_LP 
NAL_UNIT_CODED_SLICE_IDR_W_RADL 
NAL_UNIT_CODED_SLICE_IDR_N_LP 
NAL_UNIT_CODED_SLICE_CRA 
NAL_UNIT_RESERVED_IRAP_VCL22 
NAL_UNIT_RESERVED_IRAP_VCL23 
NAL_UNIT_RESERVED_VCL24 
NAL_UNIT_RESERVED_VCL25 
NAL_UNIT_RESERVED_VCL26 
NAL_UNIT_RESERVED_VCL27 
NAL_UNIT_RESERVED_VCL28 
NAL_UNIT_RESERVED_VCL29 
NAL_UNIT_RESERVED_VCL30 
NAL_UNIT_RESERVED_VCL31 
NAL_UNIT_VPS 
NAL_UNIT_SPS 
NAL_UNIT_PPS 
NAL_UNIT_ACCESS_UNIT_DELIMITER 
NAL_UNIT_EOS 
NAL_UNIT_EOB 
NAL_UNIT_FILLER_DATA 
NAL_UNIT_PREFIX_SEI 
NAL_UNIT_SUFFIX_SEI 
NAL_UNIT_RESERVED_NVCL41 
NAL_UNIT_RESERVED_NVCL42 
NAL_UNIT_RESERVED_NVCL43 
NAL_UNIT_RESERVED_NVCL44 
NAL_UNIT_RESERVED_NVCL45 
NAL_UNIT_RESERVED_NVCL46 
NAL_UNIT_RESERVED_NVCL47 
NAL_UNIT_UNSPECIFIED_48 
NAL_UNIT_UNSPECIFIED_49 
NAL_UNIT_UNSPECIFIED_50 
NAL_UNIT_UNSPECIFIED_51 
NAL_UNIT_UNSPECIFIED_52 
NAL_UNIT_UNSPECIFIED_53 
NAL_UNIT_UNSPECIFIED_54 
NAL_UNIT_UNSPECIFIED_55 
NAL_UNIT_UNSPECIFIED_56 
NAL_UNIT_UNSPECIFIED_57 
NAL_UNIT_UNSPECIFIED_58 
NAL_UNIT_UNSPECIFIED_59 
NAL_UNIT_UNSPECIFIED_60 
NAL_UNIT_UNSPECIFIED_61 
NAL_UNIT_UNSPECIFIED_62 
NAL_UNIT_UNSPECIFIED_63 
NAL_UNIT_INVALID 

Definition at line 664 of file TypeDef.h.

enum PartSize

supported partition shape

Enumerator
SIZE_2Nx2N 

symmetric motion partition, 2Nx2N

SIZE_2NxN 

symmetric motion partition, 2Nx N

SIZE_Nx2N 

symmetric motion partition, Nx2N

SIZE_NxN 

symmetric motion partition, Nx N

SIZE_2NxnU 

asymmetric motion partition, 2Nx( N/2) + 2Nx(3N/2)

SIZE_2NxnD 

asymmetric motion partition, 2Nx(3N/2) + 2Nx( N/2)

SIZE_nLx2N 

asymmetric motion partition, ( N/2)x2N + (3N/2)x2N

SIZE_nRx2N 

asymmetric motion partition, (3N/2)x2N + ( N/2)x2N

NUMBER_OF_PART_SIZES 

Definition at line 348 of file TypeDef.h.

Enumerator
PPS_EXT__REXT 
NUM_PPS_EXTENSION_FLAGS 

Definition at line 653 of file TypeDef.h.

enum PRED_BUF_E

prediction class

Enumerator
PRED_BUF_UNFILTERED 
PRED_BUF_FILTERED 
NUM_PRED_BUF 

Definition at line 59 of file TComPrediction.h.

enum PredMode

supported prediction type

Enumerator
MODE_INTER 

inter-prediction mode

MODE_INTRA 

intra-prediction mode

NUMBER_OF_PREDICTION_MODES 

Definition at line 362 of file TypeDef.h.

enum RDPCMMode
Enumerator
RDPCM_OFF 
RDPCM_HOR 
RDPCM_VER 
NUMBER_OF_RDPCM_MODES 

Definition at line 267 of file TypeDef.h.

Enumerator
RDPCM_SIGNAL_IMPLICIT 
RDPCM_SIGNAL_EXPLICIT 
NUMBER_OF_RDPCM_SIGNALLING_MODES 

Definition at line 275 of file TypeDef.h.

enum RefPicList

reference list index

Enumerator
REF_PIC_LIST_0 

reference list 0

REF_PIC_LIST_1 

reference list 1

NUM_REF_PIC_LIST_01 
REF_PIC_LIST_X 

special mark

Definition at line 370 of file TypeDef.h.

Enumerator
SAO_CLASS_EO_FULL_VALLEY 
SAO_CLASS_EO_HALF_VALLEY 
SAO_CLASS_EO_PLAIN 
SAO_CLASS_EO_HALF_PEAK 
SAO_CLASS_EO_FULL_PEAK 
NUM_SAO_EO_CLASSES 

Definition at line 564 of file TypeDef.h.

enum SAOMode
Enumerator
SAO_MODE_OFF 
SAO_MODE_NEW 
SAO_MODE_MERGE 
NUM_SAO_MODES 

Definition at line 533 of file TypeDef.h.

Enumerator
SAO_MERGE_LEFT 
SAO_MERGE_ABOVE 
NUM_SAO_MERGE_TYPES 

Definition at line 541 of file TypeDef.h.

Enumerator
SAO_TYPE_START_EO 
SAO_TYPE_EO_0 
SAO_TYPE_EO_90 
SAO_TYPE_EO_135 
SAO_TYPE_EO_45 
SAO_TYPE_START_BO 
SAO_TYPE_BO 
NUM_SAO_NEW_TYPES 

Definition at line 549 of file TypeDef.h.

Enumerator
SCALING_LIST_OFF 
SCALING_LIST_DEFAULT 
SCALING_LIST_FILE_READ 

Definition at line 497 of file TypeDef.h.

Enumerator
SCALING_LIST_4x4 
SCALING_LIST_8x8 
SCALING_LIST_16x16 
SCALING_LIST_32x32 
SCALING_LIST_SIZE_NUM 

Definition at line 504 of file TypeDef.h.

Enumerator
CONTEXT_TYPE_4x4 
CONTEXT_TYPE_8x8 
CONTEXT_TYPE_NxN 
CONTEXT_TYPE_SINGLE 
CONTEXT_NUMBER_OF_TYPES 

Definition at line 488 of file TypeDef.h.

Enumerator
NO_SLICES 

don't use slices / slice segments

FIXED_NUMBER_OF_CTU 

Limit maximum number of largest coding tree units in a slice / slice segments.

FIXED_NUMBER_OF_BYTES 

Limit maximum number of bytes in a slice / slice segment.

FIXED_NUMBER_OF_TILES 

slices / slice segments span an integer number of tiles

NUMBER_OF_SLICE_CONSTRAINT_MODES 

Definition at line 514 of file TypeDef.h.

enum SliceType

supported slice type

Enumerator
B_SLICE 
P_SLICE 
I_SLICE 
NUMBER_OF_SLICE_TYPES 

Definition at line 283 of file TypeDef.h.

Enumerator
SPS_EXT__REXT 
NUM_SPS_EXTENSION_FLAGS 

Definition at line 645 of file TypeDef.h.

Enumerator
RESIDUAL_RECONSTRUCTED 
RESIDUAL_ENCODER_SIDE 
NUMBER_OF_STORED_RESIDUAL_TYPES 

Definition at line 448 of file TypeDef.h.

Enumerator
TRANSFORM_FORWARD 
TRANSFORM_INVERSE 
TRANSFORM_NUMBER_OF_DIRECTIONS 

Definition at line 455 of file TypeDef.h.

Enumerator
WP_PER_PICTURE_WITH_SIMPLE_DC_COMBINED_COMPONENT 
WP_PER_PICTURE_WITH_SIMPLE_DC_PER_COMPONENT 
WP_PER_PICTURE_WITH_HISTOGRAM_AND_PER_COMPONENT 
WP_PER_PICTURE_WITH_HISTOGRAM_AND_PER_COMPONENT_AND_CLIPPING 
WP_PER_PICTURE_WITH_HISTOGRAM_AND_PER_COMPONENT_AND_CLIPPING_AND_EXTENSION 

Definition at line 628 of file TypeDef.h.

Function Documentation

Void TComYuv::addAvg ( const TComYuv pcYuvSrc0,
const TComYuv pcYuvSrc1,
const UInt  iPartUnitIdx,
const UInt  iWidth,
const UInt  iHeight,
const BitDepths clipBitDepths 
)

Definition at line 354 of file TComYuv.cpp.

Void TComYuv::addClip ( const TComYuv pcYuvSrc0,
const TComYuv pcYuvSrc1,
const UInt  uiTrUnitIdx,
const UInt  uiPartSize,
const BitDepths clipBitDepths 
)

Definition at line 282 of file TComYuv.cpp.

Void TComOutputBitstream::addSubstream ( TComOutputBitstream pcSubstream)
  • add substream to the end of the current bitstream
Parameters
pcSubstreamsubstream to be added

Definition at line 177 of file TComBitStream.cpp.

Void TComSlice::applyReferencePictureSet ( TComList< TComPic * > &  rcListPic,
const TComReferencePictureSet pReferencePictureSet 
)

Function for applying picture marking based on the Reference Picture Set in pReferencePictureSet.

Definition at line 996 of file TComSlice.cpp.

UInt calcChecksum ( const TComPicYuv pic,
TComPictureHash digest,
const BitDepths bitDepths 
)

Definition at line 167 of file TComPicYuvMD5.cpp.

UInt ContextModel3DBuffer::calcCost ( SliceType  sliceType,
Int  qp,
UChar ctxModel 
)

determine cost of choosing a probability table based on current probabilities

Calculate the cost of choosing a probability table based on the current probability of CABAC at encoder

Parameters
sliceTypeslice type
qpinput QP value
ctxModelgiven probability table

Definition at line 86 of file ContextModel3DBuffer.cpp.

UInt calcCRC ( const TComPicYuv pic,
TComPictureHash digest,
const BitDepths bitDepths 
)

Definition at line 129 of file TComPicYuvMD5.cpp.

Distortion TComRdCost::calcHAD ( Int  bitDepth,
const Pel pi0,
Int  iStride0,
const Pel pi1,
Int  iStride1,
Int  iWidth,
Int  iHeight 
)

Definition at line 297 of file TComRdCost.cpp.

UInt calcMD5 ( const TComPicYuv pic,
TComPictureHash digest,
const BitDepths bitDepths 
)

Calculate the MD5sum of pic, storing the result in digest. MD5 calculation is performed on Y' then Cb, then Cr; each in raster order. Pel data is inserted into the MD5 function in little-endian byte order, using sufficient bytes to represent the picture bitdepth. Eg, 10bit data uses little-endian two byte words; 8bit data uses single byte words.

Definition at line 185 of file TComPicYuvMD5.cpp.

Double TComRdCost::calcRdCost ( Double  numBits,
Double  distortion,
DFunc  eDFunc = DF_DEFAULT 
)

Definition at line 62 of file TComRdCost.cpp.

template<typename T >
Void Check3 ( minVal,
maxVal,
a 
)
inline

general min/max clip

Definition at line 255 of file CommonDef.h.

Void TComSlice::checkColRefIdx ( UInt  curSliceIdx,
TComPic pic 
)

Definition at line 501 of file TComSlice.cpp.

Void TComSlice::checkCRA ( const TComReferencePictureSet pReferencePictureSet,
Int pocCRA,
NalUnitType associatedIRAPType,
TComList< TComPic * > &  rcListPic 
)

Definition at line 527 of file TComSlice.cpp.

Void TComSlice::checkLeadingPictureRestrictions ( TComList< TComPic * > &  rcListPic)

Definition at line 829 of file TComSlice.cpp.

Int TComSlice::checkThatAllRefPicsAreAvailable ( TComList< TComPic * > &  rcListPic,
const TComReferencePictureSet pReferencePictureSet,
Bool  printErrors,
Int  pocRandomAccess = 0,
Bool  bUseRecoveryPoint = false 
)

Function for applying picture marking based on the Reference Picture Set in pReferencePictureSet.

Definition at line 1074 of file TComSlice.cpp.

Bool TComPrediction::checkTMctsMvp ( TComDataCU pcCU,
Int  partIdx = -1 
)

Definition at line 1010 of file TComPrediction.cpp.

Void TComYuv::clear ( )

clear YUV buffer

Definition at line 92 of file TComYuv.cpp.

Void TComOutputBitstream::clear ( )

Reset all internal state.

Definition at line 103 of file TComBitStream.cpp.

template<typename T >
T Clip3 ( const T  minVal,
const T  maxVal,
const T  a 
)
inline

general min/max clip

Definition at line 252 of file CommonDef.h.

template<typename T >
T ClipBD ( const T  x,
const Int  bitDepth 
)
inline

Definition at line 253 of file CommonDef.h.

UInt compChecksum ( Int  bitdepth,
const Pel plane,
UInt  width,
UInt  height,
UInt  stride,
TComPictureHash digest,
const BitDepths  
)

Definition at line 141 of file TComPicYuvMD5.cpp.

UInt compCRC ( Int  bitdepth,
const Pel plane,
UInt  width,
UInt  height,
UInt  stride,
TComPictureHash digest 
)

Definition at line 89 of file TComPicYuvMD5.cpp.

Void TComPic::compressMotion ( )

Definition at line 206 of file TComPic.cpp.

ContextModel3DBuffer::ContextModel3DBuffer ( UInt  uiSizeZ,
UInt  uiSizeY,
UInt  uiSizeX,
ContextModel basePtr,
Int count 
)

Definition at line 47 of file ContextModel3DBuffer.cpp.

Void TComYuv::copyFromPicComponent ( const ComponentID  id,
const TComPicYuv pcPicYuvSrc,
const UInt  iCtuRsAddr,
const UInt  uiAbsZorderIdx 
)

Definition at line 144 of file TComYuv.cpp.

Void TComYuv::copyFromPicYuv ( const TComPicYuv pcPicYuvSrc,
const UInt  ctuRsAddr,
const UInt  uiAbsZorderIdx 
)

Definition at line 136 of file TComYuv.cpp.

Void TComYuv::copyPartToComponent ( const ComponentID  id,
TComYuv pcYuvDst,
const UInt  uiSrcPartIdx 
) const

Definition at line 202 of file TComYuv.cpp.

Void TComYuv::copyPartToPartComponent ( const ComponentID  id,
TComYuv pcYuvDst,
const UInt  uiPartIdx,
const UInt  uiWidthComponent,
const UInt  uiHeightComponent 
) const

Definition at line 232 of file TComYuv.cpp.

Void TComYuv::copyPartToPartComponentMxN ( const ComponentID  id,
TComYuv pcYuvDst,
const TComRectangle rect 
) const

Definition at line 256 of file TComYuv.cpp.

Void TComYuv::copyPartToPartYuv ( TComYuv pcYuvDst,
const UInt  uiPartIdx,
const UInt  uiWidth,
const UInt  uiHeight 
) const

Definition at line 224 of file TComYuv.cpp.

Void TComYuv::copyPartToYuv ( TComYuv pcYuvDst,
const UInt  uiSrcPartIdx 
) const

Definition at line 194 of file TComYuv.cpp.

Void TComSlice::copySliceInfo ( TComSlice pcSliceSrc)

Definition at line 665 of file TComSlice.cpp.

Void TComYuv::copyToPartComponent ( const ComponentID  id,
TComYuv pcYuvDst,
const UInt  uiDstPartIdx 
) const

Definition at line 173 of file TComYuv.cpp.

Void TComYuv::copyToPartYuv ( TComYuv pcYuvDst,
const UInt  uiDstPartIdx 
) const

Definition at line 165 of file TComYuv.cpp.

Void TComPicYuv::copyToPic ( TComPicYuv pcPicYuvDst) const

Definition at line 198 of file TComPicYuv.cpp.

Void TComYuv::copyToPicComponent ( const ComponentID  id,
TComPicYuv pcPicYuvDst,
const UInt  iCtuRsAddr,
const UInt  uiAbsZorderIdx,
const UInt  uiPartDepth = 0,
const UInt  uiPartIdx = 0 
) const

Definition at line 114 of file TComYuv.cpp.

Void TComYuv::copyToPicYuv ( TComPicYuv pcPicYuvDst,
const UInt  ctuRsAddr,
const UInt  uiAbsZorderIdx,
const UInt  uiPartDepth = 0,
const UInt  uiPartIdx = 0 
) const

Definition at line 106 of file TComYuv.cpp.

Int TComOutputBitstream::countStartCodeEmulations ( )

returns the number of start code emulations contained in the current buffer

Definition at line 198 of file TComBitStream.cpp.

Void TComPic::create ( const TComSPS sps,
const TComPPS pps,
const Bool  bCreateEncoderSourcePicYuv,
const Bool  bCreateForImmediateReconstruction 
)

Definition at line 71 of file TComPic.cpp.

Void TComPicYuv::create ( const Int  picWidth,
const Int  picHeight,
const ChromaFormat  chromaFormatIDC,
const UInt  maxCUWidth,
const UInt  maxCUHeight,
const UInt  maxCUDepth,
const Bool  bUseMargin 
)

if true, then a margin of uiMaxCUWidth+16 and uiMaxCUHeight+16 is created around the image.

Parameters
picWidthpicture width
picHeightpicture height
chromaFormatIDCchroma format
maxCUWidthused for generating offsets to CUs.
maxCUHeightused for generating offsets to CUs.
maxCUDepthused for generating offsets to CUs.
bUseMarginif true, then a margin of uiMaxCUWidth+16 and uiMaxCUHeight+16 is created around the image.

Definition at line 121 of file TComPicYuv.cpp.

Void TComYuv::create ( const UInt  iWidth,
const UInt  iHeight,
const ChromaFormat  chromaFormatIDC 
)

Create YUV buffer.

Definition at line 64 of file TComYuv.cpp.

Void TComCUMvField::create ( UInt  uiNumPartition)

Definition at line 54 of file TComMotionInfo.cpp.

Void TComSlice::createExplicitReferencePictureSetFromReference ( TComList< TComPic * > &  rcListPic,
const TComReferencePictureSet pReferencePictureSet,
Bool  isRAP,
Int  pocRandomAccess,
Bool  bUseRecoveryPoint,
const Bool  bEfficientFieldIRAPEnabled 
)

Function for constructing an explicit Reference Picture Set out of the available pictures in a referenced Reference Picture Set

Definition at line 1270 of file TComSlice.cpp.

Void TComPicYuv::createWithoutCUInfo ( const Int  picWidth,
const Int  picHeight,
const ChromaFormat  chromaFormatIDC,
const Bool  bUseMargin = false,
const UInt  maxCUWidth = 0,
const UInt  maxCUHeight = 0 
)

used for margin only

Parameters
picWidthpicture width
picHeightpicture height
chromaFormatIDCchroma format
bUseMarginif true, then a margin of uiMaxCUWidth+16 and uiMaxCUHeight+16 is created around the image.
maxCUWidthused for margin only
maxCUHeightused for margin only

Definition at line 81 of file TComPicYuv.cpp.

Void TComSlice::decodingRefreshMarking ( Int pocCRA,
Bool bRefreshPending,
TComList< TComPic * > &  rcListPic,
const bool  bEfficientFieldIRAPEnabled 
)

Function for marking the reference pictures when an IDR/CRA/CRANT/BLA/BLANT is encountered.

Parameters
pocCRAPOC of the CRA/CRANT/BLA/BLANT picture
bRefreshPendingflag indicating if a deferred decoding refresh is pending
rcListPicreference to the reference picture list This function marks the reference pictures as "unused for reference" in the following conditions. If the nal_unit_type is IDR/BLA/BLANT, all pictures in the reference picture list are marked as "unused for reference" If the nal_unit_type is BLA/BLANT, set the pocCRA to the temporal reference of the current picture. Otherwise If the bRefreshPending flag is true (a deferred decoding refresh is pending) and the current temporal reference is greater than the temporal reference of the latest CRA/CRANT/BLA/BLANT picture (pocCRA), mark all reference pictures except the latest CRA/CRANT/BLA/BLANT picture as "unused for reference" and set the bRefreshPending flag to false. If the nal_unit_type is CRA/CRANT, set the bRefreshPending flag to true and pocCRA to the temporal reference of the current picture. Note that the current picture is already placed in the reference list and its marking is not changed. If the current picture has a nal_ref_idc that is not 0, it will remain marked as "used for reference".

Definition at line 587 of file TComSlice.cpp.

Void TComYuv::destroy ( )

Destroy YUV buffer.

Definition at line 79 of file TComYuv.cpp.

Void TComPic::destroy ( )
virtual

Reimplemented in TEncPic.

Definition at line 189 of file TComPic.cpp.

Void TComPrediction::destroy ( )
protected

Definition at line 91 of file TComPrediction.cpp.

Void TComPicYuv::destroy ( )

Definition at line 168 of file TComPicYuv.cpp.

Void TComPicYuv::dump ( const std::string &  fileName,
const BitDepths bitDepths,
const Bool  bAppend = false,
const Bool  bForceTo8Bit = false 
) const

Definition at line 281 of file TComPicYuv.cpp.

Void TComPicYuv::extendPicBorder ( )

Definition at line 229 of file TComPicYuv.cpp.

Void fastForwardDst ( TCoeff block,
TCoeff coeff,
Int  shift 
)

Definition at line 414 of file TComTrQuant.cpp.

Void fastInverseDst ( TCoeff tmp,
TCoeff block,
Int  shift,
const TCoeff  outputMinimum,
const TCoeff  outputMaximum 
)

Definition at line 440 of file TComTrQuant.cpp.

Void fillReferenceSamples ( const Int  bitDepth,
const Pel piRoiOrigin,
Pel piIntraTemp,
const Bool bNeighborFlags,
const Int  iNumIntraNeighbor,
const Int  unitWidth,
const Int  unitHeight,
const Int  iAboveUnits,
const Int  iLeftUnits,
const UInt  uiWidth,
const UInt  uiHeight,
const Int  iPicStride 
)

padding of unavailable reference samples for intra prediction

Definition at line 326 of file TComPattern.cpp.

template<Int N, Bool isVertical, Bool isFirst, Bool isLast>
Void TComInterpolationFilter::filter ( Int  bitDepth,
Pel const *  src,
Int  srcStride,
Pel dst,
Int  dstStride,
Int  width,
Int  height,
TFilterCoeff const *  coeff 
)
staticprivate

Apply FIR filter to a block of samples.

Template Parameters
NNumber of taps
isVerticalFlag indicating filtering along vertical direction
isFirstFlag indicating whether it is the first filtering operation
isLastFlag indicating whether it is the last filtering operation
Parameters
bitDepthBit depth of samples
srcPointer to source samples
srcStrideStride of source samples
dstPointer to destination samples
dstStrideStride of destination samples
widthWidth of block
heightHeight of block
coeffPointer to filter taps

Definition at line 277 of file TComInterpolationFilter.cpp.

Void TComInterpolationFilter::filterCopy ( Int  bitDepth,
const Pel src,
Int  srcStride,
Pel dst,
Int  dstStride,
Int  width,
Int  height,
Bool  isFirst,
Bool  isLast 
)
staticprivate

Apply unit FIR filter to a block of samples.

Parameters
bitDepthbitDepth of samples
srcPointer to source samples
srcStrideStride of source samples
dstPointer to destination samples
dstStrideStride of destination samples
widthWidth of block
heightHeight of block
isFirstFlag indicating whether it is the first filtering operation
isLastFlag indicating whether it is the last filtering operation

Definition at line 198 of file TComInterpolationFilter.cpp.

template<Int N>
Void TComInterpolationFilter::filterHor ( Int  bitDepth,
Pel src,
Int  srcStride,
Pel dst,
Int  dstStride,
Int  width,
Int  height,
Bool  isLast,
TFilterCoeff const *  coeff 
)
staticprivate

Filter a block of samples (horizontal)

Template Parameters
NNumber of taps
Parameters
bitDepthBit depth of samples
srcPointer to source samples
srcStrideStride of source samples
dstPointer to destination samples
dstStrideStride of destination samples
widthWidth of block
heightHeight of block
isLastFlag indicating whether it is the last filtering operation
coeffPointer to filter taps

Definition at line 509 of file TComInterpolationFilter.cpp.

Void TComInterpolationFilter::filterHor ( const ComponentID  compID,
Pel src,
Int  srcStride,
Pel dst,
Int  dstStride,
Int  width,
Int  height,
Int  frac,
Bool  isLast,
const ChromaFormat  fmt,
const Int  bitDepth 
)

Filter a block of Luma/Chroma samples (horizontal)

Parameters
compIDChroma component ID
srcPointer to source samples
srcStrideStride of source samples
dstPointer to destination samples
dstStrideStride of destination samples
widthWidth of block
heightHeight of block
fracFractional sample offset
isLastFlag indicating whether it is the last filtering operation
fmtChroma format
bitDepthBit depth

Definition at line 576 of file TComInterpolationFilter.cpp.

template<Int N>
Void TComInterpolationFilter::filterVer ( Int  bitDepth,
Pel src,
Int  srcStride,
Pel dst,
Int  dstStride,
Int  width,
Int  height,
Bool  isFirst,
Bool  isLast,
TFilterCoeff const *  coeff 
)
staticprivate

Filter a block of samples (vertical)

Template Parameters
NNumber of taps
Parameters
bitDepthBit depth
srcPointer to source samples
srcStrideStride of source samples
dstPointer to destination samples
dstStrideStride of destination samples
widthWidth of block
heightHeight of block
isFirstFlag indicating whether it is the first filtering operation
isLastFlag indicating whether it is the last filtering operation
coeffPointer to filter taps

Definition at line 537 of file TComInterpolationFilter.cpp.

Void TComInterpolationFilter::filterVer ( const ComponentID  compID,
Pel src,
Int  srcStride,
Pel dst,
Int  dstStride,
Int  width,
Int  height,
Int  frac,
Bool  isFirst,
Bool  isLast,
const ChromaFormat  fmt,
const Int  bitDepth 
)

Filter a block of Luma/Chroma samples (vertical)

Parameters
compIDColour component ID
srcPointer to source samples
srcStrideStride of source samples
dstPointer to destination samples
dstStrideStride of destination samples
widthWidth of block
heightHeight of block
fracFractional sample offset
isFirstFlag indicating whether it is the first filtering operation
isLastFlag indicating whether it is the last filtering operation
fmtChroma format
bitDepthBit depth

Definition at line 612 of file TComInterpolationFilter.cpp.

UChar * TComOutputBitstream::getByteStream ( ) const

Return a pointer to the start of the byte-stream buffer. Pointer is valid until the next write/flush/reset call. NB, data is arranged such that subsequent bytes in the bytestream are stored in ascending addresses.

Definition at line 93 of file TComBitStream.cpp.

UInt TComOutputBitstream::getByteStreamLength ( )

Return the number of valid bytes available from getByteStream()

Definition at line 98 of file TComBitStream.cpp.

Distortion TComRdCost::getDistPart ( Int  bitDepth,
const Pel piCur,
Int  iCurStride,
const Pel piOrg,
Int  iOrgStride,
UInt  uiBlkWidth,
UInt  uiBlkHeight,
const ComponentID  compID,
DFunc  eDFunc = DF_SSE 
)

Definition at line 336 of file TComRdCost.cpp.

Void TComPrediction::getMvPredAMVP ( TComDataCU pcCU,
UInt  uiPartIdx,
UInt  uiPartAddr,
RefPicList  eRefPicList,
TComMv rcMvPred 
)

Definition at line 700 of file TComPrediction.cpp.

Int TComSlice::getNumRpsCurrTempList ( ) const

Definition at line 469 of file TComSlice.cpp.

Bool TComSlice::getRapPicFlag ( ) const

Definition at line 179 of file TComSlice.cpp.

Bool TComPic::getSAOMergeAvailability ( Int  currAddr,
Int  mergeAddr 
)

Definition at line 216 of file TComPic.cpp.

UInt TComPic::getSubstreamForCtuAddr ( const UInt  ctuAddr,
const Bool  bAddressInRaster,
TComSlice pcSlice 
)

Definition at line 223 of file TComPic.cpp.

Void TComSlice::getWpAcDcParam ( WPACDCParam *&  wp)

get AC and DC values for weighted pred

Definition at line 1389 of file TComSlice.cpp.

Void TComSlice::getWpScaling ( RefPicList  e,
Int  iRefIdx,
WPScalingParam *&  wp 
)

get tables for weighted prediction

Definition at line 1405 of file TComSlice.cpp.

std::string hashToString ( const TComPictureHash digest,
Int  numChar 
)

Definition at line 209 of file TComPicYuvMD5.cpp.

Void ContextModel::init ( Int  qp,
Int  initValue 
)

initialize state with initial probability

  • initialize context model with respect to QP and initialization value
Parameters
qpinput QP value
initValue8 bit initialization value

Definition at line 56 of file ContextModel.cpp.

Void TComRdCost::init ( )

Definition at line 126 of file TComRdCost.cpp.

Void ContextModel3DBuffer::initBuffer ( SliceType  sliceType,
Int  qp,
UChar ctxModel 
)

initialize 3D buffer by slice type & QP

Initialize 3D buffer with respect to slice type, QP and given initial probability table

Parameters
sliceTypeslice type
qpinput QP value
ctxModelgiven probability table

Definition at line 68 of file ContextModel3DBuffer.cpp.

Void TComSlice::initEqualRef ( )

Definition at line 487 of file TComSlice.cpp.

Void initROM ( )

Definition at line 179 of file TComRom.cpp.

Void TComSlice::initSlice ( )

Definition at line 152 of file TComSlice.cpp.

Void TComPrediction::initTempBuff ( ChromaFormat  chromaFormatIDC)

Definition at line 126 of file TComPrediction.cpp.

Void TComSlice::initWpAcDcParam ( )

init AC and DC values for weighted pred

Definition at line 1395 of file TComSlice.cpp.

Void TComSlice::initWpScaling ( const TComSPS sps)

init WP table

Definition at line 1432 of file TComSlice.cpp.

Void TComOutputBitstream::insertAt ( const TComOutputBitstream src,
UInt  pos 
)

insert the contents of the bytealigned (and flushed) bitstream src into this at byte position pos.

Definition at line 320 of file TComBitStream.cpp.

Int isAboveAvailable ( const TComDataCU pcCU,
UInt  uiPartIdxLT,
UInt  uiPartIdxRT,
Bool bValidFlags 
)

Definition at line 588 of file TComPattern.cpp.

Bool isAboveLeftAvailable ( const TComDataCU pcCU,
UInt  uiPartIdxLT 
)

constrained intra prediction

Definition at line 572 of file TComPattern.cpp.

Int isAboveRightAvailable ( const TComDataCU pcCU,
UInt  uiPartIdxLT,
UInt  uiPartIdxRT,
Bool bValidFlags 
)

Definition at line 671 of file TComPattern.cpp.

Int isBelowLeftAvailable ( const TComDataCU pcCU,
UInt  uiPartIdxLT,
UInt  uiPartIdxLB,
Bool bValidFlags 
)

Definition at line 711 of file TComPattern.cpp.

Int isLeftAvailable ( const TComDataCU pcCU,
UInt  uiPartIdxLT,
UInt  uiPartIdxLB,
Bool bValidFlags 
)

Definition at line 629 of file TComPattern.cpp.

Bool TComSlice::isStepwiseTemporalLayerSwitchingPointCandidate ( TComList< TComPic * > &  rcListPic)

Function for checking if this is a STSA candidate

Definition at line 809 of file TComSlice.cpp.

Bool TComSlice::isTemporalLayerSwitchingPoint ( TComList< TComPic * > &  rcListPic)

Function for checking if this is a switching-point

Definition at line 788 of file TComSlice.cpp.

template<typename ValueType >
ValueType leftShift ( const ValueType  value,
const Int  shift 
)
inline

Definition at line 280 of file CommonDef.h.

template<typename ValueType >
ValueType leftShift_round ( const ValueType  value,
const Int  shift 
)
inline

Definition at line 282 of file CommonDef.h.

template<UInt OUTPUT_BITDEPTH_DIV8>
static Void md5_block ( MD5 md5,
const Pel plane,
UInt  n 
)
static

Update md5 using n samples from plane, each sample is adjusted to OUTBIT_BITDEPTH_DIV8.

Definition at line 45 of file TComPicYuvMD5.cpp.

template<UInt OUTPUT_BITDEPTH_DIV8>
static Void md5_plane ( MD5 md5,
const Pel plane,
UInt  width,
UInt  height,
UInt  stride 
)
static

Update md5 with all samples in plane in raster order, each sample is adjusted to OUTBIT_BITDEPTH_DIV8.

Definition at line 66 of file TComPicYuvMD5.cpp.

Void TComPrediction::motionCompensation ( TComDataCU pcCU,
TComYuv pcYuvPred,
RefPicList  eRefPicList = REF_PIC_LIST_X,
Int  iPartIdx = -1 
)

Definition at line 495 of file TComPrediction.cpp.

const TChar* nalUnitTypeToString ( NalUnitType  type)

Definition at line 53 of file TComRom.cpp.

const SAOOffset & SAOOffset::operator= ( const SAOOffset src)

Definition at line 65 of file TComSampleAdaptiveOffset.cpp.

Void partialButterfly16 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line 
)

16x16 forward transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (residual)
dstoutput data (transform coefficients)
shiftspecifies right shift after 1D transform
line

Definition at line 593 of file TComTrQuant.cpp.

Void partialButterfly32 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line 
)

32x32 forward transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (residual)
dstoutput data (transform coefficients)
shiftspecifies right shift after 1D transform
line

Definition at line 709 of file TComTrQuant.cpp.

Void partialButterfly4 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line 
)

4x4 forward transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (residual)
dstoutput data (transform coefficients)
shiftspecifies right shift after 1D transform
line

Definition at line 388 of file TComTrQuant.cpp.

Void partialButterfly8 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line 
)

8x8 forward transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (residual)
dstoutput data (transform coefficients)
shiftspecifies right shift after 1D transform
line

Definition at line 507 of file TComTrQuant.cpp.

Void partialButterflyInverse16 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line,
const TCoeff  outputMinimum,
const TCoeff  outputMaximum 
)

16x16 inverse transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (transform coefficients)
dstoutput data (residual)
shiftspecifies right shift after 1D transform
line
outputMinimumminimum for clipping
outputMaximummaximum for clipping

Definition at line 654 of file TComTrQuant.cpp.

Void partialButterflyInverse32 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line,
const TCoeff  outputMinimum,
const TCoeff  outputMaximum 
)

32x32 inverse transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (transform coefficients)
dstoutput data (residual)
shiftspecifies right shift after 1D transform
line
outputMinimumminimum for clipping
outputMaximummaximum for clipping

Definition at line 785 of file TComTrQuant.cpp.

Void partialButterflyInverse4 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line,
const TCoeff  outputMinimum,
const TCoeff  outputMaximum 
)

4x4 inverse transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (transform coefficients)
dstoutput data (residual)
shiftspecifies right shift after 1D transform
line
outputMinimumminimum for clipping
outputMaximummaximum for clipping

Definition at line 476 of file TComTrQuant.cpp.

Void partialButterflyInverse8 ( TCoeff src,
TCoeff dst,
Int  shift,
Int  line,
const TCoeff  outputMinimum,
const TCoeff  outputMaximum 
)

8x8 inverse transform implemented using partial butterfly structure (1D)

Parameters
srcinput data (transform coefficients)
dstoutput data (residual)
shiftspecifies right shift after 1D transform
line
outputMinimumminimum for clipping
outputMaximummaximum for clipping

Definition at line 551 of file TComTrQuant.cpp.

Void TComPrediction::predIntraAng ( const ComponentID  compID,
UInt  uiDirMode,
Pel piOrg,
UInt  uiOrgStride,
Pel piPred,
UInt  uiStride,
TComTU rTu,
const Bool  bUseFilteredPredSamples,
const Bool  bUseLosslessDPCM = false 
)

Definition at line 390 of file TComPrediction.cpp.

Pel TComPrediction::predIntraGetPredValDC ( const Pel pSrc,
Int  iSrcStride,
UInt  iWidth,
UInt  iHeight 
)

Definition at line 183 of file TComPrediction.cpp.

Void TComPic::prepareForEncoderSourcePicYuv ( )

Definition at line 114 of file TComPic.cpp.

Void TComPic::prepareForReconstruction ( )

Definition at line 135 of file TComPic.cpp.

Void TComPic::releaseAllReconstructionData ( )

Definition at line 177 of file TComPic.cpp.

Void TComPic::releaseEncoderSourceImageData ( )

Definition at line 161 of file TComPic.cpp.

Void TComPic::releaseReconstructionIntermediateData ( )

Definition at line 156 of file TComPic.cpp.

Void TComYuv::removeHighFreq ( const TComYuv pcYuvSrc,
const UInt  uiPartIdx,
const UInt  uiWidth,
const UInt  uiHeight,
const Int  bitDepths[MAX_NUM_CHANNEL_TYPE],
const Bool  bClipToBitDepths 
)

Definition at line 411 of file TComYuv.cpp.

Void SAOOffset::reset ( )

Definition at line 57 of file TComSampleAdaptiveOffset.cpp.

Void TComSlice::resetWpScaling ( )

reset Default WP tables settings : no weight.

Definition at line 1412 of file TComSlice.cpp.

template<typename ValueType >
ValueType rightShift ( const ValueType  value,
const Int  shift 
)
inline

Definition at line 281 of file CommonDef.h.

template<typename ValueType >
ValueType rightShift_round ( const ValueType  value,
const Int  shift 
)
inline

Definition at line 283 of file CommonDef.h.

SAOOffset::SAOOffset ( )

Definition at line 47 of file TComSampleAdaptiveOffset.cpp.

Void TComRdCost::setDistParam ( UInt  uiBlkWidth,
UInt  uiBlkHeight,
DFunc  eDFunc,
DistParam rcDistParam 
)

Definition at line 192 of file TComRdCost.cpp.

Void TComRdCost::setDistParam ( const TComPattern *const  pcPatternKey,
const Pel piRefY,
Int  iRefStride,
DistParam rcDistParam 
)

Definition at line 205 of file TComRdCost.cpp.

Void TComRdCost::setDistParam ( const TComPattern *const  pcPatternKey,
const Pel piRefY,
Int  iRefStride,
Int  iStep,
DistParam rcDistParam,
Bool  bHADME = false 
)

Definition at line 238 of file TComRdCost.cpp.

Void TComRdCost::setDistParam ( DistParam rcDP,
Int  bitDepth,
const Pel p1,
Int  iStride1,
const Pel p2,
Int  iStride2,
Int  iWidth,
Int  iHeight,
Bool  bHadamard = false 
)

Definition at line 282 of file TComRdCost.cpp.

Void TComRdCost::setLambda ( Double  dLambda,
const BitDepths bitDepths 
)

Definition at line 109 of file TComRdCost.cpp.

Void TComSlice::setList1IdxToList0Idx ( )

Definition at line 302 of file TComSlice.cpp.

Void TComSlice::setRefPicList ( TComList< TComPic * > &  rcListPic,
Bool  checkNumPocTotalCurr = false 
)

Definition at line 319 of file TComSlice.cpp.

Void TComSlice::setRefPOCList ( )

Definition at line 290 of file TComSlice.cpp.

Void TComSlice::setTLayerInfo ( UInt  uiTLayer)

Function for setting the slice's temporal layer ID and corresponding temporal_layer_switching_point_flag.

Parameters
uiTLayerTemporal layer ID of the current slice The decoder calls this function to set temporal_layer_switching_point_flag for each temporal layer based on the SPS's temporal_id_nesting_flag and the parsed PPS. Then, current slice's temporal layer ID and temporal_layer_switching_point_flag is set accordingly.

Definition at line 781 of file TComSlice.cpp.

template<typename T >
Int sgn ( val)

Definition at line 58 of file TComSampleAdaptiveOffset.h.

Void TComSlice::sortPicList ( TComList< TComPic * > &  rcListPic)
static

Definition at line 190 of file TComSlice.cpp.

Void TComYuv::subtract ( const TComYuv pcYuvSrc0,
const TComYuv pcYuvSrc1,
const UInt  uiTrUnitIdx,
const UInt  uiPartSize 
)

Definition at line 322 of file TComYuv.cpp.

TComDataCU::TComDataCU ( )

Definition at line 50 of file TComDataCU.cpp.

TComOutputBitstream::TComOutputBitstream ( )

this value is always msb-aligned, bigendian.

the bits held and not flushed to bytestream.

Definition at line 53 of file TComBitStream.cpp.

TComPic::TComPic ( )

Definition at line 48 of file TComPic.cpp.

TComPicSym::TComPicSym ( )

Definition at line 49 of file TComPicSym.cpp.

TComPicYuv::TComPicYuv ( )

Definition at line 54 of file TComPicYuv.cpp.

TComPrediction::TComPrediction ( )

Definition at line 73 of file TComPrediction.cpp.

TComRdCost::TComRdCost ( )

Definition at line 52 of file TComRdCost.cpp.

TComSlice::TComSlice ( )

Definition at line 48 of file TComSlice.cpp.

TComYuv::TComYuv ( )

Definition at line 51 of file TComYuv.cpp.

Bool TComPrediction::UseDPCMForFirstPassIntraEstimation ( TComTU rTu,
const UInt  uiDirMode 
)
static

Definition at line 820 of file TComPrediction.cpp.

Void TComOutputBitstream::write ( UInt  uiBits,
UInt  uiNumberOfBits 
)
virtual

append uiNumberOfBits least significant bits of uiBits to the current bitstream

Implements TComBitIf.

Definition at line 110 of file TComBitStream.cpp.

Void TComOutputBitstream::writeAlignOne ( )
virtual

insert one bits until the bitstream is byte-aligned

Reimplemented from TComBitIf.

Definition at line 154 of file TComBitStream.cpp.

Void TComOutputBitstream::writeAlignZero ( )
virtual

insert zero bits until the bitstream is byte-aligned

Reimplemented from TComBitIf.

Definition at line 161 of file TComBitStream.cpp.

Void TComOutputBitstream::writeByteAlignment ( )

Definition at line 192 of file TComBitStream.cpp.

Distortion TComRdCost::xCalcHADs2x2 ( const Pel piOrg,
const Pel piCurr,
Int  iStrideOrg,
Int  iStrideCur,
Int  iStep 
)
staticprivate

Definition at line 1527 of file TComRdCost.cpp.

Distortion TComRdCost::xCalcHADs4x4 ( const Pel piOrg,
const Pel piCurr,
Int  iStrideOrg,
Int  iStrideCur,
Int  iStep 
)
staticprivate

Definition at line 1549 of file TComRdCost.cpp.

Distortion TComRdCost::xCalcHADs8x8 ( const Pel piOrg,
const Pel piCurr,
Int  iStrideOrg,
Int  iStrideCur,
Int  iStep 
)
staticprivate

Definition at line 1645 of file TComRdCost.cpp.

Bool TComPrediction::xCheckIdenticalMotion ( TComDataCU pcCU,
UInt  PartAddr 
)
protected

Check for identical motion in both motion vector direction of a bi-directional predicted CU

Returns
true, if motion vectors and reference pictures match

Definition at line 478 of file TComPrediction.cpp.

Void TComPrediction::xDCPredFiltering ( const Pel pSrc,
Int  iSrcStride,
Pel pDst,
Int  iDstStride,
Int  iWidth,
Int  iHeight,
ChannelType  channelType 
)
protected

Function for filtering intra DC predictor.

Parameters
pSrcpointer to reconstructed sample array
iSrcStridethe stride of the reconstructed sample array
pDstreference to pointer for the prediction sample array
iDstStridethe stride of the prediction sample array
iWidththe width of the block
iHeightthe height of the block
channelTypetype of pel array (luma, chroma)

This function performs filtering left and top edges of the prediction samples for DC mode (intra coding).

Definition at line 794 of file TComPrediction.cpp.

UInt TComRdCost::xGetExpGolombNumberOfBits ( Int  iVal)
static

Definition at line 177 of file TComRdCost.cpp.

Distortion TComRdCost::xGetHADs ( DistParam pcDtParam)
staticprivate

Definition at line 1753 of file TComRdCost.cpp.

TComPic * TComSlice::xGetLongTermRefPic ( TComList< TComPic * > &  rcListPic,
Int  poc,
Bool  pocHasMsb 
)
protected

Definition at line 247 of file TComSlice.cpp.

TComPic * TComSlice::xGetRefPic ( TComList< TComPic * > &  rcListPic,
Int  poc 
)
protected

Definition at line 230 of file TComSlice.cpp.

Distortion TComRdCost::xGetSAD ( DistParam pcDtParam)
staticprivate

Definition at line 518 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD12 ( DistParam pcDtParam)
staticprivate

Definition at line 735 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD16 ( DistParam pcDtParam)
staticprivate

Definition at line 676 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD16N ( DistParam pcDtParam)
staticprivate

Definition at line 774 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD24 ( DistParam pcDtParam)
staticprivate

Definition at line 907 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD32 ( DistParam pcDtParam)
staticprivate

Definition at line 832 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD4 ( DistParam pcDtParam)
staticprivate

Definition at line 578 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD48 ( DistParam pcDtParam)
staticprivate

Definition at line 1081 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD64 ( DistParam pcDtParam)
staticprivate

Definition at line 974 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSAD8 ( DistParam pcDtParam)
staticprivate

Definition at line 625 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE ( DistParam pcDtParam)
staticprivate

Definition at line 1176 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE16 ( DistParam pcDtParam)
staticprivate

Definition at line 1277 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE16N ( DistParam pcDtParam)
staticprivate

Definition at line 1322 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE32 ( DistParam pcDtParam)
staticprivate

Definition at line 1370 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE4 ( DistParam pcDtParam)
staticprivate

Definition at line 1208 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE64 ( DistParam pcDtParam)
staticprivate

Definition at line 1431 of file TComRdCost.cpp.

Distortion TComRdCost::xGetSSE8 ( DistParam pcDtParam)
staticprivate

Definition at line 1241 of file TComRdCost.cpp.

Void xITrMxN ( Int  bitDepth,
TCoeff coeff,
TCoeff block,
Int  iWidth,
Int  iHeight,
Bool  useDST,
const Int  maxLog2TrDynamicRange 
)

MxN inverse transform (2D)

Parameters
bitDepth[in] bit depth
coeff[in] transform coefficients
block[out] residual block
iWidth[in] width of transform
iHeight[in] height of transform
useDST[in]
maxLog2TrDynamicRange[in]

Definition at line 927 of file TComTrQuant.cpp.

Void TComPrediction::xPredInterBi ( TComDataCU pcCU,
UInt  uiPartAddr,
Int  iWidth,
Int  iHeight,
TComYuv pcYuvPred 
)
protected

Definition at line 577 of file TComPrediction.cpp.

Void TComPrediction::xPredInterBlk ( const ComponentID  compID,
TComDataCU cu,
TComPicYuv refPic,
UInt  partAddr,
TComMv mv,
Int  width,
Int  height,
TComYuv dstPic,
Bool  bi,
const Int  bitDepth 
)
protected

Generate motion-compensated block.

Parameters
compIDColour component ID
cuPointer to current CU
refPicPointer to reference picture
partAddrAddress of block within CU
mvMotion vector
widthWidth of block
heightHeight of block
dstPicPointer to destination picture
biFlag indicating whether bipred is used
bitDepthBit depth

Definition at line 643 of file TComPrediction.cpp.

Void TComPrediction::xPredInterUni ( TComDataCU pcCU,
UInt  uiPartAddr,
Int  iWidth,
Int  iHeight,
RefPicList  eRefPicList,
TComYuv pcYuvPred,
Bool  bi = false 
)
protected

Definition at line 564 of file TComPrediction.cpp.

Void TComPrediction::xPredIntraAng ( Int  bitDepth,
const Pel pSrc,
Int  srcStride,
Pel pTrueDst,
Int  dstStrideTrue,
UInt  uiWidth,
UInt  uiHeight,
ChannelType  channelType,
UInt  dirMode,
const Bool  bEnableEdgeFilters 
)
protected

Function for deriving the simplified angular intra predictions.

Parameters
bitDepthbit depth
pSrcpointer to reconstructed sample array
srcStridethe stride of the reconstructed sample array
pTrueDstreference to pointer for the prediction sample array
dstStrideTruethe stride of the prediction sample array
uiWidththe width of the block
uiHeightthe height of the block
channelTypetype of pel array (luma/chroma)
formatchroma format
dirModethe intra prediction mode index
blkAboveAvailableboolean indication if the block above is available
blkLeftAvailableboolean indication if the block to the left is available
bEnableEdgeFiltersindication whether to enable edge filters

This function derives the prediction samples for the angular mode based on the prediction direction indicated by the prediction mode index. The prediction direction is given by the displacement of the bottom row of the block and the reference row above the block in the case of vertical prediction or displacement of the rightmost column of the block and reference column left from the block in the case of the horizontal prediction. The displacement is signalled at 1/32 pixel accuracy. When projection of the predicted pixel falls inbetween reference samples, the predicted value for the pixel is linearly interpolated from the reference samples. All reference samples are taken from the extended main reference.

Definition at line 229 of file TComPrediction.cpp.

Void TComPrediction::xPredIntraPlanar ( const Pel pSrc,
Int  srcStride,
Pel rpDst,
Int  dstStride,
UInt  width,
UInt  height 
)
protected

Function for deriving planar intra prediction.

Parameters
pSrcpointer to reconstructed sample array
srcStridethe stride of the reconstructed sample array
rpDstreference to pointer for the prediction sample array
dstStridethe stride of the prediction sample array
widththe width of the block
heightthe height of the block
channelTypetype of pel array (luma, chroma)
formatchroma format

This function derives the prediction samples for planar mode (intra coding).

Definition at line 731 of file TComPrediction.cpp.

Void xTrMxN ( Int  bitDepth,
TCoeff block,
TCoeff coeff,
Int  iWidth,
Int  iHeight,
Bool  useDST,
const Int  maxLog2TrDynamicRange 
)

MxN forward transform (2D)

Parameters
bitDepth[in] bit depth
block[in] residual block
coeff[out] transform coefficients
iWidth[in] width of transform
iHeight[in] height of transform
useDST[in]
maxLog2TrDynamicRange[in]

Definition at line 860 of file TComTrQuant.cpp.

Void TComPrediction::xWeightedAverage ( TComYuv pcYuvSrc0,
TComYuv pcYuvSrc1,
Int  iRefIdx0,
Int  iRefIdx1,
UInt  uiPartAddr,
Int  iWidth,
Int  iHeight,
TComYuv pcYuvDst,
const BitDepths clipBitDepths 
)
protected

Definition at line 683 of file TComPrediction.cpp.

SAOOffset::~SAOOffset ( )

Definition at line 52 of file TComSampleAdaptiveOffset.cpp.

TComOutputBitstream::~TComOutputBitstream ( )

Definition at line 58 of file TComBitStream.cpp.

TComPic::~TComPic ( )
virtual

Definition at line 65 of file TComPic.cpp.

TComPicYuv::~TComPicYuv ( )
virtual

Definition at line 74 of file TComPicYuv.cpp.

TComPrediction::~TComPrediction ( )
virtual

Definition at line 86 of file TComPrediction.cpp.

TComRdCost::~TComRdCost ( )
virtual

Definition at line 57 of file TComRdCost.cpp.

TComSlice::~TComSlice ( )
virtual

Definition at line 147 of file TComSlice.cpp.

TComYuv::~TComYuv ( )
virtual

Definition at line 59 of file TComYuv.cpp.

Variable Documentation

const Int ADAPT_SR_SCALE = 1
static

division factor for adaptive search range

Definition at line 136 of file CommonDef.h.

const Int AMVP_DECIMATION_FACTOR = 4
static

Definition at line 130 of file CommonDef.h.

const Int AMVP_MAX_NUM_CANDS = 2
static

AMVP: advanced motion vector prediction - max number of final candidates.

Definition at line 129 of file CommonDef.h.

const Int ARL_C_PRECISION = 7
static

G382: 7-bit arithmetic precision.

Definition at line 174 of file CommonDef.h.

const Int C1FLAG_NUMBER = 8
static

Definition at line 160 of file CommonDef.h.

const Int C2FLAG_NUMBER = 1
static

Definition at line 161 of file CommonDef.h.

const Int CABAC_INIT_PRESENT_FLAG = 1
static

Definition at line 198 of file CommonDef.h.

const Int CHROMA_INTERPOLATION_FILTER_SUB_SAMPLE_POSITIONS = 8
static

Definition at line 201 of file CommonDef.h.

const Int COEF_REMAIN_BIN_REDUCTION = 3
static

indicates the level at which the VLC transitions from Golomb-Rice to TU+EG(k)

Definition at line 153 of file CommonDef.h.

const Int CONTEXT_STATE_BITS = 6
static

Definition at line 241 of file CommonDef.h.

const Int CU_DQP_EG_k = 0
static

expgolomb order

Definition at line 156 of file CommonDef.h.

const Int CU_DQP_TU_CMAX = 5
static

max number bins for truncated unary

Definition at line 155 of file CommonDef.h.

const Int DC_IDX = 1
static

index for intra DC mode

Definition at line 186 of file CommonDef.h.

const Int DM_CHROMA_IDX = 36
static

chroma mode index for derived from luma intra mode

Definition at line 188 of file CommonDef.h.

const Int FAST_UDI_MAX_RDMODE_NUM = 35
static

maximum number of RD comparison in fast-UDI estimation loop

Definition at line 180 of file CommonDef.h.

const Int HOR_IDX = 10
static

index for intra HORIZONTAL mode

Definition at line 185 of file CommonDef.h.

const UChar INIT_ABS_FLAG[NUMBER_OF_SLICE_TYPES][((1 *4)+(1 *2))]
static
Initial value:
=
{
{ 107, 167, 91, 107 , 107, 167 },
{ 107, 167, 91, 122 , 107, 167 },
{ 138, 153, 136, 167 , 152, 152 },
}

Definition at line 426 of file ContextTables.h.

const UChar INIT_CHROMA_PRED_MODE[NUMBER_OF_SLICE_TYPES][2]
static
Initial value:
=
{
{ 152, 139, },
{ 152, 139, },
{ 63, 139, },
}

Definition at line 237 of file ContextTables.h.

const UChar INIT_CHROMA_QP_ADJ_FLAG[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 154, },
{ 154, },
{ 154, },
}

Definition at line 277 of file ContextTables.h.

const UChar INIT_CHROMA_QP_ADJ_IDC[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 154, },
{ 154, },
{ 154, },
}

Definition at line 285 of file ContextTables.h.

const UChar INIT_CROSS_COMPONENT_PREDICTION[NUMBER_OF_SLICE_TYPES][10]
static
Initial value:
=
{
{ 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
{ 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
{ 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
}

Definition at line 493 of file ContextTables.h.

const UChar INIT_CU_TRANSQUANT_BYPASS_FLAG[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 154 },
{ 154 },
{ 154 },
}

Definition at line 172 of file ContextTables.h.

const UChar INIT_DQP[NUMBER_OF_SLICE_TYPES][3]
static
Initial value:
=
{
{ 154, 154, 154, },
{ 154, 154, 154, },
{ 154, 154, 154, },
}

Definition at line 269 of file ContextTables.h.

const UChar INIT_EXPLICIT_RDPCM_DIR[NUMBER_OF_SLICE_TYPES][2 *1]
static
Initial value:
=
{
{139, 139},
{139, 139},
{ 154 , 154 }
}

Definition at line 485 of file ContextTables.h.

const UChar INIT_EXPLICIT_RDPCM_FLAG[NUMBER_OF_SLICE_TYPES][2 *1]
static
Initial value:
=
{
{139, 139},
{139, 139},
{ 154 , 154 }
}

Definition at line 477 of file ContextTables.h.

const UChar INIT_INTER_DIR[NUMBER_OF_SLICE_TYPES][5]
static
Initial value:
=
{
{ 95, 79, 63, 31, 31, },
{ 95, 79, 63, 31, 31, },
{ 154 , 154 , 154 , 154 , 154 , },
}

Definition at line 245 of file ContextTables.h.

const UChar INIT_INTRA_PRED_MODE[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 183, },
{ 154, },
{ 184, },
}

Definition at line 229 of file ContextTables.h.

const UChar INIT_LAST[NUMBER_OF_SLICE_TYPES][2 *15]
static
Initial value:
=
{
{ 125, 110, 124, 110, 95, 94, 125, 111, 111, 79, 125, 126, 111, 111, 79 , 108, 123, 93, 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 },
{ 125, 110, 94, 110, 95, 79, 125, 111, 110, 78, 110, 111, 111, 95, 94 , 108, 123, 108, 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 },
{ 110, 110, 124, 125, 140, 153, 125, 127, 140, 109, 111, 143, 127, 111, 79 , 108, 123, 63, 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 , 154 },
}

Definition at line 341 of file ContextTables.h.

const UChar INIT_MERGE_FLAG_EXT[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 154, },
{ 110, },
{ 154 , },
}

Definition at line 197 of file ContextTables.h.

const UChar INIT_MERGE_IDX_EXT[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 137, },
{ 122, },
{ 154 , },
}

Definition at line 205 of file ContextTables.h.

const UChar INIT_MVD[NUMBER_OF_SLICE_TYPES][2]
static
Initial value:
=
{
{ 169, 198, },
{ 140, 198, },
{ 154 , 154 , },
}

Definition at line 253 of file ContextTables.h.

const UChar INIT_MVP_IDX[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 168, },
{ 168, },
{ 154 , },
}

Definition at line 437 of file ContextTables.h.

const UChar INIT_ONE_FLAG[NUMBER_OF_SLICE_TYPES][((4 *4)+(4 *2))]
static
Initial value:
=
{
{ 154, 196, 167, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 122 , 169, 208, 166, 167, 154, 152, 167, 182 },
{ 154, 196, 196, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 137 , 169, 194, 166, 167, 154, 167, 137, 182 },
{ 140, 92, 137, 138, 140, 152, 138, 139, 153, 74, 149, 92, 139, 107, 122, 152 , 140, 179, 166, 182, 140, 227, 122, 197 },
}

Definition at line 418 of file ContextTables.h.

const UChar INIT_PART_SIZE[NUMBER_OF_SLICE_TYPES][4]
static
Initial value:
=
{
{ 154, 139, 154, 154 },
{ 154, 139, 154, 154 },
{ 184, 154 , 154 , 154 },
}

Definition at line 213 of file ContextTables.h.

const UChar INIT_PRED_MODE[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 134, },
{ 149, },
{ 154 , },
}

Definition at line 221 of file ContextTables.h.

const UChar INIT_QT_CBF[NUMBER_OF_SLICE_TYPES][2 *5]
static
Initial value:
=
{
{ 153, 111, 154 , 154 , 154 , 149, 92, 167, 154, 154 },
{ 153, 111, 154 , 154 , 154 , 149, 107, 167, 154, 154 },
{ 111, 141, 154 , 154 , 154 , 94, 138, 182, 154, 154 },
}

Definition at line 307 of file ContextTables.h.

const UChar INIT_QT_ROOT_CBF[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 79, },
{ 79, },
{ 154 , },
}

Definition at line 318 of file ContextTables.h.

const UChar INIT_REF_PIC[NUMBER_OF_SLICE_TYPES][2]
static
Initial value:
=
{
{ 153, 153 },
{ 153, 153 },
{ 154 , 154 },
}

Definition at line 261 of file ContextTables.h.

const UChar INIT_SAO_MERGE_FLAG[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 153, },
{ 153, },
{ 153, },
}

Definition at line 445 of file ContextTables.h.

const UChar INIT_SAO_TYPE_IDX[NUMBER_OF_SLICE_TYPES][1]
static
Initial value:
=
{
{ 160, },
{ 185, },
{ 200, },
}

Definition at line 453 of file ContextTables.h.

const UChar INIT_SIG_CG_FLAG[NUMBER_OF_SLICE_TYPES][2 *2]
static
Initial value:
=
{
{ 121, 140,
61, 154,
},
{ 121, 140,
61, 154,
},
{ 91, 171,
134, 141,
},
}

Definition at line 352 of file ContextTables.h.

const UChar INIT_SIG_FLAG[NUMBER_OF_SLICE_TYPES][(28+16)]
static
Initial value:
=
{
{ 170, 154, 139, 153, 139, 123, 123, 63, 124, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140 , 170, 153, 138, 138, 122, 121, 122, 121, 167, 151, 183, 140, 151, 183, 140, 140 },
{ 155, 154, 139, 153, 139, 123, 123, 63, 153, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140 , 170, 153, 123, 123, 107, 121, 107, 121, 167, 151, 183, 140, 151, 183, 140, 140 },
{ 111, 111, 125, 110, 110, 94, 124, 108, 124, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 141 , 140, 139, 182, 182, 152, 136, 152, 136, 153, 136, 139, 111, 136, 139, 111, 111 },
}

Definition at line 384 of file ContextTables.h.

const UChar INIT_SKIP_FLAG[NUMBER_OF_SLICE_TYPES][3]
static
Initial value:
=
{
{ 197, 185, 201, },
{ 197, 185, 201, },
{ 154 , 154 , 154 , },
}

Definition at line 189 of file ContextTables.h.

const UChar INIT_SPLIT_FLAG[NUMBER_OF_SLICE_TYPES][3]
static
Initial value:
=
{
{ 107, 139, 126, },
{ 107, 139, 126, },
{ 139, 141, 157, },
}

Definition at line 181 of file ContextTables.h.

const UChar INIT_TRANS_SUBDIV_FLAG[NUMBER_OF_SLICE_TYPES][3]
static
Initial value:
=
{
{ 224, 167, 122, },
{ 124, 138, 94, },
{ 153, 138, 138, },
}

Definition at line 461 of file ContextTables.h.

const UChar INIT_TRANSFORMSKIP_FLAG[NUMBER_OF_SLICE_TYPES][2 *1]
static
Initial value:
=
{
{ 139, 139},
{ 139, 139},
{ 139, 139},
}

Definition at line 469 of file ContextTables.h.

const Int IQUANT_SHIFT = 6
static

Definition at line 229 of file CommonDef.h.

const Int LAST_SIGNIFICANT_GROUPS = 10
static

Definition at line 242 of file CommonDef.h.

const Int LEVEL_RANGE = 30
static

G382: max coefficient level in statistics collection.

Definition at line 175 of file CommonDef.h.

const Int LOG2_MAX_NUM_COLUMNS_MINUS1 = 7
static

Definition at line 195 of file CommonDef.h.

const Int LOG2_MAX_NUM_ROWS_MINUS1 = 7
static

Definition at line 196 of file CommonDef.h.

const Int LOG2_SCALING_LIST_NEUTRAL_VALUE = 4
static

log2 of the value that, when used in a scaling list, has no effect on quantisation

Definition at line 238 of file CommonDef.h.

const Int LOSSLESS_AND_MIXED_LOSSLESS_RD_COST_TEST_QP = 0
static

QP to use for lossless coding.

Definition at line 210 of file CommonDef.h.

const Int LOSSLESS_AND_MIXED_LOSSLESS_RD_COST_TEST_QP_PRIME =4
static

QP' to use for mixed_lossy_lossless coding.

Definition at line 211 of file CommonDef.h.

const Int LUMA_INTERPOLATION_FILTER_SUB_SAMPLE_POSITIONS = 4
static

Definition at line 200 of file CommonDef.h.

const UInt LUMA_LEVEL_TO_DQP_LUT_MAXSIZE = 1024
static

max LUT size for QP offset based on luma

Definition at line 246 of file CommonDef.h.

const UChar TComPrediction::m_aucIntraFilter
staticprivate
Initial value:
=
{
{
10,
7,
1,
0,
10,
},
{
10,
7,
1,
0,
10,
}
}

Definition at line 71 of file TComPrediction.h.

const TFilterCoeff TComInterpolationFilter::m_chromaFilter
staticprivate
Initial value:
=
{
{ 0, 64, 0, 0 },
{ -2, 58, 10, -2 },
{ -4, 54, 16, -2 },
{ -6, 46, 28, -4 },
{ -4, 36, 36, -4 },
{ -4, 28, 46, -6 },
{ -2, 16, 54, -4 },
{ -2, 10, 58, -2 }
}

Chroma filter taps.

Definition at line 59 of file TComInterpolationFilter.h.

const TFilterCoeff TComInterpolationFilter::m_lumaFilter
staticprivate
Initial value:
=
{
{ 0, 0, 0, 64, 0, 0, 0, 0 },
{ -1, 4, -10, 58, 17, -5, 1, 0 },
{ -1, 4, -11, 40, 40, -11, 4, -1 },
{ 0, 1, -5, 17, 58, -10, 4, -1 }
}

Luma filter taps.

Definition at line 58 of file TComInterpolationFilter.h.

const Int MAX_CPB_CNT = 32
static

Upper bound of (cpb_cnt_minus1 + 1)

Definition at line 150 of file CommonDef.h.

const Int MAX_CU_DEPTH = 6
static

log2(CTUSize)

Definition at line 220 of file CommonDef.h.

const Int MAX_CU_SIZE = 64
static

= 1<<(MAX_CU_DEPTH)

Definition at line 221 of file CommonDef.h.

const Double MAX_DOUBLE = 1.7e+308
static

max. value of Double-type value

Definition at line 116 of file CommonDef.h.

const Int MAX_ENCODER_DEBLOCKING_QUALITY_LAYERS = 8
static

Definition at line 244 of file CommonDef.h.

const Int MAX_GOP = 64
static

max. value of hierarchical GOP size

Definition at line 123 of file CommonDef.h.

const Int MAX_INT = 2147483647
static

max. value of signed 32-bit integer

Definition at line 115 of file CommonDef.h.

const UInt MAX_INTRA_FILTER_DEPTHS =5
static

Definition at line 66 of file TComPrediction.h.

const Int MAX_MATRIX_COEF_NUM = 64
static

max coefficient number for quantization matrix

Definition at line 235 of file CommonDef.h.

const Int MAX_MATRIX_SIZE_NUM = 8
static

max size number for quantization matrix

Definition at line 236 of file CommonDef.h.

const Int MAX_NESTING_NUM_LAYER = 64
static

Definition at line 141 of file CommonDef.h.

const Int MAX_NESTING_NUM_OPS = 1024
static

Definition at line 140 of file CommonDef.h.

const Int MAX_NUM_LAYER_IDS = 64
static

Definition at line 151 of file CommonDef.h.

const Int MAX_NUM_LONG_TERM_REF_PICS = 33
static

Definition at line 203 of file CommonDef.h.

const Int MAX_NUM_PART_IDXS_IN_CTU_WIDTH = MAX_CU_SIZE/MIN_PU_SIZE
static

maximum number of partition indices across the width of a CTU (or height of a CTU)

Definition at line 225 of file CommonDef.h.

const Int MAX_NUM_PICS_IN_SOP = 1024
static

Definition at line 138 of file CommonDef.h.

const Int MAX_NUM_PPS = 64
static

Definition at line 165 of file CommonDef.h.

const Int MAX_NUM_REF = 16
static

max. number of entries in picture reference list

Definition at line 125 of file CommonDef.h.

const Int MAX_NUM_REF_PICS = 16
static

max. number of pictures used for reference

Definition at line 124 of file CommonDef.h.

const Int MAX_NUM_SPS = 16
static

Definition at line 164 of file CommonDef.h.

const Int MAX_NUM_VPS = 16
static

Definition at line 163 of file CommonDef.h.

const Int MAX_QP = 51
static

Definition at line 126 of file CommonDef.h.

const Int MAX_QP_OFFSET_LIST_SIZE = 6
static

Maximum size of QP offset list is 6 entries.

Definition at line 207 of file CommonDef.h.

const Int MAX_TIMECODE_SEI_SETS = 3
static

Maximum number of time sets.

Definition at line 218 of file CommonDef.h.

const Int MAX_TLAYER = 7
static

Explicit temporal layer QP offset - max number of temporal layer.

Definition at line 134 of file CommonDef.h.

const Int MAX_TU_SIZE = 32
static

Definition at line 224 of file CommonDef.h.

const UInt MAX_UINT = 0xFFFFFFFFU
static

max. value of unsigned 32-bit integer

Definition at line 114 of file CommonDef.h.

const Int MAX_VPS_NUH_RESERVED_ZERO_LAYER_ID_PLUS1 = 1
static

Definition at line 145 of file CommonDef.h.

const Int MAX_VPS_NUM_HRD_PARAMETERS = 1
static

Definition at line 143 of file CommonDef.h.

const Int MAX_VPS_OP_SETS_PLUS1 = 1024
static

Definition at line 144 of file CommonDef.h.

const Int MAXIMUM_INTRA_FILTERED_HEIGHT = 16
static

Definition at line 148 of file CommonDef.h.

const Int MAXIMUM_INTRA_FILTERED_WIDTH = 16
static

Definition at line 147 of file CommonDef.h.

const Int MDCS_ANGLE_LIMIT = 4
static

0 = Horizontal/vertical only, 1 = Horizontal/vertical +/- 1, 2 = Horizontal/vertical +/- 2 etc...

Definition at line 190 of file CommonDef.h.

const Int MDCS_MAXIMUM_HEIGHT = 8
static

(measured in pixels) TUs with height greater than this can only use diagonal scan

Definition at line 192 of file CommonDef.h.

const Int MDCS_MAXIMUM_WIDTH = 8
static

(measured in pixels) TUs with width greater than this can only use diagonal scan

Definition at line 191 of file CommonDef.h.

const Int MIN_PU_SIZE = 4
static

Definition at line 222 of file CommonDef.h.

const Int MIN_TU_SIZE = 4
static

Definition at line 223 of file CommonDef.h.

const Int MLS_CG_LOG2_HEIGHT = 2
static

Definition at line 170 of file CommonDef.h.

const Int MLS_CG_LOG2_WIDTH = 2
static

Definition at line 169 of file CommonDef.h.

const Int MLS_CG_SIZE = 4
static

Coefficient group size of 4x4; = MLS_CG_LOG2_WIDTH + MLS_CG_LOG2_HEIGHT.

Definition at line 171 of file CommonDef.h.

const Int MLS_GRP_NUM = 64
static

Max number of coefficient groups, max(16, 64)

Definition at line 168 of file CommonDef.h.

const Int MRG_MAX_NUM_CANDS = 5
static

MERGE.

Definition at line 131 of file CommonDef.h.

const UInt nonDiagonalScan8x8ContextOffset[MAX_NUM_CHANNEL_TYPE] = { 6, 0 }
static

Definition at line 87 of file ContextTables.h.

const Int NOT_VALID = -1
static

Definition at line 127 of file CommonDef.h.

const UInt notFirstGroupNeighbourhoodContextOffset[MAX_NUM_CHANNEL_TYPE] = { 3, 0 }
static

Definition at line 88 of file ContextTables.h.

const Int NUM_CHROMA_MODE = 5
static

total number of chroma modes

Definition at line 187 of file CommonDef.h.

const Int NUM_INTRA_MODE = 36
static

Definition at line 182 of file CommonDef.h.

const Int NUM_LONG_TERM_REF_PIC_SPS = 0
static

Definition at line 204 of file CommonDef.h.

const Int PLANAR_IDX = 0
static

Definition at line 183 of file CommonDef.h.

const Int QUANT_SHIFT = 14
static

Q(4) = 2^14.

Definition at line 228 of file CommonDef.h.

const Int RExt__GOLOMB_RICE_ADAPTATION_STATISTICS_SETS = 4
static

Definition at line 213 of file CommonDef.h.

const Int RExt__GOLOMB_RICE_INCREMENT_DIVISOR = 4
static

Definition at line 214 of file CommonDef.h.

const Int RExt__PREDICTION_WEIGHTING_ANALYSIS_DC_PRECISION = 0
static

Additional fixed bit precision used during encoder-side weighting prediction analysis. Currently only used when high_precision_prediction_weighting_flag is set, for backwards compatibility reasons.

Definition at line 216 of file CommonDef.h.

const Int RVM_VCEGAM10_M = 4
static

Definition at line 178 of file CommonDef.h.

const Int SBH_THRESHOLD = 4
static

value of the fixed SBH controlling threshold

Definition at line 158 of file CommonDef.h.

const Int SCALE_BITS = 15
static

For fractional bit estimates in RDOQ.

Definition at line 230 of file CommonDef.h.

const Int SCALING_LIST_BITS = 8
static

bit depth of scaling list entries

Definition at line 237 of file CommonDef.h.

const Int SCALING_LIST_DC = 16
static

default DC value

Definition at line 239 of file CommonDef.h.

const Int SCALING_LIST_NUM = MAX_NUM_COMPONENT * NUMBER_OF_PREDICTION_MODES
static

list number for quantization matrix

Definition at line 232 of file CommonDef.h.

const Int SCALING_LIST_REM_NUM = 6
static

Definition at line 226 of file CommonDef.h.

const Int SCALING_LIST_START_VALUE = 8
static

start value for dpcm mode

Definition at line 234 of file CommonDef.h.

const UInt significanceMapContextSetSize[MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES] = { {9, 12, 6, 1}, {9, 3, 3, 1} }
static

Definition at line 86 of file ContextTables.h.

const UInt significanceMapContextSetStart[MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES] = { {0, 9, 21, 27}, {0, 9, 12, 15} }
static

Definition at line 85 of file ContextTables.h.

const UChar TComCABACTables::sm_aucLPSTable
static

Definition at line 54 of file TComCABACTables.h.

const UChar TComCABACTables::sm_aucRenormTable
static
Initial value:
=
{
6, 5, 4, 4,
3, 3, 3, 3,
2, 2, 2, 2,
2, 2, 2, 2,
1, 1, 1, 1,
1, 1, 1, 1,
1, 1, 1, 1,
1, 1, 1, 1
}

Definition at line 55 of file TComCABACTables.h.

const Int VER_IDX = 26
static

index for intra VERTICAL mode

Definition at line 184 of file CommonDef.h.