code wiki / (root) / nx_h264_slice.nx

nx_h264_slice.nx

buildroot/runtime/nx_h264_slice.nx

6051 B111 linesdepth 3pulls 3 transitivereach 15 importersview sourcekind librarytopic h264
docsdependenciesstructsconstsfunctions

about

nx_h264_slice.nx -- H.264 slice header parser (rung 4a, spec 7.3.3). Extracts the fields the macroblock loop needs: first_mb_in_slice, slice_type (I/P/B via %5), pic_parameter_set_id, frame_num, idr_pic_id, pic_order_cnt_lsb, slice_qp_delta -> actual QP = pic_init_qp + slice_qp_delta. Needs SPS/PPS context (log2_max_frame_num, log2_max_poc_lsb, pic_order_cnt_type, frame_mbs_only_flag, pic_init_qp) -> passed in (honest: a slice header cannot be parsed without it). Scoped to the common IDR/non-IDR I-slice, CAVLC, poc_type 0, frame_mbs_only path; P/B ref-list modification, adaptive ref marking, and delta_pic_order_cnt are NOT parsed (flagged) -- that is the slice-data rung. genealogy_id: itu_t_h264_sec7_3_3_slice_header lineage_id: slice_type_first_mb_framenum + slice_qp license_tier: ORIGINAL

dependencies 2 imports · 13 importers

nx_syscalls.nx nx_h264_bits.nx nx_h264_slice.nx nx_h264_bframe_probe.nx nx_h264_bframe_reflist_gate.nx nx_h264_bframe_walk.nx nx_h264_brecon.nx nx_h264_colmv_gate.nx nx_h264_decode_frame.nx nx_h264_iframe.nx nx_h264_mv_recon_gate.nx nx_h264_pframe_probe.nx nx_h264_pframe_recon.nx

diagram shows first 10 each side; +0 more imports, +3 more importers in the complete lists below.

imports: nx_syscalls.nxnx_h264_bits.nx

imported by: nx_h264_bframe_probe.nxnx_h264_bframe_reflist_gate.nxnx_h264_bframe_walk.nxnx_h264_brecon.nxnx_h264_colmv_gate.nxnx_h264_decode_frame.nxnx_h264_iframe.nxnx_h264_mv_recon_gate.nxnx_h264_pframe_probe.nxnx_h264_pframe_recon.nxnx_h264_pframe_walk.nxnx_h264_slice_extract.nxnx_h264_slice_gate.nx

structs

none

consts

none

functions

22func nx_h264_parse_slice_header_br(br: *BitReader, nal_type: i64, nal_ref_idc: i64, log2_frame_num: i64, log2_poc_lsb: i64, poc_type: i64, frame_mbs_only: i64, pic_init_qp: i64, deblock_present: i64, out: *i64) -> i64
107func nx_h264_parse_slice_header(rbsp: *u8, len: i64, nal_type: i64, nal_ref_idc: i64, log2_frame_num: i64, log2_poc_lsb: i64, poc_type: i64, frame_mbs_only: i64, pic_init_qp: i64, deblock_present: i64, out: *i64) -> i64