1 % This file contains commands for all the state
2 % variables in the spec. These commands should be
3 % used for each occurrence of the state variables
4 % so that they have a consistent style, which can
7 % Arithmetic decoding engine state variables %
9 \newcommand{\true}{\text{\bf{True
}}}
10 \newcommand{\false}{\text{\bf{False
}}}
12 \newcommand\StateName{\textbf{state
}}
13 \newcommand\VideoParams{\textbf{video
\_params}}
15 % How to use state macros:
16 % To insert the raw variable index, type \VNickName
17 % To insert the sequence state variable, type \SNickName
18 % To inset the state variable, type \NickName
20 \newcommand{\pdefine}[2]{%
22 \expandafter\def\csname #1\endcsname{\text{\StateName[#2]}}}
24 \newcommand{\vdefine}[2]{%
26 \expandafter\def\csname #1\endcsname{\text{\VideoParams[#2]}}}
29 \newcommand{\kdefine}[2]{%
30 \expandafter\def\csname #1\endcsname{\text{\StateName[#2]}\index{#2}}
31 \expandafter\def\csname V
#1\endcsname{\text{#2}\index{#2}}
35 %\kdefine{SamplingFormatIndex}{SAMPLING\_FORMAT\_INDEX}
37 %\vdefine{SInterlaced}{INTERLACED}
38 \vdefine{SSourceSampling
}{\text{SOURCE
\_SAMPLING}}
39 \newcommand{\Interlaced}{\text{INTERLACED
}}
40 \newcommand{\Progressive}{\text{PROGRESSIVE
}}
41 \vdefine{STopFieldFirst
}{TOP
\_FIELD\_FIRST}
42 %\kdefine{FrameRateIndex}{FRAME\_RATE\_INDEX}
43 \vdefine{SFrameWidth
}{FRAME
\_WIDTH}
44 \vdefine{SFrameHeight
}{FRAME
\_HEIGHT}
45 \vdefine{SChromaFormatIndex
}{CHROMA
\_FORMAT\_INDEX}
46 \vdefine{SFrameRateNumer
}{FRAME
\_RATE\_NUMER}
47 \vdefine{SFrameRateDenom
}{FRAME
\_RATE\_DENOM}
49 \vdefine{SAspectRatioNumer
}{PIXEL
\_ASPECT\_RATIO\_NUMER}
50 \vdefine{SAspectRatioDenom
}{PIXEL
\_ASPECT\_RATIO\_DENOM}
52 \vdefine{SCleanWidth
}{CLEAN
\_WIDTH}
53 \vdefine{SCleanHeight
}{CLEAN
\_HEIGHT}
54 \vdefine{SLeftOffset
}{CLEAN
\_LEFT\_OFFSET}
55 \vdefine{STopOffset
}{CLEAN
\_TOP\_OFFSET}
57 %\kdefine{SignalRangeIndex}{SIGNAL\_RANGE\_INDEX}
58 \vdefine{SLumaOffset
}{LUMA
\_OFFSET}
59 \vdefine{SLumaExcursion
}{LUMA
\_EXCURSION}
60 \vdefine{SChromaOffset
}{CHROMA
\_OFFSET}
61 \vdefine{SChromaExcursion
}{CHROMA
\_EXCURSION}
63 %\kdefine{ColourSpecIndex}{COLOUR\_SPEC\_INDEX}
64 %\kdefine{ColourPrimariesIndex}{COLOUR\_PRIMARIES\_INDEX}
65 %\kdefine{ColourMatrixIndex}{COLOUR\_MATRIX\_INDEX}
66 %\kdefine{TransferFunction}{transfer\_fn}
67 %\kdefine{TransferFunctionIndex}{TRANSFER\_FN\_INDEX}
72 \kdefine{ARange
}{RANGE
}
75 \kdefine{ACodeMinusLow
}{CODE
\_MINUS\_LOW}
76 \kdefine{ABitsLeft
}{BITS
\_LEFT}
77 \kdefine{AContexts
}{CONTEXT
\_PROBS}
78 \kdefine{ALUT
}{PROB
\_LUT}
79 \kdefine{ACounter
}{COUNTER
}
81 \kdefine{RefBuffer
}{REF
\_PICTURES}
82 \kdefine{DecodedBuffer
}{DECODED
\_PICTURES}
83 \kdefine{RefBufferSize
}{RB
\_SIZE}
84 \kdefine{MaxRefBufferSize
}{MAX
\_RB\_SIZE}
85 \kdefine{DPBSize
}{DPB
\_SIZE}
86 \kdefine{StreamBuffer
}{STREAM
\_BUFFER}
87 \kdefine{StreamBufferSize
}{STREAM
\_BUFFER\_SIZE}
88 \kdefine{PictureInterval
}{PICTURE
\_INTERVAL}
89 \kdefine{ParseInfoPrefix
}{PARSE
\_INFO\_PREFIX}
90 \kdefine{ParseCode
}{PARSE
\_CODE}
91 \kdefine{NextParseOffset
}{NEXT
\_PARSE\_OFFSET}
92 \kdefine{PrevParseOffset
}{PREVIOUS
\_PARSE\_OFFSET}
94 \kdefine{VersionMajor
}{VERSION
\_MAJOR}
95 \kdefine{VersionMinor
}{VERSION
\_MINOR}
96 \kdefine{Profile
}{PROFILE
}
97 \kdefine{Level
}{LEVEL
}
99 \kdefine{LumaDepth
}{LUMA
\_DEPTH}
100 \kdefine{ChromaDepth
}{CHROMA
\_DEPTH}
101 \kdefine{LumaWidth
}{LUMA
\_WIDTH}
102 \kdefine{LumaHeight
}{LUMA
\_HEIGHT}
103 \kdefine{ChromaWidth
}{CHROMA
\_WIDTH}
104 \kdefine{ChromaHeight
}{CHROMA
\_HEIGHT}
105 \kdefine{LumaXBlen
}{LUMA
\_XBLEN}
106 \kdefine{LumaYBlen
}{LUMA
\_YBLEN}
107 \kdefine{LumaXBsep
}{LUMA
\_XBSEP}
108 \kdefine{LumaYBsep
}{LUMA
\_YBSEP}
109 \kdefine{ChromaXBlen
}{CHROMA
\_XBLEN}
110 \kdefine{ChromaYBlen
}{CHROMA
\_YBLEN}
111 \kdefine{ChromaXBsep
}{CHROMA
\_XBSEP}
112 \kdefine{ChromaYBsep
}{CHROMA
\_YBSEP}
113 \kdefine{XBlen
}{XBLEN
}
114 \kdefine{YBlen
}{YBLEN
}
115 \kdefine{XBsep
}{XBSEP
}
116 \kdefine{YBsep
}{YBSEP
}
117 \kdefine{XOffset
}{XOFFSET
}
118 \kdefine{YOffset
}{YOFFSET
}
119 \kdefine{LenX
}{LEN
\_X}
120 \kdefine{LenY
}{LEN
\_Y}
122 \kdefine{SuperblocksX
}{SUPERBLOCKS
\_X}
123 \kdefine{SuperblocksY
}{SUPERBLOCKS
\_Y}
124 \kdefine{BlocksX
}{BLOCKS
\_X}
125 \kdefine{BlocksY
}{BLOCKS
\_Y}
127 \kdefine{PictureNumber
}{PICTURE
\_NUM}
128 \kdefine{RefOneNum
}{REF1
\_PICTURE\_NUM}
129 \kdefine{RefTwoNum
}{REF2
\_PICTURE\_NUM}
130 \kdefine{RetiredPicture
}{RETD
\_PIC\_NUM}
132 \kdefine{BlockData
}{BLOCK
\_DATA}
133 \kdefine{BlockDataLength
}{BLOCK
\_DATA\_LENGTH}
134 \kdefine{CompressedBlockData
}{COMPRESSED
\_BLOCK\_DATA}
135 \kdefine{LumaXBLen
}{LUMA
\_XBLEN}
136 \kdefine{LumaYBLen
}{LUMA
\_YBLEN}
137 \kdefine{LumaXBSep
}{LUMA
\_XBSEP}
138 \kdefine{LumaYBSep
}{LUMA
\_YBSEP}
139 \kdefine{MotionVectorPrecision
}{MV
\_PRECISION}
140 \kdefine{RefsWeightPrecision
}{REFS
\_WT\_PRECISION}
141 \kdefine{RefOneWeight
}{REF1
\_WT}
142 \kdefine{RefTwoWeight
}{REF2
\_WT}
143 \kdefine{PictureUsingGlobal
}{USING
\_GLOBAL}
144 \kdefine{GlobalParams
}{GLOBAL
\_PARAMS}
146 \kdefine{PicturePredictionModeIndex
}{PICTURE
\_PRED\_MODE}
148 \kdefine{Quant
}{QUANTISER
}
149 \kdefine{ZeroResidual
}{ZERO
\_RESIDUAL}
150 \kdefine{WaveletIndex
}{WAVELET
\_INDEX}
151 \kdefine{WaveletFilter
}{WAVELET
\_FILTER}
152 \kdefine{TransformDepth
}{DWT
\_DEPTH}
153 \kdefine{YTransform
}{Y
\_TRANSFORM}
154 \kdefine{COneTransform
}{C1
\_TRANSFORM}
155 \kdefine{CTwoTransform
}{C2
\_TRANSFORM}
156 \kdefine{CodeblockMode
}{CODEBLOCK
\_MODE}
157 \kdefine{SBSplit
}{SB
\_SPLIT}
158 \kdefine{SBCommon
}{SB
\_COMMON}
159 \kdefine{PURefinuseA
}{REF1
\_MODE}
160 \kdefine{PURefinuseB
}{REF2
\_MODE}
161 \kdefine{PULumaDC
}{LUMA
\_DC}
162 \kdefine{PUChromaADC
}{C1
\_DC}
163 \kdefine{PUChromaBDC
}{C2
\_DC}
164 \kdefine{PUvectorA
}{REF1
\_VECTOR}
165 \kdefine{PUvectorB
}{REF2
\_VECTOR}
167 \kdefine{CurrentByte
}{CURRENT
\_BYTE}
168 \kdefine{NextBit
}{NEXT
\_BIT}
169 \kdefine{CodeblocksX
}{CODEBLOCKS
\_X}
170 \kdefine{CodeblocksY
}{CODEBLOCKS
\_Y}
172 \kdefine{CurrentPicture
}{CURRENT
\_PICTURE}
174 \kdefine{SliceBytesNum
}{SLICE
\_BYTES\_NUMER}
175 \kdefine{SliceBytesDenom
}{SLICE
\_BYTES\_DENOM}
176 \kdefine{QuantMatrix
}{QMATRIX
}
177 \kdefine{SlicesX
}{SLICES
\_X}
178 \kdefine{SlicesY
}{SLICES
\_Y}
180 \newcommand{\LL}{\textit{LL
}}
181 \newcommand{\LH}{\textit{LH
}}
182 \newcommand{\HL}{\textit{HL
}}
183 \newcommand{\HH}{\textit{HH
}}
185 \newcommand{\PicNum}{\text{PIC
\_NUM}}
187 \newcommand{\SingleQuantiser}{\text{SINGLE
\_QUANT}}
188 \newcommand{\MultipleQuantiser}{\text{MULTI
\_QUANT}}
189 \newcommand{\Intra}{\text{INTRA
}}
190 \newcommand{\Inter}{\text{INTER
}}
191 \newcommand{\RefOneAndTwo}{\text{REF1AND2
}}
192 \newcommand{\RefOneOnly}{\text{REF1ONLY
}}
193 \newcommand{\RefTwoOnly}{\text{REF2ONLY
}}
194 \newcommand{\RefOne}{\text{REF1
}}
195 \newcommand{\RefTwo}{\text{REF2
}}
196 \newcommand{\RMode}{\text{RMODE
}}
197 \newcommand{\GMode}{\text{GMODE
}}
198 \newcommand{\DC}{\text{DC
}}
199 \newcommand{\Vect}{\text{VECTOR
}}
201 \newcommand{\ZRS}{\text{ZRS
}}
202 \newcommand{\ZRSexponent}{\text{ZRS
\_EXP}}
203 \newcommand{\PerspectiveExponent}{\text{PERSP
\_EXP}}
204 \newcommand{\Perspective}{\text{PERSPECTIVE
}}
205 \newcommand{\PerspectiveX}{\text{PERSP
\_X}}
206 \newcommand{\PerspectiveY}{\text{PERSP
\_Y}}
207 \newcommand{\PanTilt}{\text{PAN
\_TILT}}
211 \newcommand{\SignZero}{\text{SIGN
\_ZERO}}
212 \newcommand{\SignPos}{\text{SIGN
\_POS}}
213 \newcommand{\SignNeg}{\text{SIGN
\_NEG}}
215 \newcommand{\ZPZNFollowOne}{\text{ZPZN
\_F1}}
216 \newcommand{\ZPNNFollowOne}{\text{ZPNN
\_F1}}
217 \newcommand{\ZPFollowTwo}{\text{ZP
\_F2}}
218 \newcommand{\ZPFollowThree}{\text{ZP
\_F3}}
219 \newcommand{\ZPFollowFour}{\text{ZP
\_F4}}
220 \newcommand{\ZPFollowFive}{\text{ZP
\_F5}}
221 \newcommand{\ZPFollowSixPlus}{\text{ZP
\_F6+
}}
223 \newcommand{\NPZNFollowOne}{\text{NPZN
\_F1}}
224 \newcommand{\NPNNFollowOne}{\text{NPNN
\_F1}}
225 \newcommand{\NPFollowTwo}{\text{NP
\_F2}}
226 \newcommand{\NPFollowThree}{\text{NP
\_F3}}
227 \newcommand{\NPFollowFour}{\text{NP
\_F4}}
228 \newcommand{\NPFollowFive}{\text{NP
\_F5}}
229 \newcommand{\NPFollowSixPlus}{\text{NP
\_F6+
}}
231 \newcommand{\CoeffData}{\text{COEFF
\_DATA}}
233 \newcommand{\ZeroCodeblock}{\text{ZERO
\_BLOCK}}
234 \newcommand{\QOffsetFollow}{\text{Q
\_OFFSET\_FOLLOW}}
235 \newcommand{\QOffsetData}{\text{Q
\_OFFSET\_DATA}}
236 \newcommand{\QOffsetSign}{\text{Q
\_OFFSET\_SIGN}}
237 \newcommand{\TotalCoeffCtxs}{\text{TOTAL
\_COEFF\_CTXs}}
239 \newcommand{\SBSplitFollowOne}{\text{SB
\_F1}}
240 \newcommand{\SBSplitFollowTwo}{\text{SB
\_F2}}
241 \newcommand{\SBSplitData}{\text{SB
\_DATA}}
243 \newcommand{\PredModeOne}{\text{PMODE
\_REF1}}
244 \newcommand{\PredModeTwo}{\text{PMODE
\_REF2}}
245 \newcommand{\BlockGlobal}{\text{GLOBAL
\_BLOCK}}
247 \newcommand{\VectorFollowOne}{\text{VECTOR
\_F1}}
248 \newcommand{\VectorFollowTwo}{\text{VECTOR
\_F2}}
249 \newcommand{\VectorFollowThree}{\text{VECTOR
\_F3}}
250 \newcommand{\VectorFollowFour}{\text{VECTOR
\_F4}}
251 \newcommand{\VectorFollowFivePlus}{\text{VECTOR
\_F5+
}}
252 \newcommand{\VectorData}{\text{VECTOR
\_DATA}}
253 \newcommand{\VectorSign}{\text{VECTOR
\_SIGN}}
255 \newcommand{\DCFollowOne}{\text{DC
\_F1}}
256 \newcommand{\DCFollowTwoPlus}{\text{DC
\_F2+
}}
257 \newcommand{\DCData}{\text{DC
\_DATA}}
258 \newcommand{\DCSign}{\text{DC
\_SIGN}}