defines.h File Reference

Header file containing some useful global definitions. More...

#include "typedefs.h"

Include dependency graph for defines.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define TRACE   0
#define JM   "16 (FRExt)"
#define VERSION   "16.0"
#define EXT_VERSION   "(FRExt)"
#define DUMP_DPB   0
#define PAIR_FIELDS_IN_OUTPUT   0
#define IMGTYPE   1
#define ENABLE_FIELD_CTX   1
#define ENABLE_HIGH444_CTX   1
#define ZEROSNR   0
#define ENABLE_OUTPUT_TONEMAPPING   1
#define MAX_NUM_SLICES   50
#define MAX_REFERENCE_PICTURES   32
#define MAX_CODED_FRAME_SIZE   8000000
#define BASELINE   66
#define MAIN   77
#define EXTENDED   88
#define FREXT_HP   100
#define FREXT_Hi10P   110
#define FREXT_Hi422   122
#define FREXT_Hi444   244
#define FREXT_CAVLC444   44
#define FILE_NAME_SIZE   255
#define INPUT_TEXT_SIZE   1024
#define NUM_BLOCK_TYPES   22
#define BLOCK_SHIFT   2
#define BLOCK_SIZE   4
#define BLOCK_SIZE_8x8   8
#define SMB_BLOCK_SIZE   8
#define BLOCK_PIXELS   16
#define MB_BLOCK_SIZE   16
#define MB_PIXELS   256
#define MB_PIXELS_SHIFT   8
#define MB_BLOCK_SHIFT   4
#define BLOCK_MULTIPLE   4
#define MB_BLOCK_PARTITIONS   16
#define BLOCK_CONTEXT   64
#define BLOCK_SIZE_SP   16
#define BLOCK_SIZE_8x8_SP   32
#define NO_INTRA_PMODE   9
#define IS_INTRA(MB)   ((MB)->mb_type==I4MB || (MB)->mb_type==I16MB ||(MB)->mb_type==IPCM || (MB)->mb_type==I8MB || (MB)->mb_type==SI4MB)
#define IS_I16MB(MB)   ((MB)->mb_type==I16MB || (MB)->mb_type==IPCM)
#define IS_INTER(MB)   ((MB)->mb_type!=I4MB && (MB)->mb_type!=I16MB && (MB)->mb_type!=I8MB && (MB)->mb_type!=IPCM)
#define IS_INTERMV(MB)   ((MB)->mb_type!=I4MB && (MB)->mb_type!=I16MB && (MB)->mb_type!=I8MB && (MB)->mb_type!=0 && (MB)->mb_type!=IPCM)
#define IS_DIRECT(MB)   ((MB)->mb_type==0 && (currSlice->slice_type == B_SLICE ))
#define IS_SKIP(MB)   ((MB)->mb_type==0 && (currSlice->slice_type == P_SLICE || currSlice->slice_type == SP_SLICE))
#define TOTRUN_NUM   15
#define RUNBEFORE_NUM   7
#define RUNBEFORE_NUM_M1   6
#define MIN_QP   0
#define MAX_QP   51
#define LAMBDA_ACCURACY_BITS   16
#define INVALIDINDEX   (-135792468)
#define RC_MAX_TEMPORAL_LEVELS   5
#define ZEROBYTES_SHORTSTARTCODE   2
#define MAX_PLANE   3
#define IS_INDEPENDENT(IMG)   ((IMG)->separate_colour_plane_flag)
#define IS_FREXT_PROFILE(profile_idc)   ( profile_idc>=FREXT_HP || profile_idc == FREXT_CAVLC444 )
#define HI_INTRA_ONLY_PROFILE   (((p_Img->active_sps->profile_idc>=FREXT_Hi10P)&&(p_Img->active_sps->constrained_set3_flag))||(p_Img->active_sps->profile_idc==FREXT_CAVLC444))

Typedefs

typedef unsigned short imgpel
typedef int distpel

Enumerations

