VLC decoding tables

UVLC decoding tables used to partiallu decode u values from UVLC
codewords. More...

## Functions

static bool | ojph::local::uvlc_init_tables ()
| Initializes uvlc_tbl0 and uvlc_tbl1 tables.

## Variables

ui16 | ojph::local::uvlc_tbl0 [256+64] = { 0 }
| uvlc_tbl0 contains decoding information for initial row of quads
ui16 | ojph::local::uvlc_tbl1 [256] = { 0 }
| uvlc_tbl1 contains decoding information for non-initial row of quads
static bool | ojph::local::uvlc_tables_initialized = uvlc_init_tables()
| Initializes UVLC tables uvlc_tbl0 and uvlc_tbl1.

## Detailed Description

UVLC decoding tables used to partiallu decode u values from UVLC
codewords.

The table index is 8 (or 9) bits and composed of two parts:
The 6 LSBs carries the head of the VLC to be decoded. Up to 6 bits to be used; these are uvlc prefix code for quad 0 and 1
The 2 (or 3) MSBs contain u_off of quad 0 + 2 * o_off quad 1

- 4 * mel event for initial row of quads when needed
  Each entry contains, starting from the LSB
  - `total` prefix length for quads 0 and 1 (3 bits)
  - `total` suffix length for quads 0 and 1 (4 bits)
  - `suffix` length for quad 0 (3 bits)
  - `prefix` for quad 0 (3 bits)
  - `prefix` for quad 1 (3 bits)

## Function Documentation

## uvlc_init_tables()

static bool ojph::local::uvlc_init_tables | ( |  | ) |

static

Initializes uvlc_tbl0 and uvlc_tbl1 tables.

References ojph::local::uvlc_tbl0, and ojph::local::uvlc_tbl1.

## Variable Documentation

## uvlc_tables_initialized

bool ojph::local::uvlc_tables_initialized = uvlc_init_tables()

static

Initializes UVLC tables uvlc_tbl0 and uvlc_tbl1.

## uvlc_tbl0

ui16 ojph::local::uvlc_tbl0 = { 0 }

uvlc_tbl0 contains decoding information for initial row of quads

Referenced by ojph::local::ojph_decode_codeblock(), ojph::local::ojph_decode_codeblock_ssse3(), ojph::local::ojph_decode_codeblock_wasm(), and ojph::local::uvlc_init_tables().

## uvlc_tbl1

ui16 ojph::local::uvlc_tbl1 = { 0 }

uvlc_tbl1 contains decoding information for non-initial row of quads

Referenced by ojph::local::ojph_decode_codeblock(), ojph::local::ojph_decode_codeblock_ssse3(), ojph::local::ojph_decode_codeblock_wasm(), and ojph::local::uvlc_init_tables().