The descriptor of the encoding/decoding mode of the specified syntax element is as follows:
Bit String:
B (8): 8-bit bytes in any form (to indicate that the syntax element is 8 bits without syntax)
F (n): n-Bit fixed-mode bits (the value is fixed, for example, forbidden_zero_bit is always 0)
I (n): Use a signed integer of N bits (this format is not used in the syntax)
U (n): n-bit unsigned integer
Index Columbus code:
UE (v): The syntactic element of the Columbus code with the unsigned integer Index
Se (v): The syntactic element of the Columbus code with the signed integer index.
Te (v): The syntactic element of the Columbus code, with the first digit on the left.
And Ce (V): cavlc and AE (V): cabac.
Exponential Columbus coding process:
In table 9-1, the bit string format is "prefix 1 suffix ". 1) 1 suffix = codenum + 1, for example, codenum = 3, then 1 suffix = 4, that is, 100, Suffix: 00; 2) the prefix is the same as the number of bits of the suffix, and each bit with the prefix is 0, for example, codenum = 3, the resulting bit string is: 00100.
UE (v) is encoded according to the preceding rules;
For Se (V), 9-3 is converted to codenum and then encoded according to the preceding rules;
In table 9-3, 1) if the syntax element value is negative, take the inverse value of 2 and convert it to codenum. 2) if the syntax element is positive, subtract 2 from 1 and convert it to codenum;
For Te (V), only ref_idx_l0 [mbpartidx] And ref_idx_l1 [mbpartidx] In section 7.3.5.1 "macro block prediction Syntax" and section 7.3.5.2 "submacro block prediction Syntax" are encoded in this mode,
If the syntax element value is 0, it is encoded as 1. If the syntax element value is 1, it is encoded as 0. If it is another value greater than 1, it is encoded as UE (V) encoding.