1.16. 无状态编解码器控制参考¶
无状态编解码器控制类旨在支持无状态解码器和编码器(即硬件加速器)。
这些驱动程序通常由内存到内存无状态视频解码器接口支持,并处理已解析的像素格式,例如 V4L2_PIX_FMT_H264_SLICE。
1.16.1. 无状态编解码器控制 ID¶
V4L2_CID_CODEC_STATELESS_CLASS (class)
无状态编解码器类描述符。
V4L2_CID_STATELESS_H264_SPS (struct)
指定关联的 H264 切片数据的序列参数集(从码流中提取)。这包括配置 H264 无状态硬件解码流水线的必要参数。码流参数根据ITU-T Rec. H.264 规范(2017 年 4 月版),第 7.4.2.1.1 节 “序列参数集数据语义”定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
type v4l2_ctrl_h264_sps¶
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__s32 |
|
|
__s32 |
|
|
__s32 |
|
|
__u16 |
|
|
__u16 |
|
|
__u32 |
|
参见序列参数集标志 |
序列 参数 集 约束 集 标志
|
0x00000001 |
|
|
0x00000002 |
|
|
0x00000004 |
|
|
0x00000008 |
|
|
0x00000010 |
|
|
0x00000020 |
序列 参数 集 标志
|
0x00000001 |
|
|
0x00000002 |
|
|
0x00000004 |
|
|
0x00000008 |
|
|
0x00000010 |
|
|
0x00000020 |
|
|
0x00000040 |
V4L2_CID_STATELESS_H264_PPS (struct)
指定关联的 H264 切片数据的图片参数集(从码流中提取)。这包括配置 H264 无状态硬件解码流水线的必要参数。码流参数根据ITU-T Rec. H.264 规范(2017 年 4 月版),第 7.4.2.2 节 “图片参数集 RBSP 语义”定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
type v4l2_ctrl_h264_pps¶
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__s8 |
|
|
__s8 |
|
|
__s8 |
|
|
__s8 |
|
|
__u16 |
|
参见图片参数集标志 |
图片 参数 集 标志
|
0x0001 |
|
|
0x0002 |
|
|
0x0004 |
|
|
0x0008 |
|
|
0x0010 |
|
|
0x0020 |
|
|
0x0040 |
|
|
0x0080 |
|
V4L2_CID_STATELESS_H264_SCALING_MATRIX (struct)
指定关联的 H264 切片数据的缩放矩阵(从码流中提取)。码流参数根据ITU-T Rec. H.264 规范(2017 年 4 月版),第 7.4.2.1.1.1 节 “缩放列表语义”定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
type v4l2_ctrl_h264_scaling_matrix¶
__u8 |
|
应用逆扫描过程后的缩放矩阵。预期列表顺序为 Intra Y、Intra Cb、Intra Cr、Inter Y、Inter Cb、Inter Cr。每个缩放列表中的值都应按栅格扫描顺序排列。 |
__u8 |
|
应用逆扫描过程后的缩放矩阵。预期列表顺序为 Intra Y、Inter Y、Intra Cb、Inter Cb、Intra Cr、Inter Cr。每个缩放列表中的值都应按栅格扫描顺序排列。 |
V4L2_CID_STATELESS_H264_SLICE_PARAMS (struct)
指定关联的 H264 切片数据的切片参数(从码流中提取)。这包括配置 H264 无状态硬件解码流水线的必要参数。码流参数根据ITU-T Rec. H.264 规范(2017 年 4 月版),第 7.4.3 节 “切片头语义”定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
type v4l2_ctrl_h264_slice_params¶
__u32 |
|
从该切片的开头到 slice_data() 的位偏移量。 |
__u32 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__u8 |
|
|
__s8 |
|
|
__s8 |
|
|
__u8 |
|
|
__s8 |
|
|
__s8 |
|
|
__u8 |
|
如果未设置 num_ref_idx_active_override_flag,则此字段必须设置为 num_ref_idx_l0_default_active_minus1 的值 |
__u8 |
|
如果未设置 num_ref_idx_active_override_flag,则此字段必须设置为 num_ref_idx_l1_default_active_minus1 的值 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
struct |
|
应用每切片修改后的参考图片列表 |
struct |
|
应用每切片修改后的参考图片列表 |
__u32 |
|
参见切片参数标志 |
切片 参数 集 标志
|
0x00000001 |
|
|
0x00000002 |
V4L2_CID_STATELESS_H264_PRED_WEIGHTS (struct)
根据ITU-T Rec. H.264 规范(2017 年 4 月版),第 7.4.3.2 节 “预测权重表语义”定义的预测权重表。预测权重表必须由应用程序在 7.3.3 节 “切片头语法”中解释的条件下传递。
-
type v4l2_ctrl_h264_pred_weights¶
__u16 |
|
|
__u16 |
|
|
struct |
|
索引 0 处的权重因子是参考列表 0 的权重因子,索引 1 处的权重因子是参考列表 1 的权重因子。 |
-
type v4l2_h264_weight_factors¶
__s16 |
|
|
__s16 |
|
|
__s16 |
|
|
__s16 |
|
图片 参考
-
type v4l2_h264_reference¶
__u8 |
|
指定如何引用图片。参见参考字段 |
__u8 |
|
索引到 |
参考 字段
|
0x1 |
场对中的顶部场用于短期参考。 |
|
0x2 |
场对中的底部场用于短期参考。 |
|
0x3 |
帧(或顶部/底部场,如果它是场对)用于短期参考。 |
V4L2_CID_STATELESS_H264_DECODE_PARAMS (struct)
指定关联的 H264 切片数据的解码参数(从码流中提取)。这包括配置 H264 无状态硬件解码流水线的必要参数。码流参数根据ITU-T Rec. H.264 规范(2017 年 4 月版)定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
type v4l2_ctrl_h264_decode_params¶
struct |
|
|
__u16 |
|
来自 NAL 单元头的 NAL 参考 ID 值 |
__u16 |
|
|
__s32 |
|
编码顶部场的图片顺序计数 |
__s32 |
|
编码底部场的图片顺序计数 |
__u16 |
|
|
__u16 |
|
|
__s32 |
|
|
__s32 |
|
|
__s32 |
|
|
__u32 |
|
dec_ref_pic_marking() 语法元素的大小(以位为单位)。 |
__u32 |
|
图片顺序计数相关语法元素的组合大小(以位为单位):pic_order_cnt_lsb、delta_pic_order_cnt_bottom、delta_pic_order_cnt0 和 delta_pic_order_cnt1。 |
__u32 |
|
|
__u32 |
|
应用程序和驱动程序必须将此设置为零。 |
__u32 |
|
参见解码参数标志 |
解码 参数 标志
|
0x00000001 |
该图片是 IDR 图片 |
|
0x00000002 |
|
|
0x00000004 |
|
|
0x00000008 |
|
|
0x00000010 |
-
type v4l2_h264_dpb_entry¶
__u64 |
|
用作参考的 V4L2 捕获缓冲区的时间戳,与 B 编码帧和 P 编码帧一起使用。时间戳指的是 struct |
__u32 |
|
对于短期参考,这必须与派生值 PicNum (8-28) 匹配,对于长期参考,这必须与派生值 LongTermPicNum (8-29) 匹配。当解码帧(而不是场)时,pic_num 与 FrameNumWrap 相同。 |
__u16 |
|
对于短期参考,这必须与切片头语法中的 frame_num 值匹配(如果需要,驱动程序将包装该值)。对于长期参考,这必须设置为 dec_ref_pic_marking() 语法中描述的 long_term_frame_idx 的值。 |
__u8 |
|
指定如何引用 DPB 条目。参见参考字段 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
__s32 |
|
|
__s32 |
|
|
__u32 |
|
参见DPB 条目标志 |
DPB 条目 标志
|
0x00000001 |
DPB 条目有效(非空)并且应考虑。 |
|
0x00000002 |
DPB 条目用于参考。 |
|
0x00000004 |
DPB 条目用于长期参考。 |
|
0x00000008 |
DPB 条目是单个场或互补场对。 |
V4L2_CID_STATELESS_H264_DECODE_MODE (enum)
指定要使用的解码模式。目前公开基于切片和基于帧的解码,但以后可能会添加新模式。此控制用作 V4L2_PIX_FMT_H264_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_H264_SLICE 的应用程序需要设置此控制以指定缓冲区预期的解码模式。驱动程序可能会公开单个或多个解码模式,具体取决于它们可以支持的内容。
-
type v4l2_stateless_h264_decode_mode¶
|
0 |
解码以切片粒度完成。OUTPUT 缓冲区必须包含单个切片。选择此模式时,应设置 |
|
1 |
解码以帧粒度完成。OUTPUT 缓冲区必须包含解码帧所需的所有切片。OUTPUT 缓冲区还必须包含两个场。此模式将由硬件解析切片头部的设备支持。选择此模式时,不应设置 |
V4L2_CID_STATELESS_H264_START_CODE (enum)
指定每个切片预期的 H264 切片起始码。此控制用作 V4L2_PIX_FMT_H264_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_H264_SLICE 的应用程序需要设置此控制以指定缓冲区预期的起始码。驱动程序可能会公开单个或多个起始码,具体取决于它们可以支持的内容。
-
type v4l2_stateless_h264_start_code¶
|
0 |
选择此值指定 H264 切片在没有任何起始码的情况下传递给驱动程序。码流数据应根据ITU-T Rec. H.264 规范(2017 年 4 月版) 7.3.1 NAL 单元语法,因此在需要时包含仿真防止字节。 |
|
1 |
选择此值指定 H264 切片预计以 Annex B 起始码作为前缀。根据ITU-T Rec. H.264 规范(2017 年 4 月版),有效的起始码可以是 3 字节 0x000001 或 4 字节 0x00000001。 |
V4L2_CID_STATELESS_FWHT_PARAMS (struct)
指定关联的 FWHT 数据的 FWHT(快速沃尔什哈达玛变换)参数(从码流中提取)。这包括配置 FWHT 无状态硬件解码流水线的必要参数。此编解码器特定于 vicodec 测试驱动程序。
-
type v4l2_ctrl_fwht_params¶
__u64 |
|
用作后向参考的 V4L2 捕获缓冲区的时间戳,与 P 编码帧一起使用。时间戳指的是 struct |
__u32 |
|
编解码器的版本。设置为 |
__u32 |
|
帧的宽度。 |
__u32 |
|
帧的高度。 |
__u32 |
|
帧的标志,参见FWHT 标志。 |
__u32 |
|
帧的色彩空间,来自 enum |
__u32 |
|
传递函数,来自 enum |
__u32 |
|
Y’CbCr 编码,来自 enum |
__u32 |
|
量化范围,来自 enum |
1.16.2. FWHT 标志¶
|
0x00000001 |
如果这是隔行扫描格式,则设置。 |
|
0x00000002 |
如果这是底部优先 (NTSC) 隔行扫描格式,则设置。 |
|
0x00000004 |
如果每个“帧”仅包含一个场,则设置。 |
|
0x00000008 |
如果设置了 V4L2_FWHT_FL_IS_ALTERNATE,则如果此“帧”是底部场,则设置此标志,否则它是顶部场。 |
|
0x00000010 |
如果 Y’(亮度)平面未压缩,则设置。 |
|
0x00000020 |
如果 Cb 平面未压缩,则设置。 |
|
0x00000040 |
如果 Cr 平面未压缩,则设置。 |
|
0x00000080 |
如果色度平面与亮度平面具有相同的高度,则设置此标志,否则色度平面是亮度平面高度的一半。 |
|
0x00000100 |
如果色度平面与亮度平面具有相同的宽度,则设置此标志,否则色度平面是亮度平面宽度的一半。 |
|
0x00000200 |
如果 alpha 平面未压缩,则设置。 |
|
0x00000400 |
如果这是 I 帧,则设置。 |
|
0x00070000 |
颜色分量数减一。 |
|
0x00180000 |
像素编码的掩码。 |
|
0x00080000 |
如果像素编码是 YUV,则设置。 |
|
0x00100000 |
如果像素编码是 RGB,则设置。 |
|
0x00180000 |
如果像素编码是 HSV,则设置。 |
V4L2_CID_STATELESS_VP8_FRAME (struct)
指定关联的 VP8 解析帧数据的帧参数。这包括配置 VP8 无状态硬件解码流水线的必要参数。码流参数根据VP8定义。
-
type v4l2_ctrl_vp8_frame¶
struct |
|
带有基于段的调整元数据的结构。 |
struct |
|
带有环路滤波器级别调整元数据的结构。 |
struct |
|
带有 VP8 解量化索引元数据的结构。 |
struct |
|
带有 VP8 熵编码器概率元数据的结构。 |
struct |
|
带有 VP8 熵编码器状态的结构。 |
__u16 |
|
width |
__u16 |
|
帧的宽度。必须为所有帧设置。 |
__u8 |
|
帧的高度。必须为所有帧设置。 |
__u8 |
|
水平缩放因子。 |
__u8 |
|
vertical_scale |
__u8 |
|
version |
__u8 |
|
prob_skip_false |
__u8 |
|
prob_intra |
__u8 |
|
prob_last |
__u8 |
|
prob_gf |
__u32 |
|
num_dct_parts |
__u32 |
|
first_part_size |
__u32 |
|
first_part_header_bits |
__u64 |
|
dct_part_sizes[8] |
__u64 |
|
dct_part_sizes[8] |
__u64 |
|
用作最后一个参考帧的 V4L2 捕获缓冲区的时间戳,与帧间编码帧一起使用。时间戳指的是 struct |
__u64 |
|
golden_frame_ts |
alt_frame_ts
|
flags |
参见帧标志 |
|
V4L2_VP8_FRAME_FLAG_KEY_FRAME |
0x01 |
|
V4L2_VP8_FRAME_FLAG_EXPERIMENTAL |
0x02 |
|
V4L2_VP8_FRAME_FLAG_SHOW_FRAME |
0x04 |
|
V4L2_VP8_FRAME_FLAG_MB_NO_SKIP_COEFF |
0x08 |
|
V4L2_VP8_FRAME_FLAG_SIGN_BIAS_GOLDEN |
0x10 |
-
引用黄金帧时运动矢量的符号。
__u8 |
|
引用备用帧时运动矢量的符号。 |
__u8 |
|
struct v4l2_vp8_entropy_coder_state¶ |
__u8 |
|
“Range”的编码器状态值 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
-
“Value”的编码器状态值
__s8 |
|
padding |
__s8 |
|
struct v4l2_vp8_segment¶ |
__u8 |
|
有符号量化器值更新。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
__u32 |
|
请参阅 分段标志 |
分段 标志
|
flags |
启用/禁用基于分段的调整。 |
|
V4L2_VP8_FRAME_FLAG_KEY_FRAME |
指示宏块分段映射是否在此帧中更新。 |
|
V4L2_VP8_FRAME_FLAG_EXPERIMENTAL |
指示分段特征数据是否在此帧中更新。 |
|
V4L2_VP8_FRAME_FLAG_SHOW_FRAME |
如果设置,则分段特征数据模式为增量值。 如果清除,则为绝对值。 |
-
type v4l2_vp8_loop_filter¶
__s8 |
|
参考调整(有符号)增量值。 |
__s8 |
|
宏块预测模式调整(有符号)增量值。 |
__u8 |
|
锐度级别 |
__u8 |
|
滤波器级别 |
__u16 |
|
应用程序和驱动程序必须将此设置为零。 |
__u32 |
|
请参阅 环路滤波器标志 |
环路 滤波器 标志
|
flags |
启用/禁用宏块级别环路滤波器调整。 |
|
V4L2_VP8_FRAME_FLAG_KEY_FRAME |
指示是否更新调整中使用的增量值。 |
|
V4L2_VP8_FRAME_FLAG_EXPERIMENTAL |
如果设置,则指示滤波器类型为简单类型。 如果清除,则滤波器类型为正常类型。 |
-
type v4l2_vp8_quantization¶
__u8 |
|
亮度 AC 系数表索引。 |
__s8 |
|
亮度 DC 增量值。 |
__s8 |
|
Y2 块 DC 增量值。 |
__s8 |
|
Y2 块 AC 增量值。 |
__s8 |
|
色度 DC 增量值。 |
__s8 |
|
色度 AC 增量值。 |
__u16 |
|
应用程序和驱动程序必须将此设置为零。 |
-
type v4l2_vp8_entropy¶
__u8 |
|
系数更新概率。 |
__u8 |
|
亮度模式更新概率。 |
__u8 |
|
色度模式更新概率。 |
__u8 |
|
MV 解码更新概率。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
V4L2_CID_STATELESS_MPEG2_SEQUENCE (结构体)
指定与相关 MPEG-2 切片数据对应的序列参数(从比特流中提取)。 这包括与 ISO 13818-2 指定的比特流的序列头和序列扩展部分中的语法元素匹配的字段。
-
type v4l2_ctrl_mpeg2_sequence¶
__u16 |
|
帧的亮度分量的可显示部分的宽度。 |
__u16 |
|
帧的亮度分量的可显示部分的高度。 |
__u32 |
|
用于计算视频缓冲验证器所需的尺寸,定义为(以位为单位):16 * 1024 * vbv_buffer_size。 |
__u16 |
|
从比特流中提取的当前配置文件和级别指示。 |
__u8 |
|
色度子采样格式(1:4:2:0,2:4:2:2,3:4:4:4)。 |
__u8 |
|
请参阅 MPEG-2 序列标志。 |
MPEG-2 序列 标志
|
flags |
指示序列的所有帧都是逐行扫描而不是隔行扫描。 |
V4L2_CID_STATELESS_MPEG2_PICTURE (结构体)
指定与相关 MPEG-2 切片数据对应的图片参数(从比特流中提取)。 这包括与 ISO 13818-2 指定的比特流的图片头和图片编码扩展部分中的语法元素匹配的字段。
-
type v4l2_ctrl_mpeg2_picture¶
__u64 |
|
用作后向参考的 V4L2 捕获缓冲区的时间戳,用于 B 编码帧和 P 编码帧。 时间戳是指结构体 |
__u64 |
|
用作前向参考的 V4L2 捕获缓冲区的时间戳,用于 B 编码帧。 时间戳是指结构体 |
__u32 |
|
请参阅 MPEG-2 图片标志。 |
__u8 |
|
运动矢量代码。 |
__u8 |
|
当前切片覆盖的帧的图片编码类型(V4L2_MPEG2_PIC_CODING_TYPE_I、V4L2_MPEG2_PIC_CODING_TYPE_P 或 V4L2_MPEG2_PIC_CODING_TYPE_B)。 |
__u8 |
|
图片结构(1:隔行扫描顶场,2:隔行扫描底场,3:逐行扫描帧)。 |
__u8 |
|
离散余弦变换的精度(0:8 位精度,1:9 位精度,2:10 位精度,3:11 位精度)。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
MPEG-2 图片 标志
|
0x00000001 |
如果设置并且它是隔行扫描流,则首先输出顶场。 |
|
0x00000002 |
如果设置,则仅使用帧 DCT 和帧预测。 |
|
0x00000004 |
如果设置,则为内部宏块编码运动矢量。 |
|
0x00000008 |
此标志影响反量化过程。 |
|
0x00000010 |
此标志影响变换系数数据的解码。 |
|
0x00000020 |
此标志影响变换系数数据的解码。 |
|
0x00000040 |
此标志影响逐行扫描帧的解码过程。 |
|
0x00000080 |
指示当前帧是否为逐行扫描。 |
V4L2_CID_STATELESS_MPEG2_QUANTISATION (结构体)
指定与相关 MPEG-2 切片数据对应的量化矩阵(按 Z 字形扫描顺序排列)。 此控件由内核初始化为矩阵默认值。 如果比特流传输用户定义的量化矩阵加载,则应用程序应使用此控件。 如果需要重置量化矩阵(例如,在序列头中),则应用程序还应设置控件以加载默认值。 此过程由规范的第 6.3.7 节“量化矩阵扩展”指定。
-
type v4l2_ctrl_mpeg2_quantisation¶
__u8 |
|
按 Z 字形扫描顺序排列的内部编码帧的量化矩阵系数。 它与亮度和色度分量相关,尽管它可以被非 4:2:0 YUV 格式的色度特定矩阵取代。 |
__u8 |
|
按 Z 字形扫描顺序排列的非内部编码帧的量化矩阵系数。 它与亮度和色度分量相关,尽管它可以被非 4:2:0 YUV 格式的色度特定矩阵取代。 |
__u8 |
|
按 Z 字形扫描顺序排列的内部编码帧的色度分量的量化矩阵系数。 仅与非 4:2:0 YUV 格式相关。 |
__u8 |
|
按 Z 字形扫描顺序排列的非内部编码帧的色度分量的量化矩阵系数。 仅与非 4:2:0 YUV 格式相关。 |
V4L2_CID_STATELESS_VP9_COMPRESSED_HDR (结构体)
存储从当前压缩帧头解析的 VP9 概率更新。 数组元素中的零值表示不更新相关概率。 运动矢量相关的更新包含新值或零。 所有其他更新都包含使用 inv_map_table[] 转换的值(请参阅 VP9 中的 6.3.5)。
-
type v4l2_ctrl_vp9_compressed_hdr¶
__u8 |
|
指定 TX 模式。 有关更多详细信息,请参阅 TX 模式。 |
__u8 |
|
TX 8x8 概率增量。 |
__u8 |
|
TX 16x16 概率增量。 |
__u8 |
|
TX 32x32 概率增量。 |
__u8 |
|
系数概率增量。 |
__u8 |
|
跳过概率增量。 |
__u8 |
|
帧间预测模式概率增量。 |
__u8 |
|
插值滤波器概率增量。 |
__u8 |
|
是帧间块概率增量。 |
__u8 |
|
复合预测模式概率增量。 |
__u8 |
|
单参考概率增量。 |
__u8 |
|
复合参考概率增量。 |
__u8 |
|
Y 预测模式概率增量。 |
__u8 |
|
UV 预测模式概率增量。 |
__u8 |
|
分区概率增量。 |
__u8 |
|
运动矢量联合概率增量。 |
__u8 |
|
运动矢量符号概率增量。 |
__u8 |
|
运动矢量类概率增量。 |
__u8 |
|
运动矢量 class0 位概率增量。 |
__u8 |
|
运动矢量位概率增量。 |
__u8 |
|
运动矢量 class0 分数位概率增量。 |
__u8 |
|
运动矢量分数位概率增量。 |
__u8 |
|
运动矢量 class0 高精度分数位概率增量。 |
__u8 |
|
运动矢量高精度分数位概率增量。 |
TX 模式
|
0 |
变换大小为 4x4。 |
|
1 |
变换大小最大可为 8x8。 |
|
2 |
变换大小最大可为 16x16。 |
|
3 |
变换大小最大可为 32x32。 |
|
4 |
比特流包含每个块的变换大小。 |
有关更多详细信息,请参阅 VP9 规范的“7.3.1 Tx 模式语义”部分。
V4L2_CID_STATELESS_VP9_FRAME (结构体)
指定与相关 VP9 帧解码请求对应的帧参数。 这包括为 VP9 配置无状态硬件解码管道所需的参数。 比特流参数根据 VP9 定义。
-
type v4l2_ctrl_vp9_frame¶
|
环路滤波器参数。 有关更多详细信息,请参阅结构体 |
|
|
量化参数。 有关更多详细信息,请参阅 |
|
|
分段参数。 有关更多详细信息,请参阅 |
|
__u32 |
|
V4L2_VP9_FRAME_FLAG_* 标志的组合。 请参阅 帧标志。 |
__u16 |
|
压缩标头大小(以字节为单位)。 |
__u16 |
|
未压缩标头大小(以字节为单位)。 |
__u16 |
|
加 1 以获取以像素表示的帧宽度。 请参阅 VP9 中的 7.2.3 节。 |
__u16 |
|
加 1 以获取以像素表示的帧高度。 请参阅 VP9 中的 7.2.3 节。 |
__u16 |
|
加 1 以获取预期渲染宽度(以像素表示)。 这不会在解码过程中使用,但可能被 HW 缩放器用于准备好扫描输出的帧。 请参阅 VP9 中的 7.2.4 节。 |
__u16 |
render_height_minus_1 |
加 1 以获取预期渲染高度(以像素表示)。 这不会在解码过程中使用,但可能被 HW 缩放器用于准备好扫描输出的帧。 请参阅 VP9 中的 7.2.4 节。 |
__u64 |
|
“last”参考缓冲区时间戳。 时间戳是指结构体 |
__u64 |
|
“golden”参考缓冲区时间戳。 时间戳是指结构体 |
__u64 |
|
“alt”参考缓冲区时间戳。 时间戳是指结构体 |
__u8 |
|
一个位字段,用于指定是否为给定的参考帧设置了符号偏差。 有关更多详细信息,请参阅 参考帧符号偏差。 |
__u8 |
|
指定是否应将帧上下文重置为默认值。 有关更多详细信息,请参阅 重置帧上下文。 |
__u8 |
|
应使用/更新的帧上下文。 |
__u8 |
|
VP9 配置文件。 可以是 0、1、2 或 3。 |
__u8 |
|
组件深度(以位为单位)。 可以是 8、10 或 12。 请注意,并非所有配置文件都支持 10 位和/或 12 位深度。 |
__u8 |
|
指定用于执行帧间预测的滤波器选择。 有关更多详细信息,请参阅 插值滤波器。 |
__u8 |
|
指定每个图块宽度的以 2 为底的对数(其中宽度以 8x8 块为单位测量)。 应小于或等于 6。 |
__u8 |
|
指定每个图块高度的以 2 为底的对数(其中高度以 8x8 块为单位测量)。 |
__u8 |
|
指定要使用的帧间预测类型。 有关更多详细信息,请参阅 参考模式。 请注意,这是作为压缩标头解析过程的一部分派生的,因此应该属于 :c:type: v4l2_ctrl_vp9_compressed_hdr 可选控件。 如果驱动程序不需要压缩标头,则将此值设置为零是安全的。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
alt_frame_ts
|
0x001 |
该帧是关键帧。 |
|
0x002 |
应显示该帧。 |
|
0x004 |
解码应具有错误恢复能力。 |
|
0x008 |
该帧不引用其他帧。 |
|
0x010 |
该帧可以使用高精度运动矢量。 |
|
0x020 |
应在解码后更新帧上下文。 |
|
0x040 |
使用并行解码。 |
|
0x080 |
启用垂直子采样。 |
|
0x100 |
启用水平子采样。 |
|
0x200 |
使用完整 UV 范围。 |
参考 帧 符号 偏差
|
0x1 |
为上一个参考帧设置符号偏差。 |
|
0x2 |
为黄金参考帧设置符号偏差。 |
|
0x2 |
为备用参考帧设置符号偏差。 |
重置 帧 上下文
|
0 |
不重置任何帧上下文。 |
|
1 |
重置 |
|
2 |
重置所有帧上下文。 |
有关更多详细信息,请参阅 VP9 规范的“7.2 未压缩标头语义”部分。
插值 滤波器
|
0 |
八抽头滤波器。 |
|
1 |
八抽头平滑滤波器。 |
|
2 |
八抽头锐化滤波器。 |
|
3 |
双线性滤波器。 |
|
4 |
滤波器选择在块级别进行信号通知。 |
有关更多详细信息,请参阅 VP9 规范的“7.2.7 插值滤波器语义”部分。
参考 模式
|
0 |
指示所有帧间块仅使用单个参考帧来生成运动补偿预测。 |
|
1 |
要求所有帧间块都使用复合模式。 不允许单参考帧预测。 |
|
2 |
允许每个单独的帧间块在单预测模式和复合预测模式之间进行选择。 |
有关更多详细信息,请参阅 VP9 规范的“7.3.6 帧参考模式语义”部分。
-
type v4l2_vp9_segmentation¶
编码量化参数。 有关更多详细信息,请参阅 VP9 规范的“7.2.10 分段参数语法”部分。
__u8 |
|
附加到每个特征的数据。 仅当启用该特征时,数据条目才有效。 应该使用段号作为第一维 (0..7) 以及 V4L2_VP9_SEG_* 之一作为第二维来索引数组。 请参阅 段特征 ID。 |
__u8 |
|
定义在每个段中启用哪些特征的位掩码。 每个段的值都是 V4L2_VP9_SEGMENT_FEATURE_ENABLED(id) 值的组合,其中 id 是 V4L2_VP9_SEG_* 之一。 请参阅 段特征 ID。 |
__u8 |
|
指定在解码段 ID 时要使用的概率值。 有关更多详细信息,请参阅 VP9 的“5.15 分段映射”部分。 |
__u8 |
|
指定在解码预测段 ID 时要使用的概率值。 有关更多详细信息,请参阅 VP9 的“6.4.14 获取段 ID 语法”部分。 |
__u8 |
|
V4L2_VP9_SEGMENTATION_FLAG_* 标志的组合。 请参阅 分段标志。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
段 特征 ID
|
0 |
量化器段特征。 |
|
1 |
环路滤波器段特征。 |
|
2 |
参考帧段特征。 |
|
3 |
跳过段特征。 |
|
4 |
段特征的数量。 |
分段 标志
|
flags |
指示此帧是否使用分段工具。 |
|
V4L2_VP8_FRAME_FLAG_KEY_FRAME |
指示应在此帧的解码期间更新分段映射。 |
|
V4L2_VP8_FRAME_FLAG_EXPERIMENTAL |
指示对分段映射的更新是相对于现有分段映射进行编码的。 |
|
V4L2_VP8_FRAME_FLAG_SHOW_FRAME |
指示即将为每个段指定新参数。 |
|
V4L2_VP8_FRAME_FLAG_MB_NO_SKIP_COEFF |
指示分段参数表示要使用的实际值。 |
-
type v4l2_vp9_quantization¶
编码量化参数。 有关更多详细信息,请参阅 VP9 规范的“7.2.9 量化参数语法”部分。
__u8 |
|
指示基本帧 qindex。 |
__s8 |
|
指示相对于 base_q_idx 的 Y DC 量化器。 |
__s8 |
|
指示相对于 base_q_idx 的 UV DC 量化器。 |
__s8 |
|
指示相对于 base_q_idx 的 UV AC 量化器。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
-
type v4l2_vp9_loop_filter¶
此结构体包含所有环路滤波器相关参数。 有关更多详细信息,请参阅 VP9 规范的“7.2.8 环路滤波器语义”部分。
__s8 |
|
包含基于所选参考帧对滤波器级别所需的调整。 |
__s8 |
|
包含基于所选模式对滤波器级别所需的调整。 |
__u8 |
|
指示环路滤波器强度。 |
__u8 |
|
指示清晰度级别。 |
__u8 |
|
V4L2_VP9_LOOP_FILTER_FLAG_* 标志的组合。 请参阅 环路滤波器标志。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
环路 滤波器 标志
|
0x1 |
设置后,滤波器级别取决于用于预测块的模式和参考帧。 |
|
0x2 |
设置后,比特流包含其他语法元素,这些元素指定要更新哪些模式和参考帧增量。 |
V4L2_CID_STATELESS_HEVC_SPS (结构体)
指定与相关 HEVC 切片数据对应的序列参数集字段(从比特流中提取)。 这些比特流参数根据 ITU H.265/HEVC 定义。 它们在规范的第 7.4.3.2 节“序列参数集 RBSP 语义”中描述。
-
type v4l2_ctrl_hevc_sps¶
__u8 |
|
指定活动 VPS 的 vps_video_parameter_set_id 的值,如 H.265 规范的“7.4.3.2.1 常规序列参数集 RBSP 语义”部分中所述。 |
__u8 |
|
提供 SPS 的标识符,以便其他语法元素参考,如 H.265 规范的“7.4.3.2.1 常规序列参数集 RBSP 语义”部分中所述。 |
__u16 |
|
指定每个解码图片以亮度样本为单位的宽度。 |
__u16 |
|
指定每个解码图片以亮度样本为单位的高度。 |
__u8 |
|
此值加 8 指定亮度阵列样本的位深度。 |
__u8 |
|
此值加 8 指定色度阵列样本的位深度。 |
__u8 |
|
指定变量 MaxPicOrderCntLsb 的值。 |
__u8 |
|
此值加 1 指定编码视频序列 (CVS) 解码图片缓冲区的最大所需大小。 |
__u8 |
|
指示允许的最大图片数量。 |
__u8 |
|
用于指示 MaxLatencyPictures,它指示输出顺序中可以在任何图片之前并且在解码顺序中跟随该图片的最大图片数量。 |
__u8 |
|
此值加 3 指定最小亮度编码块大小。 |
__u8 |
|
指定最大和最小亮度编码块大小之间的差异。 |
__u8 |
|
此值加 2 指定最小亮度变换块大小。 |
__u8 |
|
指定最大和最小亮度变换块大小之间的差异。 |
__u8 |
|
指定以帧间预测模式编码的编码单元的变换单元的最大层次深度。 |
__u8 |
|
指定以帧内预测模式编码的编码单元的变换单元的最大层次深度。 |
__u8 |
|
此值加 1 指定用于表示亮度分量的每个 PCM 样本值的位数。 |
__u8 |
|
指定用于表示色度分量的每个 PCM 样本值的位数。 |
__u8 |
|
加 3 指定了编码块的最小尺寸。 |
__u8 |
|
指定了编码块的最大尺寸和最小尺寸之间的差值。 |
__u8 |
|
指定了 SPS 中包含的 st_ref_pic_set() 语法结构的数目。 |
__u8 |
|
指定了 SPS 中指定的候选长期参考图片的数目。 |
__u8 |
|
指定了色度采样。 |
__u8 |
|
此值加 1 指定了时间子层的最大数目。 |
__u64 |
|
参见 序列参数集标志 |
序列 参数 集 标志
|
0x00000001 |
|
|
0x00000002 |
|
|
0x00000004 |
|
|
0x00000008 |
|
|
0x00000010 |
|
|
0x00000020 |
|
|
0x00000040 |
|
|
0x00000080 |
|
|
0x00000100 |
V4L2_CID_STATELESS_HEVC_PPS (struct)
指定了关联的 HEVC 片数据(从比特流中提取)的图像参数集字段。这些比特流参数根据 ITU H.265/HEVC 定义。它们在规范的第 7.4.3.3 节“图像参数集 RBSP 语义”中描述。
-
type v4l2_ctrl_hevc_pps¶
__u8 |
|
标识了 PPS 以供其他语法元素参考。 |
__u8 |
|
指定了片头 RBSP 中存在的额外片头比特数,这些片头用于引用 PPS 的编码图像。 |
__u8 |
|
此值加 1 指定了 num_ref_idx_l0_active_minus1 的推断值。 |
__u8 |
|
此值加 1 指定了 num_ref_idx_l1_active_minus1 的推断值。 |
__s8 |
|
此值加 26 指定了引用 PPS 的每个片的 SliceQp Y 的初始值。 |
__u8 |
|
指定了亮度编码树块大小与传达 cu_qp_delta_abs 和 cu_qp_delta_sign_flag 的编码单元的最小亮度编码块大小之间的差值。 |
__s8 |
|
指定了亮度量化参数 Cb 的偏移量。 |
__s8 |
|
指定了亮度量化参数 Cr 的偏移量。 |
__u8 |
|
此值加 1 指定了划分图像的瓦片列数。 |
__u8 |
|
此值加 1 指定了划分图像的瓦片行数。 |
__u8 |
|
此值加 1 指定了第 i 个瓦片列的宽度,以编码树块为单位。 |
__u8 |
|
此值加 1 指定了第 i 个瓦片行的高度,以编码树块为单位。 |
__s8 |
|
指定了除以 2 的 beta 默认去块参数偏移量。 |
__s8 |
|
指定了除以 2 的 tC 默认去块参数偏移量。 |
__u8 |
|
此值加 2 指定了变量 Log2ParMrgLevel 的值。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
__u64 |
|
参见 图像参数集标志 |
图片 参数 集 标志
|
0x00000001 |
|
|
0x00000002 |
|
|
0x00000004 |
|
|
0x00000008 |
|
|
0x00000010 |
|
|
0x00000020 |
|
|
0x00000040 |
|
|
0x00000080 |
|
|
0x00000100 |
|
|
0x00000200 |
|
|
0x00000400 |
|
|
0x00000800 |
|
|
0x00001000 |
|
|
0x00002000 |
|
|
0x00004000 |
|
|
0x00008000 |
|
|
0x00010000 |
|
|
0x00020000 |
|
|
0x00040000 |
|
|
0x00080000 |
指定了 PPS 中是否存在去块滤波器控制语法元素 |
|
0x00100000 |
指定了瓦片列边界以及瓦片行边界在图像上均匀分布 |
V4L2_CID_STATELESS_HEVC_SLICE_PARAMS (struct)
指定了各种片特定的参数,特别是来自比特流的 NAL 单元头、通用片分段头和加权预测参数部分。这些比特流参数根据 ITU H.265/HEVC 定义。它们在规范的第 7.4.7 节“通用片分段头语义”中描述。此控件是一个动态大小的一维数组,使用时必须设置 V4L2_CTRL_FLAG_DYNAMIC_ARRAY 标志。
-
type v4l2_ctrl_hevc_slice_params¶
__u32 |
|
当前片数据的大小(以比特为单位)。 |
__u32 |
|
当前片数据中视频数据的偏移量(以字节为单位)。 |
__u32 |
|
指定了片头中入口点偏移语法元素的数目。当驱动程序支持时,必须设置 |
__u8 |
|
指定了片的编码类型(B、P 或 I)。 |
__u8 |
|
减 1 指定了 NAL 单元的时间标识符。 |
__u8 |
|
(V4L2_HEVC_SLICE_TYPE_I、V4L2_HEVC_SLICE_TYPE_P 或 V4L2_HEVC_SLICE_TYPE_B)。 |
__u8 |
|
指定了与当前片关联的颜色平面。 |
__s32 |
|
指定了图像顺序计数。 |
__u8 |
|
此值加 1 指定了参考图像列表 0 的最大参考索引,该索引可用于解码片。 |
__u8 |
|
此值加 1 指定了参考图像列表 1 的最大参考索引,该索引可用于解码片。 |
__u8 |
|
指定了用于时间运动矢量预测的并置图像的参考索引。 |
__u8 |
|
指定了片中支持的最大合并运动矢量预测候选数目减 5。 |
__s8 |
|
指定了用于片中编码块的 QpY 的初始值。 |
__s8 |
|
指定了要添加到 pps_cb_qp_offset 值中的差值。 |
__s8 |
|
指定了要添加到 pps_cr_qp_offset 值中的差值。 |
__s8 |
|
指定了第 8.6.2 节中导出的亮度量化参数 qP 的偏移量 |
__s8 |
|
指定了第 8.6.2 节中导出的 cb 量化参数 qP 的偏移量 |
__s8 |
|
指定了第 8.6.2 节中导出的 cr 量化参数 qP 的偏移量 |
__s8 |
|
指定了除以 2 的 beta 去块参数偏移量。 |
__s8 |
|
指定了除以 2 的 tC 去块参数偏移量。 |
__u8 |
|
指示图像应显示为帧还是一个或多个场。 |
__u32 |
|
指定了片分段中第一个编码树块的地址。 |
__u8 |
|
作为 DPB 中索引的 L0 参考元素的列表。 |
__u8 |
|
作为 DPB 中索引的 L1 参考元素的列表。 |
__u16 |
|
指定了规范中描述为 st_ref_pic_set() 的短期参考图像集的大小(以比特为单位),包含在片头或 SPS 中(第 7.3.6.1 节)。 |
__u16 |
|
指定了包含在片头或 SPS 中的长期参考图像集的大小(以比特为单位)。它是规范第 7.3.6.1 节中条件块 if(long_term_ref_pics_present_flag) 中的比特数。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
struct |
|
帧间预测的预测权重系数。 |
__u64 |
|
参见 片参数标志 |
片 参数 标志
|
0x00000001 |
|
|
0x00000002 |
|
|
0x00000004 |
|
|
0x00000008 |
|
|
0x00000010 |
|
|
0x00000020 |
|
|
0x00000040 |
|
|
0x00000080 |
|
|
0x00000100 |
|
|
0x00000200 |
V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS (integer)
指定了以字节为单位的入口点偏移量。此控件是一个动态大小的数组。入口点偏移量的数目由
elems
字段报告。此比特流参数根据 ITU H.265/HEVC 定义。它们在规范的第 7.4.7.1 节“通用片分段头语义”中描述。当在一个请求中提交多个片时,此数组的长度必须是请求中所有片的 num_entry_point_offsets 的总和。V4L2_CID_STATELESS_HEVC_SCALING_MATRIX (struct)
指定了用于变换系数缩放过程的 HEVC 缩放矩阵参数。这些矩阵和参数根据 ITU H.265/HEVC 定义。它们在规范的第 7.4.5 节“缩放列表数据语义”中描述。
-
type v4l2_ctrl_hevc_scaling_matrix¶
__u8 |
|
缩放列表用于变换系数的缩放过程。每个缩放列表上的值都按光栅扫描顺序排列。 |
__u8 |
|
缩放列表用于变换系数的缩放过程。每个缩放列表上的值都按光栅扫描顺序排列。 |
__u8 |
|
缩放列表用于变换系数的缩放过程。每个缩放列表上的值都按光栅扫描顺序排列。 |
__u8 |
|
缩放列表用于变换系数的缩放过程。每个缩放列表上的值都按光栅扫描顺序排列。 |
__u8 |
|
缩放列表用于变换系数的缩放过程。每个缩放列表上的值都按光栅扫描顺序排列。 |
__u8 |
|
缩放列表用于变换系数的缩放过程。每个缩放列表上的值都按光栅扫描顺序排列。 |
-
type v4l2_hevc_dpb_entry¶
__u64 |
|
用作参考的 V4L2 捕获缓冲区的时间戳,与 B 编码帧和 P 编码帧一起使用。时间戳指的是 struct |
__u8 |
|
参考帧的长期标志 (V4L2_HEVC_DPB_ENTRY_LONG_TERM_REFERENCE)。该标志的设置如 ITU HEVC 规范第“8.3.2 参考图像集解码过程”一章中所述。 |
__u8 |
|
参考是场图像还是帧。参见 HEVC dpb 场图像标志 |
__s32 |
|
当前图像的图像顺序计数。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
HEVC dpb 场 图像 标志
|
0 |
(逐行)帧 |
|
1 |
顶场 |
|
2 |
底场 |
|
3 |
顶场、底场,按该顺序排列 |
|
4 |
底场、顶场,按该顺序排列 |
|
5 |
顶场、底场、顶场重复,按该顺序排列 |
|
6 |
底场、顶场、底场重复,按该顺序排列 |
|
7 |
帧加倍 |
|
8 |
帧三倍化 |
|
9 |
顶场与输出顺序中的前一个底场配对 |
|
10 |
底场与输出顺序中的前一个顶场配对 |
|
11 |
顶场与输出顺序中的下一个底场配对 |
|
12 |
底场与输出顺序中的下一个顶场配对 |
-
type v4l2_hevc_pred_weight_table¶
__s8 |
|
应用于列表 0 的亮度预测值的加权因子的差。 |
__s8 |
|
应用于列表 0 的亮度预测值的附加偏移量。 |
__s8 |
|
应用于列表 0 的色度预测值的加权因子的差。 |
__s8 |
|
应用于列表 0 的色度预测值的附加偏移量的差。 |
__s8 |
|
应用于列表 1 的亮度预测值的加权因子的差。 |
__s8 |
|
应用于列表 1 的亮度预测值的附加偏移量。 |
__s8 |
|
应用于列表 1 的色度预测值的加权因子的差。 |
__s8 |
|
应用于列表 1 的色度预测值的附加偏移量的差。 |
__u8 |
|
所有亮度加权因子的分母的以 2 为底的对数。 |
__s8 |
|
所有色度加权因子的分母的以 2 为底的对数的差。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
V4L2_CID_STATELESS_HEVC_DECODE_MODE (enum)
指定要使用的解码模式。当前公开基于片的解码和基于帧的解码,但稍后可能会添加新模式。此控件用作 V4L2_PIX_FMT_HEVC_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_HEVC_SLICE 的应用程序需要设置此控件,以便指定缓冲区的预期解码模式。驱动程序可以公开单个或多个解码模式,具体取决于它们可以支持的模式。
-
type v4l2_stateless_hevc_decode_mode¶
|
0 |
解码以片粒度完成。OUTPUT 缓冲区必须包含单个片。 |
|
1 |
解码以帧粒度完成。OUTPUT 缓冲区必须包含解码帧所需的所有片。 |
V4L2_CID_STATELESS_HEVC_START_CODE (enum)
指定每个片预期的 HEVC 片起始码。此控件用作 V4L2_PIX_FMT_HEVC_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_HEVC_SLICE 的应用程序需要设置此控件,以便指定缓冲区的预期起始码。驱动程序可以公开单个或多个起始码,具体取决于它们可以支持的起始码。
-
type v4l2_stateless_hevc_start_code¶
|
0 |
选择此值指定 HEVC 片传递给驱动程序时没有任何起始码。比特流数据应符合 ITU H.265/HEVC 7.3.1.1 通用 NAL 单元语法,因此在需要时包含仿真防止字节。 |
|
1 |
选择此值指定 HEVC 片预期以 Annex B 起始码作为前缀。根据 ITU H.265/HEVC,有效的起始码可以是 3 字节 0x000001 或 4 字节 0x00000001。 |
V4L2_CID_MPEG_VIDEO_BASELAYER_PRIORITY_ID (integer)
指定 NAL 单元的优先级标识符,该标识符将应用于基本层。默认情况下,此值对于基本层设置为 0,下一层将分配优先级 ID 为 1、2、3,依此类推。视频编码器无法决定要应用于层的优先级 ID,因此这必须来自客户端。这适用于 H264,有效范围为 0 到 63。源 Rec. ITU-T H.264 (06/2019);G.7.4.1.1、G.8.8.1。
V4L2_CID_MPEG_VIDEO_LTR_COUNT (integer)
指定编码器在任何给定时间可以保留的长期参考 (LTR) 帧的最大数目。这适用于 H264 和 HEVC 编码器。
V4L2_CID_MPEG_VIDEO_FRAME_LTR_INDEX (integer)
设置此控件后,下一个排队的帧将被标记为长期参考 (LTR) 帧,并给定此 LTR 索引,其范围从 0 到 LTR_COUNT-1。这适用于 H264 和 HEVC 编码器。源 Rec. ITU-T H.264 (06/2019);表 7.9
V4L2_CID_MPEG_VIDEO_USE_LTR_FRAMES (bitmask)
指定用于编码在此控件设置后排队的下一个帧的长期参考 (LTR) 帧。这提供了一个比特掩码,其中包含比特 [0, LTR_COUNT-1]。这适用于 H264 和 HEVC 编码器。
V4L2_CID_STATELESS_HEVC_DECODE_PARAMS (struct)
指定各种解码参数,特别是所有列表(短、长、之前、当前、之后)的参考图像顺序计数 (POC) 以及每个列表的条目数。这些参数根据 ITU H.265/HEVC 定义。它们在规范的第 8.3 节“片解码过程”中描述。
-
type v4l2_ctrl_hevc_decode_params¶
__s32 |
|
规范第 8.3.1 节“图像顺序计数的解码过程”中描述的 PicOrderCntVal。 |
__u16 |
|
指定了片头或 SPS 中包含的第一个片中描述为 st_ref_pic_set() 的短期参考图像集的大小(以比特为单位)(规范第 7.3.6.1 节)。 |
__u16 |
|
指定了包含在片头或 SPS 中的第一个片中的长期参考图像集的大小(以比特为单位)。它是规范第 7.3.6.1 节中条件块 if(long_term_ref_pics_present_flag) 中的比特数。 |
__u8 |
|
|
__u8 |
|
当前帧之前的短期集中的参考图像数。 |
__u8 |
|
当前帧之后的短期集中的参考图像数。 |
__u8 |
|
长期集中的参考图像数。 |
__u8 |
|
规范第 8.3.2 节“参考图像集解码过程”中描述的 PocStCurrBefore:提供 DPB 数组中短期之前参考的索引。 |
__u8 |
|
规范第 8.3.2 节“参考图像集解码过程”中描述的 PocStCurrAfter:提供 DPB 数组中短期之后参考的索引。 |
__u8 |
|
规范第 8.3.2 节“参考图像集解码过程”中描述的 PocLtCurr:提供 DPB 数组中长期参考的索引。 |
__u8 |
|
当片头中的 short_term_ref_pic_set_sps_flag 等于 0 时,它与派生值 NumDeltaPocs[RefRpsIdx] 相同。它可用于解析片头中的 RPS 数据,而不是使用 @short_term_ref_pic_set_size 跳过它。当片头中的 short_term_ref_pic_set_sps_flag 的值等于 1 时,num_delta_pocs_of_ref_rps_idx 应设置为 0。 |
struct |
|
解码图像缓冲区,用于参考帧的元数据。 |
__u64 |
|
参见 解码参数标志 |
解码 参数 标志
|
0x00000001 |
|
|
0x00000002 |
|
|
0x00000004 |
V4L2_CID_STATELESS_AV1_SEQUENCE (struct)
表示 AV1 序列 OBU(开放比特流单元)。有关更多详细信息,请参见 AV1 中的 5.5 节“序列头 OBU 语法”。
-
type v4l2_ctrl_av1_sequence¶
__u32 |
|
参见 AV1 序列标志。 |
__u8 |
|
指定了编码视频序列中可以使用的功能。 |
__u8 |
|
指定了每个帧的 order_hint 字段使用的比特数。 |
__u8 |
|
用于序列的比特深度,如 AV1 中的 5.5.2 节“颜色配置语法”中所述。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
__u16 |
|
指定了此序列头表示的帧的最大帧宽减 1。 |
__u16 |
|
指定了此序列头表示的帧的最大帧高减 1。 |
AV1 序列 标志
|
0x00000001 |
如果设置,则指定编码视频序列仅包含一个编码帧。如果未设置,则指定编码视频序列包含一个或多个编码帧。 |
|
0x00000002 |
如果设置,则指示超块包含 128x128 亮度样本。当等于 0 时,指示超块包含 64x64 亮度样本。包含的色度样本数取决于 subsampling_x 和 subsampling_y。 |
|
0x00000004 |
如果设置,则指定可以存在 use_filter_intra 语法元素。如果未设置,则指定将不存在 use_filter_intra 语法元素。 |
|
0x00000008 |
指定是否应启用帧内边缘过滤过程。 |
|
0x00000010 |
如果设置,则指定帧间块的模式信息可能包含语法元素 interintra。如果未设置,则指定语法元素 interintra 将不存在。 |
|
0x00000020 |
如果设置,则指定帧间块的模式信息可能包含语法元素 compound_type。如果未设置,则指定语法元素 compound_type 将不存在。 |
|
0x00000040 |
如果设置,则指示 allow_warped_motion 语法元素可能存在。如果未设置,则指示 allow_warped_motion 语法元素将不存在。 |
|
0x00000080 |
如果设置,则指示帧间预测滤波器类型可以在水平方向和垂直方向上独立指定。如果标志等于 0,则只能指定一种滤波器类型,然后将其用于两个方向。 |
|
0x00000100 |
如果设置,则指示可以基于顺序提示的值使用工具。如果未设置,则指示基于顺序提示的工具被禁用。 |
|
0x00000200 |
如果设置,则指示距离权重过程可以用于帧间预测。 |
|
0x00000400 |
如果设置,则指示 use_ref_frame_mvs 语法元素可能存在。如果未设置,则指示 use_ref_frame_mvs 语法元素将不存在。 |
|
0x00000800 |
如果设置,则指定 use_superres 语法元素将存在于未压缩的头中。如果未设置,则指定 use_superres 语法元素将不存在(而是在未压缩的头中将 use_superres 设置为 0 而不读取)。 |
|
0x00001000 |
如果设置,则指定可以启用 cdef 过滤。如果未设置,则指定 cdef 过滤被禁用。 |
|
0x00002000 |
如果设置,则指定可以启用循环恢复过滤。如果未设置,则指定循环恢复过滤被禁用。 |
|
0x00004000 |
如果设置,则指示视频不包含 U 和 V 颜色平面。如果未设置,则指示视频包含 Y、U 和 V 颜色平面。 |
|
0x00008000 |
如果设置,则表示全范围表示,即“全范围量化”。如果未设置,则表示工作室范围表示,即“有限范围量化”。 |
|
0x00010000 |
指定色度子采样格式。 |
|
0x00020000 |
指定色度子采样格式。 |
|
0x00040000 |
指定影片纹理参数是否存在于编码视频序列中。 |
|
0x00080000 |
如果设置,则指示 U 和 V 平面可能具有单独的增量量化值。如果未设置,则指示 U 和 V 平面将共享相同的增量量化值。 |
V4L2_CID_STATELESS_AV1_TILE_GROUP_ENTRY (struct)
表示 AV1 图块组中的单个 AV1 图块。请注意,可以使用
struct v4l2_ctrl_av1_frame
中的 tile_row 和 tile_col 从struct v4l2_av1_tile_info
中检索 MiRowStart、MiRowEnd、MiColStart 和 MiColEnd。有关更多详细信息,请参见 AV1 中的 6.10.1 节“通用图块组 OBU 语义”。
-
type v4l2_ctrl_av1_tile_group_entry¶
__u32 |
|
来自 OBU 数据的偏移量,即编码图块数据实际开始的位置。 |
__u32 |
|
指定了编码图块的大小(以字节为单位)。等效于 AV1 中的“TileSize”。 |
__u32 |
|
指定了当前图块的行。等效于 AV1 中的“TileRow”。 |
__u32 |
|
指定了当前图块的列。等效于 AV1 中的“TileColumn”。 |
|
0 |
变形模型只是一个恒等变换。 |
|
1 |
变形模型是一个纯粹的平移。 |
|
2 |
变形模型是一个旋转 + 对称缩放 + 平移。 |
|
3 |
变形模型是一个通用的仿射变换。 |
-
type v4l2_av1_reference_frame¶
AV1 参考帧,如 AV1 的 6.10.24 节“参考帧语义”中所述。
|
0 |
帧内参考帧。 |
|
1 |
Last 帧参考。 |
|
2 |
Last2 帧参考。 |
|
3 |
Last3 帧参考。 |
|
4 |
Golden 帧参考。 |
|
5 |
BWD 帧参考。 |
|
6 |
ALTREF2 帧参考。 |
|
7 |
ALTREF 帧参考。 |
-
type v4l2_av1_global_motion¶
AV1 全局运动参数,如 AV1 的 6.8.17 节“全局运动参数语义”中所述。
__u8 |
|
一个位域,包含每个参考帧的标志。有关更多详细信息,请参见 AV1 全局运动标志。 |
enum |
|
使用的全局运动变换类型。 |
__s32 |
|
此字段的含义与 AV1 中的“gm_params”相同。 |
__u8 |
|
位域,指示给定参考帧的全局运动参数是否无效。 请参见 7.11.3.6 节设置剪切过程和变量“warpValid”。 使用 V4L2_AV1_GLOBAL_MOTION_IS_INVALID(ref) 创建合适的掩码。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
AV1 全局 运动 标志
|
0x00000001 |
指定特定参考帧是否存在全局运动参数。 |
|
0x00000002 |
指定特定参考帧是否使用旋转和缩放全局运动。 |
|
0x00000004 |
指定特定参考帧是否使用平移全局运动 |
-
type v4l2_av1_frame_restoration_type¶
AV1 帧恢复类型。
|
0 |
不应用任何过滤。 |
|
1 |
调用 Wiener 滤波器过程。 |
|
2 |
调用自引导滤波器过程。 |
|
3 |
恢复滤波器是可切换的。 |
-
type v4l2_av1_loop_restoration¶
AV1 环路恢复,如 AV1 的 6.10.15 节“环路恢复参数语义”中所述。
__u8 |
|
参见 AV1 环路恢复标志。 |
__u8 |
|
指定亮度恢复大小是否应减半。 |
__u8 |
|
指定色度大小是否应为亮度大小的一半。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
|
指定用于每个平面的恢复类型。 |
|
__u8 |
|
指定当前平面中以样本为单位的环路恢复单元的大小。 |
AV1 环路 恢复 标志
|
0x00000001 |
保留与 AV1 中 UsesLr 相同的含义。 |
|
0x00000002 |
保留与 AV1 中 UsesChromaLr 相同的含义。 |
-
type v4l2_av1_cdef¶
AV1 CDEF 参数语义,如 AV1 的 6.10.14 节“CDEF 参数语义”中所述。
__u8 |
|
控制去环滤波器的阻尼量。 |
__u8 |
|
指定需要多少位才能指定要应用的 CDEF 滤波器。 |
__u8 |
|
指定主滤波器的强度。 |
__u8 |
|
指定辅助滤波器的强度。 |
__u8 |
|
指定主滤波器的强度。 |
__u8 |
|
指定辅助滤波器的强度。 |
-
type v4l2_av1_segment_feature¶
AV1 段特征,如 AV1 的第 3 节“符号和缩写词”中所述。
|
0 |
量化器段特征的索引。 |
|
1 |
垂直亮度环路滤波器段特征的索引。 |
|
5 |
参考帧段特征的索引。 |
|
6 |
跳过段特征的索引。 |
|
7 |
全局 mv 特征的索引。 |
|
8 |
段特征的数量。 |
-
type v4l2_av1_segmentation¶
AV1 分割参数,如 AV1 的 6.8.13 节“分割参数语义”中所定义。
__u8 |
|
参见 AV1 分割标志 |
__u8 |
|
指示具有某些启用特征的最高编号的段 ID。 在解码段 ID 时,这用于仅解码与使用段对应的选项。 |
__u8 |
|
位掩码,定义在每个段中启用哪些特征。 使用 V4L2_AV1_SEGMENT_FEATURE_ENABLED 构建合适的掩码。 |
__u16 |
|
附加到每个特征的数据。 仅当启用该特征时,数据条目才有效。 |
AV1 分割 标志
|
0x00000001 |
如果设置,指示此帧使用分割工具。 如果未设置,指示该帧不使用分割。 |
|
0x00000002 |
如果设置,指示在解码此帧期间更新分割图。 如果未设置,指示使用上一帧的分割图。 |
|
0x00000004 |
如果设置,指示对分割图的更新是相对于现有分割图进行编码的。 如果未设置,指示新的分割图是在没有参考现有分割图的情况下进行编码的。 |
|
0x00000008 |
如果设置,指示对分割图的更新是相对于现有分割图进行编码的。 如果未设置,指示新的分割图是在没有参考现有分割图的情况下进行编码的。 |
|
0x00000010 |
如果设置,指示将在跳过语法元素之前读取段 ID。 如果未设置,指示将首先读取跳过语法元素。 |
-
type v4l2_av1_loop_filter¶
AV1 环路滤波器参数,如 AV1 的 6.8.10 节“环路滤波器语义”中所定义。
__u8 |
|
有关更多详细信息,请参见 AV1 环路滤波器标志。 |
__u8 |
|
一个数组,包含环路滤波器强度值。 来自数组的不同环路滤波器强度值取决于要过滤的图像平面和要过滤的边缘方向(垂直或水平)而使用。 |
__u8 |
|
指示清晰度级别。 loop_filter_level 和 loop_filter_sharpness 一起确定何时过滤块边缘,以及过滤可以改变样本值的程度。 环路滤波器过程在 AV1 的 7.14 节中描述。 |
__u8 |
|
包含基于所选参考帧对滤波器级别所需的调整。 如果不存在此语法元素,它将保持其先前的值。 |
__u8 |
|
包含基于所选模式对滤波器级别所需的调整。 如果不存在此语法元素,它将保持其先前的值。 |
__u8 |
|
指定应应用于解码环路滤波器增量值的左移。 |
AV1 环路 滤波器 标志
|
0x00000001 |
如果设置,表示滤波器级别取决于用于预测块的模式和参考帧。 如果未设置,表示滤波器级别不取决于模式和参考帧。 |
|
0x00000002 |
如果设置,表示存在额外的语法元素,用于指定要更新哪些模式和参考帧增量。 如果未设置,表示不存在这些语法元素。 |
|
0x00000004 |
指定是否存在环路滤波器增量值 |
|
0x00000008 |
等于 1 的值指定为水平亮度边缘、垂直亮度边缘、U 边缘和 V 边缘发送单独的环路滤波器增量。 等于 0 的 delta_lf_multi 值指定对所有边缘使用相同的环路滤波器增量。 |
-
type v4l2_av1_quantization¶
AV1 量化参数,如 AV1 的 6.8.11 节“量化参数语义”中所定义。
__u8 |
|
有关更多详细信息,请参见 AV1 环路滤波器标志。 |
__u8 |
|
指示基本帧 qindex。 这用于 Y AC 系数,并用作其他量化器的基本值。 |
__u8 |
|
指示相对于 base_q_idx 的 Y DC 量化器。 |
__u8 |
|
指示相对于 base_q_idx 的 U DC 量化器。 |
__u8 |
|
指示相对于 base_q_idx 的 U AC 量化器。 |
__u8 |
|
指示相对于 base_q_idx 的 V DC 量化器。 |
__u8 |
|
指示相对于 base_q_idx 的 V AC 量化器。 |
__u8 |
|
指定量化器矩阵中应用于亮度平面解码的级别。 |
__u8 |
|
指定量化器矩阵中应用于色度 U 平面解码的级别。 |
__u8 |
|
指定量化器矩阵中应用于色度 V 平面解码的级别。 |
__u8 |
|
指定应应用于解码量化器索引增量值的左移。 |
AV1 量化 标志
|
0x00000001 |
如果设置,指示 U 和 V 增量量化器值是单独编码的。 如果未设置,指示 U 和 V 增量量化器值共享一个公共值。 |
|
0x00000002 |
如果设置,指定量化器矩阵将用于计算量化器。 |
|
0x00000004 |
指定是否存在量化器索引增量值。 |
-
type v4l2_av1_tile_info¶
AV1 切片信息,如 ref:av1 的 6.8.14 节“切片信息语义”中所定义。
__u8 |
|
有关更多详细信息,请参见 AV1 切片信息标志。 |
__u8 |
|
指定用于 CDF 更新的切片。 |
__u8 |
|
指定跨帧的切片数。 |
__u8 |
|
指定沿帧向下的切片数。 |
__u32 |
|
一个数组,指定图像中每个切片的起始列(以 4x4 亮度样本为单位)。 |
__u32 |
|
一个数组,指定图像中每个切片的起始行(以 4x4 亮度样本为单位)。 |
__u32 |
|
指定以超块为单位的切片宽度减 1。 |
__u32 |
|
指定以超块为单位的切片高度减 1。 |
__u8 |
|
指定编码每个切片大小所需的字节数。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
AV1 切片 信息 标志
|
0x00000001 |
如果设置,表示切片在帧中均匀分布。 (换句话说,所有切片的大小都相同,除了右边缘和底边缘的切片可能较小)。 如果未设置,表示将编码切片大小。 |
-
type v4l2_av1_frame_type¶
AV1 帧类型
|
0 |
关键帧。 |
|
1 |
帧间帧。 |
|
2 |
仅帧内帧。 |
|
3 |
切换帧。 |
-
type v4l2_av1_interpolation_filter¶
AV1 插值滤波器
|
0 |
八抽头滤波器。 |
|
1 |
八抽头平滑滤波器。 |
|
2 |
八抽头锐化滤波器。 |
|
3 |
双线性滤波器。 |
|
4 |
滤波器选择在块级别进行信号通知。 |
-
type v4l2_av1_tx_mode¶
AV1 Tx 模式,如 AV1 的 6.8.21 节“TX 模式语义”中所述。
|
0 |
逆变换将仅使用 4x4 变换。 |
|
1 |
逆变换将使用适合块内部的最大变换大小。 |
|
2 |
变换大小的选择是为每个块显式指定的。 |
V4L2_CID_STATELESS_AV1_FRAME (struct)
表示帧头 OBU。 有关更多详细信息,请参见 AV1 的 6.8 节“帧头 OBU 语义”。
-
type v4l2_ctrl_av1_frame¶
struct |
|
切片信息 |
struct |
|
量化参数。 |
__u8 |
|
上采样率的分母。 |
struct |
|
分割参数。 |
struct |
|
环路滤波器参数 |
struct |
|
CDEF 参数 |
__u8 |
|
当 skip_mode 等于 1 时,指定用于复合预测的帧。 |
__u8 |
|
指定哪个参考帧包含应在帧开始时加载的 CDF 值和其他状态。 |
struct |
|
环路恢复参数。 |
struct |
|
全局运动参数。 |
__u32 |
|
有关更多详细信息,请参见 AV1 帧标志。 |
enum |
|
指定 AV1 帧类型 |
__u32 |
|
指定此帧的预期输出顺序的 OrderHintBits 最低有效位。 |
__u32 |
|
上采样的宽度。 |
|
指定用于执行帧间预测的滤波器选择。 |
|
enum |
|
指定如何确定变换大小。 |
__u32 |
|
加 1 以获得帧的宽度。 |
__u32 |
|
加 1 以获得帧的高度。 |
__u16 |
|
加 1 以获得以亮度样本为单位的帧的渲染宽度。 |
__u16 |
|
加 1 以获得以亮度样本为单位的帧的渲染高度。 |
__u32 |
|
指定当前帧的帧 ID 号。 帧 ID 号是附加信息,不会影响解码过程,但为解码器提供了一种检测丢失的参考帧的方法,以便可以采取适当的措施。 |
__u8 |
|
指定从操作点 opNum 的最后一个随机访问点的删除时间开始计数的 DecCT 时钟周期为单位的帧删除时间。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
__u32 |
|
指定每个参考帧的预期输出顺序提示。 此字段对应于规范中的 OrderHints 变量(5.9.2 节“未压缩的标头语法”)。 因此,这仅用于非帧内帧,否则将被忽略。 order_hints[0] 始终被忽略。 |
__u64 |
|
枚举 |
__s8 |
|
表示帧间帧使用的参考的有序列表的 |
__u8 |
|
包含一个位掩码,指定在解码当前帧后将使用当前帧更新哪些参考帧槽。 |
AV1 帧 标志
|
0x00000001 |
如果设置,指定一旦解码应立即输出此帧。 如果未设置,指定不应立即输出此帧;如果稍后的未压缩标头使用的 show_existing_frame 等于 1,则可能会稍后输出此帧。 |
|
0x00000002 |
如果设置,指定可以使用 show_existing_frame 机制输出帧。 如果未设置,指定将不使用 show_existing_frame 机制输出此帧。 |
|
0x00000004 |
指定是否启用错误恢复模式。 |
|
0x00000008 |
指定是否应禁用符号解码过程中的 CDF 更新。 |
|
0x00000010 |
如果设置,指示帧内块可以使用调色板编码。 如果未设置,指示从不使用调色板编码。 |
|
0x00000020 |
如果设置,指定运动矢量始终为整数。 如果未设置,指定运动矢量可以包含小数位。 |
|
0x00000040 |
如果设置,指示可以在此帧中使用帧内块复制。 如果未设置,指示在此帧中不允许帧内块复制。 |
|
0x00000080 |
如果设置,指示需要上采样。 |
|
0x00000100 |
如果设置,指定运动矢量指定为八分之一像素精度。 如果未设置,指定运动矢量指定为四分之一像素精度; |
|
0x00000200 |
如果未设置,指定仅使用 SIMPLE 运动模式。 |
|
0x00000400 |
如果设置,指定在解码当前帧时可以使用来自先前帧的运动矢量信息。 如果未设置,指定将不使用此信息。 |
|
0x00000800 |
如果设置,指示已禁用帧结束 CDF 更新。 如果未设置,指示已启用帧结束 CDF 更新 |
|
0x00001000 |
如果设置,指示语法元素 motion_mode 可能存在,如果未设置,指示语法元素 motion_mode 将不存在。 |
|
0x00002000 |
如果设置,指定帧间块的模式信息包含语法元素 comp_mode,该元素指示是使用单参考预测还是复合参考预测。 如果未设置,指定所有帧间块将使用单预测。 |
|
0x00004000 |
如果设置,指定该帧仅限于变换类型的缩减子集。 |
|
0x00008000 |
此标志保留与 AV1 中的 SkipModeAllowed 相同的含义。 |
|
0x00010000 |
如果设置,指定语法元素 skip_mode 将存在,如果未设置,指定此帧将不使用 skip_mode。 |
|
0x00020000 |
如果设置,指定帧大小将指定为参考帧之一的大小,或者从 frame_width_minus_1 和 frame_height_minus_1 语法元素计算得出。 如果未设置,指定帧大小等于序列标头中的大小。 |
|
0x00040000 |
如果设置,指定 buffer_removal_time 存在。 如果未设置,指定 buffer_removal_time 不存在。 |
|
0x00080000 |
如果设置,指示仅显式地发出两个参考帧的信号。 如果未设置,指示显式地发出所有参考帧的信号。 |
V4L2_CID_STATELESS_AV1_FILM_GRAIN (struct)
表示可选的胶片颗粒参数。 有关更多详细信息,请参见 AV1 的 6.8.20 节“胶片颗粒参数语义”。
-
type v4l2_ctrl_av1_film_grain¶
__u8 |
|
参见 AV1 胶片颗粒标志。 |
__u8 |
|
表示 cr 分量的乘数,用于推导 cr 分量缩放函数的输入索引。 |
__u16 |
|
指定在胶片颗粒合成期间使用的伪随机数的起始值。 |
__u8 |
|
指示哪个参考帧包含用于此帧的胶片颗粒参数。 |
__u8 |
|
指定亮度分段线性缩放函数的点数。 |
__u8 |
|
表示亮度分量的分段线性缩放函数的第 i 个点的 x(亮度值)坐标。 这些值以 0..255 的比例发出信号。 对于 10 位视频,这些值对应于亮度值除以 4。 对于 12 位视频,这些值对应于亮度值除以 16。 |
__u8 |
|
表示亮度分量的分段线性缩放函数的第 i 个点的缩放(输出)值。 |
__u8 |
|
指定 cb 分量的分段线性缩放函数的点数。 |
__u8 |
|
表示 cb 分量的分段线性缩放函数的第 i 个点的 x 坐标。 这些值以 0..255 的比例发出信号。 |
__u8 |
|
表示 cb 分量的分段线性缩放函数的第 i 个点的缩放(输出)值。 |
__u8 |
|
表示 cr 分量的分段线性缩放函数的点数。 |
__u8 |
|
表示 cr 分量的分段线性缩放函数的第 i 个点的 x 坐标。 这些值以 0..255 的比例发出信号。 |
__u8 |
|
表示 cr 分量的分段线性缩放函数的第 i 个点的缩放(输出)值。 |
__u8 |
|
表示应用于色度分量值的 shift - 8。 grain_scaling_minus_8 可以取 0..3 的值,并确定胶片颗粒标准偏差的范围和量化步长。 |
__u8 |
|
指定亮度和色度的自回归系数数。 |
__u8 |
|
指定用于 Y 平面的自回归系数。 |
__u8 |
|
指定用于 U 平面的自回归系数。 |
__u8 |
|
指定用于 V 平面的自回归系数。 |
__u8 |
|
指定自回归系数的范围。 值 0、1、2 和 3 分别对应于 [-2, 2)、[-1, 1)、[-0.5, 0.5) 和 [-0.25, 0.25) 的自回归系数范围。 |
__u8 |
|
指定在高斯随机数应在颗粒合成过程中缩减多少。 |
__u8 |
|
表示 cb 分量的乘数,用于推导 cb 分量缩放函数的输入索引。 |
__u8 |
|
表示平均亮度分量的乘数,用于推导 cb 分量缩放函数的输入索引。 |
__u8 |
|
表示平均亮度分量的乘数,用于推导 cr 分量缩放函数的输入索引。 |
__u16 |
|
表示用于推导 cb 分量缩放函数的输入索引的偏移量。 |
__u16 |
|
表示用于推导 cr 分量缩放函数的输入索引的偏移量。 |
__u8 |
|
应用程序和驱动程序必须将此设置为零。 |
AV1 胶片 颗粒 标志
|
0x00000001 |
如果设置,指定应将胶片颗粒添加到此帧。 如果未设置,指定不应添加胶片颗粒。 |
|
0x00000002 |
如果设置,表示应发送一组新参数。 如果未设置,指定应使用上一组参数。 |
|
0x00000004 |
如果设置,则指定色度缩放是从亮度缩放推断出来的。 |
|
0x00000008 |
如果设置,则表示应应用胶片颗粒块之间的重叠。 如果未设置,则表示不应应用胶片颗粒块之间的重叠。 |
|
0x00000010 |
如果设置,则表示在添加胶片颗粒后,应对采样值应用限制范围(工作室范围,即有限范围)的剪切(有关工作室范围的解释,请参阅 color_range 的语义)。 如果未设置,则表示在添加胶片颗粒后,应对采样值应用全范围的剪切。 |