code wiki / (root) / nx_h264_hadamard.nx

nx_h264_hadamard.nx

buildroot/runtime/nx_h264_hadamard.nx

1528 B44 linesdepth 2pulls 2 transitivereach 9 importersview sourcekind librarytopic h264
docsdependenciesstructsconstsfunctions

about

nx_h264_hadamard.nx -- 4x4 inverse Hadamard for the Intra_16x16 luma DC block (spec 8.5.10). The 16 luma DC coefficients are Hadamard-transformed (then scaled by the caller) before becoming the DC term of each 4x4 sub-block. H = [[1,1,1,1],[1,1,-1,-1],[1,-1,-1,1],[1,-1,1,-1]] (symmetric); f = H c H. 1D butterfly: s0=c0+c1 s1=c0-c1 s2=c2+c3 s3=c2-c3; y0=s0+s2 y1=s0-s2 y2=s1-s3 y3=s1+s3. Pure i64, no shifts. genealogy_id: itu_t_h264_sec8_5_10_luma_dc_hadamard lineage_id: hadamard_4x4_2pass_butterfly license_tier: ORIGINAL

dependencies 1 imports · 6 importers

nx_syscalls.nx nx_h264_hadamard.nx nx_h264_decode_frame.nx nx_h264_hadamard_gate.nx nx_h264_iframe.nx nx_h264_intra_recon.nx nx_h264_pframe_recon.nx nx_h264_slice_extract.nx

imports: nx_syscalls.nx

imported by: nx_h264_decode_frame.nxnx_h264_hadamard_gate.nxnx_h264_iframe.nxnx_h264_intra_recon.nxnx_h264_pframe_recon.nxnx_h264_slice_extract.nx

structs

none

consts

none

functions

14func had1d(c0: i64, c1: i64, c2: i64, c3: i64, y: *i64) -> i64
called by 1: nx_h264_hadamard4x4
27func nx_h264_hadamard4x4(d: *i64) -> i64