STRUCT VDEC_AV1_SLICE_VSI(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ struct vdec_av1_slice_vsi(9) πŸŽ€

okay so this is a page from the Kernel API Manual bestie, and it's all about struct vdec_av1_slice_vsi β€” the literal group chat between Main CPU and MicroP where they swap frame info. no cap, that's the whole job. πŸ’…

✨ NAME ✨

struct vdec_av1_slice_vsi β€” exchange frame information between Main CPU and MicroP

🌸 SYNOPSIS 🌸

struct vdec_av1_slice_vsi {
    struct vdec_av1_slice_mem bs;
    struct vdec_av1_slice_work_buffer
work_buffer[AV1_MAX_FRAME_BUF_COUNT];
    struct vdec_av1_slice_mem cdf_table;
    struct vdec_av1_slice_mem cdf_tmp;
    struct vdec_av1_slice_mem rd_mv;
    struct vdec_av1_slice_mem ube;
    struct vdec_av1_slice_mem trans;
    struct vdec_av1_slice_mem err_map;
    struct vdec_av1_slice_mem row_info;
    struct vdec_av1_slice_fb fb;
    struct vdec_av1_slice_fb ref[V4L2_AV1_REFS_PER_FRAME];
    struct vdec_av1_slice_mem iq_table;
    struct vdec_av1_slice_mem tile;
    struct vdec_av1_slice_slot slots;
    s8 slot_id;
    struct vdec_av1_slice_frame frame;
    struct vdec_av1_slice_state state;
    u32 cur_lst_tile_id;
 };

πŸ¦‹ Members πŸ¦‹

like, every single one, no skipping, we don't do that here 🫢

  • bs β€” the input buffer info
  • work_buffer β€” the working buffer for hw
  • cdf_table β€” the cdf_table buffer
  • cdf_tmp β€” the cdf temp buffer
  • rd_mv β€” the mv buffer β€” it's giving lat output, core input
  • ube β€” the ube buffer
  • trans β€” the transcoded buffer
  • err_map β€” the err map buffer
  • row_info β€” the row info buffer
  • fb β€” the current y/c buffer
  • ref β€” the ref y/c buffer
  • iq_table β€” the iq table buffer
  • tile β€” the tile buffer
  • slots β€” slots info for each frame
  • slot_id β€” the current frame slot id
  • frame β€” the current frame info
  • state β€” the status after decode done
  • cur_lst_tile_id β€” the tile id for large scale

πŸ’œ SEE ALSO πŸ’œ

the source of truth is the Kernel file, and it lives right here:

./drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c

and then the whole friend group, iykyk β€” go read these too:

  • struct vdec_av1_slice_init_vsi(9)
  • struct vdec_av1_slice_mem(9)
  • struct vdec_av1_slice_state(9)
  • struct vdec_av1_slice_tile_group(9)
  • struct vdec_av1_slice_scale_factors(9)
  • struct vdec_av1_slice_frame_refs(9)
  • struct vdec_av1_slice_gm(9)
  • struct vdec_av1_slice_sm(9)
  • struct vdec_av1_slice_seg(9)
  • struct vdec_av1_slice_delta_q_lf(9)
  • struct vdec_av1_slice_quantization(9)
  • struct vdec_av1_slice_lr(9)
  • struct vdec_av1_slice_loop_filter(9)
  • struct vdec_av1_slice_cdef(9)
  • struct vdec_av1_slice_mfmv(9)
  • struct vdec_av1_slice_tile(9)
  • struct vdec_av1_slice_uncompressed_header(9)
  • struct vdec_av1_slice_seq_header(9)
  • struct vdec_av1_slice_frame(9)
  • struct vdec_av1_slice_work_buffer(9)
  • struct vdec_av1_slice_frame_info(9)
  • struct vdec_av1_slice_slot(9)
  • struct vdec_av1_slice_fb(9)
  • struct vdec_av1_slice_pfc(9)
  • struct vdec_av1_slice_instance(9)

bestie reminder: these are structs from the kernel tree, so if you're reading this on a different version, vibe check your own source before you trust a field name, k? πŸ™ˆ

and that's the whole page! πŸ’– it came out of ./drivers/media/platform/media... and it's dated October 2026, so like, future energy fr fr. stay iconic, go read your structs, mwah πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from