nx_h264_cavlc_enc.nx
buildroot/runtime/nx_h264_cavlc_enc.nx
about
nx_h264_cavlc_enc.nx -- CAVLC level ENCODER (inverse of nx_h264_cavlc_level's
read_level). Exists so the decoder can be gated SOVEREIGNLY: encode known
levels -> decode -> must recover exactly (the round-trip oracle, no ffmpeg).
level -> levelCode: level>0 -> (level<<1)-2 (even) ; level<=0 -> (-level<<1)-1 (odd)
levelCode -> (prefix, suffix) given suffixLength (non-escape, prefix<15):
suffixLength==0: prefix = levelCode, no suffix
suffixLength>0 : prefix = levelCode >> suffixLength, suffix = low suffixLength bits
emit: <prefix zeros><1><suffix bits>
Escape (prefix>=15) is NOT emitted here -- callers keep magnitudes in range
(flagged); matches the decoder's common path.
genealogy_id: itu_t_h264_sec9_2_2_cavlc_level_inverse
lineage_id: level_to_levelcode + prefix_suffix_emit
license_tier: ORIGINAL
dependencies 2 imports · 2 importers
imports: nx_syscalls.nxnx_h264_bitwriter.nx
imported by: nx_h264_cavlc_rt_gate.nxnx_h264_residual.nx
structs
| none |
consts
| none |
functions
| 21 | func nx_cavlc_encode_level_off(bw: *BitWriter, level: i64, suffix_length: i64, code_offset: i64) -> i64 |
| 40 | func nx_cavlc_encode_level(bw: *BitWriter, level: i64, suffix_length: i64) -> i64 |