defines.h File Reference

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

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

Go to the source code of this file.

Defines

#define TRACE   0
#define DUMP_DPB   0
#define PAIR_FIELDS_IN_OUTPUT   0
#define IMGTYPE   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 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 && (img->type==B_SLICE ))
#define IS_SKIP(MB)   ((MB)->mb_type==0 && (img->type==P_SLICE || img->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 INVALIDINDEX   (-135792468)
#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   (((active_sps->profile_idc>=FREXT_Hi10P)&&(active_sps->constrained_set3_flag))||(active_sps->profile_idc==FREXT_CAVLC444))

Typedefs

typedef unsigned char byte
typedef unsigned char uint8
typedef unsigned short uint16
typedef unsigned int uint32
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 45 of file defines.h.

#define DUMP_DPB   0

Dump DPB info for debug purposes.

Definition at line 31 of file defines.h.

#define ENABLE_HIGH444_CTX   1

Enables High 444 profile context types for CABAC.

Definition at line 34 of file defines.h.

#define ENABLE_OUTPUT_TONEMAPPING   1

enable tone map the output if tone mapping SEI present

Definition at line 36 of file defines.h.

#define EXTENDED   88

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

Definition at line 47 of file defines.h.

#define FREXT_CAVLC444   44

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

Definition at line 52 of file defines.h.

#define FREXT_Hi10P   110

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

Definition at line 49 of file defines.h.

#define FREXT_Hi422   122

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

Definition at line 50 of file defines.h.

#define FREXT_Hi444   244

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

Definition at line 51 of file defines.h.

#define FREXT_HP   100

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

Definition at line 48 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 33 of file defines.h.

#define MAIN   77

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

Definition at line 46 of file defines.h.

#define MAX_CODED_FRAME_SIZE   8000000

bytes for one frame

Definition at line 42 of file defines.h.

Referenced by AllocPartition(), and read_new_slice().

#define MAX_REFERENCE_PICTURES   32

H.264 allows 32 fields.

Definition at line 41 of file defines.h.

Referenced by init_global_buffers().

#define PAIR_FIELDS_IN_OUTPUT   0

Pair field pictures for output purposes.

Definition at line 32 of file defines.h.

#define TRACE   0

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

Definition at line 28 of file defines.h.

Referenced by readSyntaxElement_Intra4x4PredictionMode().

#define ZEROSNR   0

PSNR computation method.

Definition at line 35 of file defines.h.


Typedef Documentation

typedef unsigned char byte

byte type definition

Definition at line 84 of file defines.h.

typedef unsigned short uint16

type definition for unsigned short (16 bits)

Definition at line 86 of file defines.h.

typedef unsigned int uint32

type definition for unsigned int (32 bits)

Definition at line 87 of file defines.h.

typedef unsigned char uint8

type definition for unsigned char (same as byte)

Definition at line 85 of file defines.h.


Enumeration Type Documentation

anonymous enum

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

Definition at line 122 of file defines.h.

anonymous enum

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

Definition at line 211 of file defines.h.


Documentation generated with DoxyGen