enum  {
  PSKIP = 0, BSKIP_DIRECT = 0, P16x16 = 1, P16x8 = 2,
  P8x16 = 3, SMB8x8 = 4, SMB8x4 = 5, SMB4x8 = 6,
  SMB4x4 = 7, P8x8 = 8, I4MB = 9, I16MB = 10,
  IBLOCK = 11, SI4MB = 12, I8MB = 13, IPCM = 14,
  MAXMODE = 15
}
enum  { DIR_TEMPORAL = 0, DIR_SPATIAL = 1 }
enum  {
  LUMA = 0, LUMA_INTRA16x16DC = 1, LUMA_INTRA16x16AC = 2, CB = 3,
  CB_INTRA16x16DC = 4, CB_INTRA16x16AC = 5, CR = 8, CR_INTRA16x16DC = 9,
  CR_INTRA16x16AC = 10
}
enum  {
  LUMA_16DC = 0, LUMA_16AC = 1, LUMA_8x8 = 2, LUMA_8x4 = 3,
  LUMA_4x8 = 4, LUMA_4x4 = 5, CHROMA_DC = 6, CHROMA_AC = 7,
  CHROMA_DC_2x4 = 8, CHROMA_DC_4x4 = 9, CB_16DC = 10, CB_16AC = 11,
  CB_8x8 = 12, CB_8x4 = 13, CB_4x8 = 14, CB_4x4 = 15,
  CR_16DC = 16, CR_16AC = 17, CR_8x8 = 18, CR_8x4 = 19,
  CR_4x8 = 20, CR_4x4 = 21
}
enum  {
  VERT_PRED = 0, HOR_PRED = 1, DC_PRED = 2, DIAG_DOWN_LEFT_PRED = 3,
  DIAG_DOWN_RIGHT_PRED = 4, VERT_RIGHT_PRED = 5, HOR_DOWN_PRED = 6, VERT_LEFT_PRED = 7,
  HOR_UP_PRED = 8
}
enum  { VERT_PRED_16 = 0, HOR_PRED_16 = 1, DC_PRED_16 = 2, PLANE_16 = 3 }
enum  { DC_PRED_8 = 0, HOR_PRED_8 = 1, VERT_PRED_8 = 2, PLANE_8 = 3 }
enum  { EOS = 1, SOP = 2, SOS = 3 }
enum  { MVPRED_MEDIAN = 0, MVPRED_L = 1, MVPRED_U = 2, MVPRED_UR = 3 }
enum  { DECODING_OK = 0, SEARCH_SYNC = 1, PICTURE_DECODED = 2 }

Variables

enum { ... }  MBModeTypes
enum { ... }  DirectModes
enum { ... }  CAVLCBlockTypes
enum { ... }  CABACBlockTypes
enum { ... }  I4x4PredModes
enum { ... }  I16x16PredModes
enum { ... }  I8x8PredModes
enum { ... }  MVPredTypes


Detailed Description

Header file containing some useful global definitions.

Author:
Main contributors (see contributors.h for copyright, address and affiliation details)
Date:
21. March 2001

Definition in file defines.h.


Define Documentation

#define BASELINE   66

YUV 4:2:0/8 "Baseline".

Definition at line 52 of file defines.h.

#define DUMP_DPB   0

Dump DPB info for debug purposes.

Definition at line 37 of file defines.h.

#define ENABLE_FIELD_CTX   1

Enables Field mode related context types for CABAC.

Definition at line 40 of file defines.h.

#define ENABLE_HIGH444_CTX   1

Enables High 444 profile context types for CABAC.

Definition at line 41 of file defines.h.

#define ENABLE_OUTPUT_TONEMAPPING   1

enable tone map the output if tone mapping SEI present

Definition at line 43 of file defines.h.

#define EXTENDED   88

YUV 4:2:0/8 "Extended".

Definition at line 54 of file defines.h.

#define FREXT_CAVLC444   44

YUV 4:4:4/14 "CAVLC 4:4:4".

Definition at line 59 of file defines.h.

#define FREXT_Hi10P   110

YUV 4:2:0/10 "High 10".

Definition at line 56 of file defines.h.

#define FREXT_Hi422   122

YUV 4:2:2/10 "High 4:2:2".

Definition at line 57 of file defines.h.

#define FREXT_Hi444   244

YUV 4:4:4/14 "High 4:4:4".

Definition at line 58 of file defines.h.

#define FREXT_HP   100

YUV 4:2:0/8 "High".

Definition at line 55 of file defines.h.

#define IMGTYPE   1

Define imgpel size type. 0 implies byte (cannot handle >8 bit depths) and 1 implies unsigned short.

Definition at line 39 of file defines.h.

#define MAIN   77

YUV 4:2:0/8 "Main".

Definition at line 53 of file defines.h.

#define MAX_CODED_FRAME_SIZE   8000000

bytes for one frame

Definition at line 49 of file defines.h.

Referenced by AllocPartition(), and read_new_slice().

#define MAX_REFERENCE_PICTURES   32

H.264 allows 32 fields.

Definition at line 48 of file defines.h.

Referenced by malloc_slice().

#define PAIR_FIELDS_IN_OUTPUT   0

Pair field pictures for output purposes.

Definition at line 38 of file defines.h.

#define TRACE   0

0:Trace off 1:Trace on 2:detailed CABAC context information

Definition at line 30 of file defines.h.

Referenced by readSyntaxElement_Intra4x4PredictionMode().

#define ZEROSNR   0

PSNR computation method.

Definition at line 42 of file defines.h.


Enumeration Type Documentation

anonymous enum

Enumerator:
DIR_TEMPORAL  Temporal Direct Mode.
DIR_SPATIAL  Spatial Direct Mode.

Definition at line 124 of file defines.h.

anonymous enum

Enumerator:
EOS  End Of Sequence.
SOP  Start Of Picture.
SOS  Start Of Slice.

Definition at line 213 of file defines.h.


Documentation generated with DoxyGen