code wiki / (root) / nx_video_codec_v1_adapter.nx

nx_video_codec_v1_adapter.nx

buildroot/runtime/nx_video_codec_v1_adapter.nx

8088 B213 linesdepth 4pulls 11 transitivereach 0 importersview sourcekind orphan librarytopic video
docsdependenciesstructsconstsfunctions

about

nx_video_codec_v1_adapter.nx -- wraps NishiVideo v1 behind nx_codec. NishiVideo v1's native API: i64 pixel arrays + explicit (width_blocks, height_blocks) + writes total length to out-param. nx_codec's vtable: *u8 byte buffers + returns bytes-written, no dimension args. The adapter bridges by: - Storing width/height in adapter state (fixed at construction) - Treating *u8 src as packed luma bytes (1 byte/pixel, 0..255) - Unpacking to i64 for the codec - Repacking decoded i64 pixels back to *u8 luma on decode Per [[feedback-bits-up-exceed-never-match]]: zero new codec logic. All 11 WIN axes (per codec_grade_card.nx) belong to nx_video_codec.

dependencies 3 imports · 0 importers

nx_syscalls_x86_64.nx nx_codec.nx nx_video_codec.nx nx_video_codec_v1_adapter.nx

imports: nx_syscalls_x86_64.nxnx_codec.nxnx_video_codec.nx

imported by: nobody (leaf or entry point)

structs

30struct nx_video_codec_v1_state

consts

57const NX_VID_V1A_STATE_BYTES: i64 = 168

functions

62func _unpack_luma_u8(src: *u8, src_n: i64, dst: *i64, dst_cap: i64) -> i64
73func _pack_luma_u8(src: *i64, n: i64, dst: *u8, dst_cap: i64) -> i64
88func nx_video_codec_v1_encode(c: *nx_codec, src: *u8, src_n: i64,
116func nx_video_codec_v1_decode(c: *nx_codec, src: *u8, src_n: i64,
143func nx_video_codec_v1_new(c: *nx_codec,