nx_bitstream.nx
buildroot/runtime/nx_bitstream.nx
about
nx_bitstream.nx -- bit-level reader for packed-binary formats.
The foundation primitive that every bit-packed format decoder
composes against:
- DEFLATE (RFC 1951) -- LSB-first
- GIF LZW -- LSB-first
- JPEG Huffman segments -- MSB-first
- FLAC / Vorbis / Opus -- MSB-first
- VP8 / VP9 -- mixed (arithmetic + raw)
- MP3 / AAC -- MSB-first
Two-variant API: read_lsb_first vs read_msb_first. Caller picks
per spec. Both share the same backing byte buffer + bit cursor.
genealogy_id: substrate_format_decoders_foundation_2026_05_16
lineage_id: bitstream_v1
dependencies 3 imports · 24 importers
diagram shows first 10 each side; +0 more imports, +14 more importers in the complete lists below.
imports: nx_syscalls.nxnx_runtime.nxnx_tier.nx
imported by: nx_av1_ec.nxnx_av1_ec_gate.nxnx_av1_frame.nxnx_av1_frame_gate.nxnx_av1_obu.nxnx_av1_obu_gate.nxnx_av1_seq.nxnx_av1_seq_gate.nxnx_av1_tile.nxnx_av1_tile_gate.nxnx_bitstream_kat.nxnx_deflate.nxnx_flac.nxnx_flac_frame.nxnx_flac_frame_gate.nxnx_flac_gate.nxnx_huffman.nxnx_huffman_kat.nxnx_jpeg_decoder.nxnx_webp.nxnx_webp_huff.nxnx_webp_huff_gate.nxnx_webp_vp8l.nxnx_webp_vp8l_gate.nx
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| 31 | struct NxBitStream |
consts
| 27 | const NX_MAGIC_61185: i64 = 61185 |
| 39 | const NX_BS_BYTES: nx_size = 40 |
functions
| 43 | func nx_bitstream_alloc(data: *u8, size: nx_int) -> *NxBitStream |
| 57 | func nx_bitstream_bits_remaining(bs: *NxBitStream) -> nx_int |
| 66 | func _bs_peek_byte(bs: *NxBitStream, offset: nx_int) -> nx_int |
| 92 | func nx_bitstream_read_lsb(bs: *NxBitStream, n_bits: nx_int) -> nx_int |
| 129 | func nx_bitstream_read_msb(bs: *NxBitStream, n_bits: nx_int) -> nx_int |
| 165 | func nx_bitstream_peek_lsb(bs: *NxBitStream, n_bits: nx_int) -> nx_int |
| 176 | func nx_bitstream_peek_msb(bs: *NxBitStream, n_bits: nx_int) -> nx_int calls 1: nx_bitstream_read_msb |
| 189 | func nx_bitstream_byte_align(bs: *NxBitStream) -> nx_int |
| 199 | func nx_bitstream_skip_bits(bs: *NxBitStream, n_bits: nx_int) -> nx_int |
| 216 | func nx_bitstream_read_byte_aligned(bs: *NxBitStream) -> nx_int |
| 229 | func main() -> nx_int |