STRUCT VDEC_AV1_SLICE_VSI(9)
π 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 infowork_bufferβ the working buffer for hwcdf_tableβ thecdf_tablebuffercdf_tmpβ the cdf temp bufferrd_mvβ the mv buffer β it's giving lat output, core inputubeβ the ube buffertransβ the transcoded buffererr_mapβ the err map bufferrow_infoβ the row info bufferfbβ the current y/c bufferrefβ the ref y/c bufferiq_tableβ the iq table buffertileβ the tile bufferslotsβ slots info for each frameslot_idβ the current frame slot idframeβ the current frame infostateβ the status after decode donecur_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
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms