STRUCT VENC_AP_IPI_MSG_ENC(9)
π struct venc_ap_ipi_msg_enc(9) β Kernel API Manual, but make it make sense
okay so bestie, welcome to the Kernel API Manual entry for struct venc_ap_ipi_msg_enc π this is the AP to VPU enc cmd structure β like, the little message the Application Processor yeets over to the VPU when it wants encoding to happen. no cap.
β¨ NAME β¨
struct venc_ap_ipi_msg_enc β the AP to VPU enc cmd structure fr fr. it's giving "hey VPU, pls encode this" energy π
πΈ SYNOPSIS πΈ
here's the whole glow-up, exactly as it lives in the header:
struct venc_ap_ipi_msg_enc {
uint32_t msg_id;
uint32_t vpu_inst_addr;
uint32_t bs_mode;
uint32_t input_addr[3];
uint32_t bs_addr;
uint32_t bs_size;
};
six little uint32_t fields, all iconic, all doing their job π
π¦ Members π¦
okay let's meet the cast, member by member, main character energy only:
msg_idβ the message id, and the value in question isAP_IPIMSG_XXX_ENC_ENCODEπ·οΈ like the subject line of the group chat, ykwim?vpu_inst_addrβ the VPU encoder instance addr, and no bestie it's not just any pointer, it's astruct venc_vp8_vsi/venc_h264_vsi *π«bs_modeβ the bitstream mode for h264, and your options are literallyH264_BS_MODE_SPS/H264_BS_MODE_PPS/H264_BS_MODE_FRAMEβ¨ pick your fighterinput_addrβ pointer to input image buffer plane πΌοΈ that's the picture going in, periodtbs_addrβ pointer to output bit stream buffer π€ that's the bitstream coming out, the glow-up destinationbs_sizeβ bit stream buffer size π gotta know how much room the output gets, obviously
π₯ SEE ALSO π₯
so if you wanna keep reading (and you should, it's a whole saga), the kernel file you want is:
./drivers/media/platform/mediatek/vcodec/encoder/venc_ipi_msg.h
and it's adjacent to these absolute legends, all (9) entries in their own right:
struct venc_ap_ipi_msg_init(9)struct venc_ap_ipi_msg_set_param(9)struct venc_ap_ipi_msg_enc_ext(9)struct venc_ap_ipi_msg_enc_ext_34(9)struct venc_ap_ipi_msg_deinit(9)struct venc_vpu_ipi_msg_common(9)struct venc_vpu_ipi_msg_init(9)struct venc_vpu_ipi_msg_set_param(9)enum venc_ipi_msg_enc_state(9)struct venc_vpu_ipi_msg_enc(9)struct venc_vpu_ipi_msg_deinit(9)
bestie reminder π: it's struct venc_ap_ipi_msg_enc(9) in the header and that same name closes the page too β the symmetry is honestly slay.
and that's the whole page, no skips, no summarising, we ate π β¨
huge shoutout to the source at ./drivers/media/platform/media... and the October 2026 date stamp β signed, sealed, struct venc_ap_ipi_msg_enc(9) forever π«Άπ
π¦ 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