STRUCT VDEC_VP9_SLICE_COUNTS_MAP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

struct vdec_vp9_slice_counts_map β€” the vp9 counts tables that get mapped over to v4l2_vp9_frame_symbol_counts, bestie πŸ’–

Like, that's literally the whole vibe: it's a struct full of count tables, and its whole personality is being the bridge over to v4l2_vp9_frame_symbol_counts. iykyk πŸ¦‹

This one lives in the Kernel API Manual, and the kernel calls it struct vdec_...e_counts_map(9) when it's being lazy about the middle of the name 😭


✨ SYNOPSIS ✨

struct vdec_vp9_slice_counts_map {
    u32 skip[3][2];
    u32 y_mode[4][10];
    u32 filter[4][3];
    u32 sign[2][2];
    u32 classes[2][11];
    u32 class0[2][2];
    u32 bits[2][10][2];
    u32 class0_fp[2][2][4];
    u32 fp[2][4];
    u32 class0_hp[2][2];
    u32 hp[2][2];
 };

ok so it's eleven array-of-array members, all u32, and yes the indentation on the closing brace is off by one space in the original and I'm keeping it exactly as-is because we respect the source 🫢 not me being a completionist πŸ’…


πŸŽ€ Members πŸŽ€

  • skip β€” the skip counts, periodt. u32 skip[3][2]; ✨
  • y_mode β€” Y prediction mode counts, the main character of the prediction squad πŸ‘‘
  • filter β€” interpolation filter counts 🧚
  • sign β€” motion vector sign counts β€” is it plus? is it minus? vibe check πŸ”₯
  • classes β€” motion vector class counts 🌈
  • class0 β€” motion vector class0 bit counts πŸ’œ
  • bits β€” motion vector bits counts, lowkey the chunkiest one at u32 bits[2][10][2]; πŸ’€
  • class0_fp β€” motion vector class0 fractional bit counts πŸ“
  • fp β€” motion vector fractional bit counts 🌸
  • class0_hp β€” motion vector class0 high precision fractional bit counts, highkey fancy πŸŽ€
  • hp β€” motion vector high precision fractional bit counts ⭐
ngl bestie, every single one of these is a counts table. no logic, no pointers, no drama β€” just u32 numbers in nested arrays waiting to get mapped. it's giving "spreadsheet but make it kernel" πŸ™ˆ

πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_vp9_req_lat_if.c β€” that's the one, go read it, it ate πŸ’…
  • struct vdec_vp9_slice_vsi(9)
  • struct vdec_vp9_slice_pfc(9)
  • struct vdec_vp9_slice_instance(9)

and that's the whole page, bestie πŸ’– sourced from ./drivers/media/platform/media... (yes it's abbreviated in the original, don't come for me 😭), dated October 2026, and we're out β€” the kernel documented it as struct vdec_...e_counts_map(9) and honestly? slay. periodt. 🫢✨

πŸ“¦ where this page comes from