ENUM V4L2_MPEG_VIDEO_AV1_LEVEL(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

enum v4l2_mpeg_video_av1_level β€” the AV1 levels, bestie ✨ (this page lives in the Kernel API Manual, and honestly? it's giving reference-sheet realness πŸ’…)


πŸ’– SYNOPSIS πŸ’–

enum v4l2_mpeg_video_av1_level {
    V4L2_MPEG_VIDEO_AV1_LEVEL_2_0 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_2_1 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_2_2 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_2_3 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_3_0 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_3_1 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_3_2 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_3_3 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_4_0 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_4_1 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_4_2 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_4_3 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_5_0 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_5_1 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_5_2 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_5_3 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_6_0 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_6_1 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_6_2 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_6_3 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_7_0 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_7_1 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_7_2 ,
    V4L2_MPEG_VIDEO_AV1_LEVEL_7_3

};
ok so it's literally a big buffered list of enum constants, one per AV1 level, and yes there's a lil blank line before the closing brace β€” that's just how the original rolls, don't come for me πŸ™ˆ

✨ Constants ✨

Every single one, in order, no skips β€” periodt πŸ’œ

  • V4L2_MPEG_VIDEO_AV1_LEVEL_2_0 β€” Level 2.0.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_2_1 β€” Level 2.1.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_2_2 β€” Level 2.2.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_2_3 β€” Level 2.3.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_3_0 β€” Level 3.0.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_3_1 β€” Level 3.1.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_3_2 β€” Level 3.2.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_3_3 β€” Level 3.3.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_4_0 β€” Level 4.0.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_4_1 β€” Level 4.1.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_4_2 β€” Level 4.2.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_4_3 β€” Level 4.3.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_5_0 β€” Level 5.0.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_5_1 β€” Level 5.1.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_5_2 β€” Level 5.2.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_5_3 β€” Level 5.3.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_6_0 β€” Level 6.0.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_6_1 β€” Level 6.1.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_6_2 β€” Level 6.2.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_6_3 β€” Level 6.3.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_7_0 β€” Level 7.0.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_7_1 β€” Level 7.1.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_7_2 β€” Level 7.2.
  • V4L2_MPEG_VIDEO_AV1_LEVEL_7_3 β€” Level 7.3.

πŸ¦‹ Description πŸ¦‹

So what does it do? It conveys the highest level a decoder can work with. That's it, that's the whole vibe check β€” you're telling the world the ceiling, the max, the absolute most your decoder can handle πŸ”₯


πŸŽ€ SEE ALSO πŸŽ€

The whole friend group, bestie β€” every one of these is invited to the group chat 🫢

  • Kernel file ./include/uapi/linux/v4l2-controls.h
  • enum v4l2_mpeg_video_av1_profile(9)
  • enum v4l2_stateless_h264_decode_mode(9)
  • enum v4l2_stateless_h264_start_code(9)
  • struct v4l2_ctrl_h264_sps(9)
  • struct v4l2_ctrl_h264_pps(9)
  • struct v4l2_ctrl_h264_scaling_matrix(9)
  • struct v4l2_ctrl_h264_pred_weights(9)
  • struct v4l2_h264_reference(9)
  • struct v4l2_ctrl_h264_slice_params(9)
  • struct v4l2_h264_dpb_entry(9)
  • struct v4l2_ctrl_h264_decode_params(9)
  • struct v4l2_ctrl_fwht_params(9)
  • struct v4l2_vp8_segment(9)
  • struct v4l2_vp8_loop_filter(9)
  • struct v4l2_vp8_quantization(9)
  • struct v4l2_vp8_entropy(9)
  • struct v4l2_vp8_entropy_coder_state(9)
  • struct v4l2_ctrl_vp8_frame(9)
  • struct v4l2_ctrl_mpeg2_sequence(9)
  • struct v4l2_ctrl_mpeg2_picture(9)
  • struct v4l2_ctrl_mpeg2_quantisation(9)
  • struct v4l2_ctrl_hevc_sps(9)
  • struct v4l2_ctrl_hevc_pps(9)
  • struct v4l2_hevc_dpb_entry(9)
  • struct v4l2_hevc_pred_weight_table(9)
  • struct v4l2_ctrl_hevc_slice_params(9)
  • struct v4l2_ctrl_hevc_decode_params(9)
  • struct v4l2_ctrl_hevc_scaling_matrix(9)
  • struct v4l2_vp9_loop_filter(9)
  • struct v4l2_vp9_quantization(9)
  • struct v4l2_vp9_segmentation(9)
  • struct v4l2_ctrl_vp9_frame(9)
  • struct v4l2_vp9_mv_probs(9)
  • struct v4l2_ctrl_vp9_compressed_hdr(9)
  • struct v4l2_ctrl_av1_sequence(9)
  • struct v4l2_ctrl_av1_tile_group_entry(9)
  • enum v4l2_av1_warp_model(9)
  • enum v4l2_av1_reference_frame(9)
  • struct v4l2_av1_global_motion(9)
  • enum v4l2_av1_frame_restoration_type(9)
  • struct v4l2_av1_loop_restoration(9)
  • struct v4l2_av1_cdef(9)
  • enum v4l2_av1_segment_feature(9)
  • struct v4l2_av1_segmentation(9)
  • struct v4l2_av1_loop_filter(9)
  • struct v4l2_av1_quantization(9)
  • struct v4l2_av1_tile_info(9)
  • enum v4l2_av1_frame_type(9)
  • enum v4l2_av1_interpolation_filter(9)
  • enum v4l2_av1_tx_mode(9)
  • struct v4l2_ctrl_av1_frame(9)
  • struct v4l2_ctrl_av1_film_grain(9)

and that's the whole page, no cap πŸ’«

Shoutout to the source path ./include/uapi/linux and the date stamp October 2026 β€” that's the lil signature at the bottom of the page, and yes she ate πŸŽ€βœ¨ Byeee, go read your headers bestie πŸ’–

πŸ“¦ where this page comes from