pub struct InterDecodeStats {Show 24 fields
pub ctus: u32,
pub split_cu_flag_bins: u32,
pub coding_units: u32,
pub cu_skip_flag_bins: u32,
pub pred_mode_flag_bins: u32,
pub inter_pred_idc_bins: u32,
pub mvp_idx_bins: u32,
pub abs_mvd_egk_bins: u32,
pub mvd_sign_flag_bins: u32,
pub ref_idx_bins: u32,
pub cbf_luma_bins: u32,
pub cbf_chroma_bins: u32,
pub uni_pred_cus: u32,
pub bi_pred_cus: u32,
pub coeff_runs: u32,
pub deblock_edges: u32,
pub hmvp_cand_count_final: u32,
pub ibc_flag_bins: u32,
pub ibc_cus: u32,
pub ibc_abs_mvd_bins: u32,
pub ibc_mvd_sign_bins: u32,
pub cu_qp_delta_abs_bins: u32,
pub alf_ctb: AlfCtbStats,
pub alf_ctb_map: AlfCtbMap,
}Expand description
Stats from decode_baseline_inter_slice.
Fields§
§ctus: u32§split_cu_flag_bins: u32§coding_units: u32§cu_skip_flag_bins: u32§pred_mode_flag_bins: u32§inter_pred_idc_bins: u32§mvp_idx_bins: u32§abs_mvd_egk_bins: u32§mvd_sign_flag_bins: u32§ref_idx_bins: u32§cbf_luma_bins: u32§cbf_chroma_bins: u32§uni_pred_cus: u32Inter CUs that were predicted from a single reference list.
bi_pred_cus: u32Inter CUs that were bi-predicted (B slice path).
coeff_runs: u32Total residual_coding_rle() runs decoded across all colour
components.
deblock_edges: u32Number of edges visited by the deblocking pass (luma + chroma
summed). Zero when slice_deblocking_filter_flag = 0.
hmvp_cand_count_final: u32NumHmvpCand at slice end — useful for fixture tests that want
to confirm the §8.5.2.7 update process actually fired. Resets
every CTU row, so on a single-CTU-row slice this equals the
number of inter CUs decoded (capped at 23).
ibc_flag_bins: u32Round 95: ibc_flag regular-coded bins decoded per §7.3.8.4
line 2846 inside the non-skip P/B inter-CU path. One per
IBC-eligible CU.
ibc_cus: u32Round 95: P/B coding units that resolved CuPredMode == MODE_IBC (i.e. ibc_flag = 1) and were reconstructed via
ibc::decode_ibc_cu. Disjoint from uni_pred_cus /
bi_pred_cus.
ibc_abs_mvd_bins: u32Round 95: abs_mvd_l0[0/1] EG-0 bypass invocations consumed by
the inter-path IBC branch (two per IBC CU — x and y components).
ibc_mvd_sign_bins: u32Round 95: mvd_l0_sign_flag bypass bits consumed by the
inter-path IBC branch (one per non-zero abs_mvd component).
cu_qp_delta_abs_bins: u32Round 100: cu_qp_delta_abs U-binarized bins decoded inside the
non-skip P/B inter-CU transform_unit() path (§7.3.8.5
lines 3073-3078). Non-zero only when cu_qp_delta_enabled_flag
holds and at least one of cbf_luma / cbf_cb / cbf_cr is
set on the CU. One increment per CU that decodes the syntax
element (mirrors the IDR-side SliceDecodeStats tracker).
alf_ctb: AlfCtbStatsRound 107: per-CTU alf_ctb_* map bins from coding_tree_unit()
(§7.3.8.2). Zero unless the inter slice signals an ALF
applicability map.
alf_ctb_map: AlfCtbMapRound 113: the resolved per-CTU alf_ctb_* applicability map
(§7.3.8.2 → §8.9), sized to the picture; one triplet per CTU so the
post-filter pass can mask the ALF apply per coding tree block.
Trait Implementations§
Source§impl Clone for InterDecodeStats
impl Clone for InterDecodeStats
Source§fn clone(&self) -> InterDecodeStats
fn clone(&self) -> InterDecodeStats
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for InterDecodeStats
impl Debug for InterDecodeStats
Source§impl Default for InterDecodeStats
impl Default for InterDecodeStats
Source§fn default() -> InterDecodeStats
fn default() -> InterDecodeStats
impl Eq for InterDecodeStats
Source§impl PartialEq for InterDecodeStats
impl PartialEq for InterDecodeStats
Source§fn eq(&self, other: &InterDecodeStats) -> bool
fn eq(&self, other: &InterDecodeStats) -> bool
self and other values to be equal, and is used by ==.