1.16. 无状态编解码器控制参考¶
无状态编解码器控制类旨在支持无状态解码器和编码器(即硬件加速器)。
这些驱动程序通常由内存到内存的无状态视频解码器接口支持,并且处理解析后的像素格式,例如 V4L2_PIX_FMT_H264_SLICE。
1.16.1. 无状态编解码器控制 ID¶
V4L2_CID_CODEC_STATELESS_CLASS (类)
无状态编解码器类描述符。
V4L2_CID_STATELESS_H264_SPS (结构体)
指定关联的 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 (结构体)
指定关联的 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 (结构体)
指定关联的 H264 片数据的缩放矩阵(从比特流中提取)。比特流参数根据ITU-T Rec. H.264 规范(2017 年 4 月版)第 7.4.2.1.1.1 节“缩放列表语义”定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
type v4l2_ctrl_h264_scaling_matrix¶
__u8 |
|
应用逆扫描过程后的缩放矩阵。预期的列表顺序是帧内 Y、帧内 Cb、帧内 Cr、帧间 Y、帧间 Cb、帧间 Cr。每个缩放列表中的值都按光栅扫描顺序排列。 |
__u8 |
|
应用逆扫描过程后的缩放矩阵。预期的列表顺序是帧内 Y、帧间 Y、帧内 Cb、帧间 Cb、帧内 Cr、帧间 Cr。每个缩放列表中的值都按光栅扫描顺序排列。 |
V4L2_CID_STATELESS_H264_SLICE_PARAMS (结构体)
指定关联的 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 |
|
应用程序和驱动程序必须将其设置为零。 |
|
应用每个片的修改后的参考图像列表 |
|
|
应用每个片的修改后的参考图像列表 |
|
__u32 |
|
请参阅片参数标志 |
片 参数 集 标志
|
0x00000001 |
|
|
0x00000002 |
V4L2_CID_STATELESS_H264_PRED_WEIGHTS (结构体)
根据ITU-T Rec. H.264 规范(2017 年 4 月版)第 7.4.3.2 节“预测权重表语义”定义的预测权重表。预测权重表必须由应用程序在第 7.3.3 节“片头语法”中解释的条件下传递。
-
type v4l2_ctrl_h264_pred_weights¶
__u16 |
|
|
__u16 |
|
|
|
索引 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 (结构体)
指定关联的 H264 片数据的解码参数(从码流中提取)。这包括配置 H264 的无状态硬件解码管道所需的必要参数。码流参数根据 ITU-T Rec. H.264 规范(2017年4月版) 定义。有关更多文档,请参阅上述规范,除非有明确的注释另行说明。
-
类型 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 |
-
类型 v4l2_h264_dpb_entry¶
__u64 |
|
用作参考的 V4L2 捕获缓冲区的的时间戳,与 B 编码和 P 编码帧一起使用。时间戳引用结构 |
__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 (枚举)
指定要使用的解码模式。当前公开了基于片和基于帧的解码,但稍后可能会添加新模式。此控件用作 V4L2_PIX_FMT_H264_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_H264_SLICE 的应用程序需要设置此控件,以便指定缓冲区预期的解码模式。驱动程序可能会公开一个或多个解码模式,具体取决于它们可以支持的内容。
-
类型 v4l2_stateless_h264_decode_mode¶
|
0 |
解码以片为粒度完成。OUTPUT 缓冲区必须包含单个片。选择此模式时,应设置 |
|
1 |
解码以帧为粒度完成。OUTPUT 缓冲区必须包含解码帧所需的所有片。OUTPUT 缓冲区还必须包含两个场。此模式将由硬件解析片头的设备支持。选择此模式时,不得设置 |
V4L2_CID_STATELESS_H264_START_CODE (枚举)
指定每个片预期的 H264 片起始码。此控件用作 V4L2_PIX_FMT_H264_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_H264_SLICE 的应用程序需要设置此控件,以便指定缓冲区预期的起始码。驱动程序可能会公开一个或多个起始码,具体取决于它们可以支持的内容。
-
类型 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 (结构体)
指定关联的 FWHT 数据的 FWHT(快速沃尔什-哈达玛变换)参数(从码流中提取)。这包括配置 FWHT 的无状态硬件解码管道所需的必要参数。此编解码器特定于 vicodec 测试驱动程序。
-
类型 v4l2_ctrl_fwht_params¶
__u64 |
|
用作后向参考的 V4L2 捕获缓冲区的时间戳,与 P 编码帧一起使用。时间戳引用结构 |
__u32 |
|
编解码器的版本。设置为 |
__u32 |
|
帧的宽度。 |
__u32 |
|
帧的高度。 |
__u32 |
|
帧的标志,参见 FWHT 标志。 |
__u32 |
|
帧的色彩空间,来自枚举 |
__u32 |
|
传递函数,来自枚举 |
__u32 |
|
Y'CbCr 编码,来自枚举 |
__u32 |
|
量化范围,来自枚举 |
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 (结构体)
指定相关联的 VP8 解析帧数据的帧参数。这包括为 VP8 配置无状态硬件解码管道所需的必要参数。比特流参数根据 VP8 定义。
-
类型 v4l2_ctrl_vp8_frame¶
struct |
|
具有基于段的调整元数据的结构体。 |
struct |
|
具有环路滤波器级别调整元数据的结构体。 |
struct |
|
具有 VP8 反量化索引元数据的结构体。 |
struct |
|
具有 VP8 熵编码器概率元数据的结构体。 |
struct |
|
具有 VP8 熵编码器状态的结构体。 |
__u16 |
|
帧的宽度。必须为所有帧设置。 |
__u16 |
|
帧的高度。必须为所有帧设置。 |
__u8 |
|
水平缩放因子。 |
__u8 |
|
垂直缩放因子。 |
__u8 |
|
比特流版本。 |
__u8 |
|
指示宏块未被跳过的概率。 |
__u8 |
|
指示宏块是帧内预测的概率。 |
__u8 |
|
指示用于帧间预测的最后一个参考帧的概率。 |
__u8 |
|
指示用于帧间预测的黄金参考帧的概率。 |
__u8 |
|
DCT 系数分区的数量。必须是以下之一:1、2、4 或 8。 |
__u32 |
|
第一个分区的大小,即控制分区。 |
__u32 |
|
第一个分区头部部分的大小(以位为单位)。 |
__u32 |
|
DCT 系数的大小。 |
__u64 |
|
用作最后一个参考帧的 V4L2 捕获缓冲区的时戳,与帧间编码帧一起使用。时戳是指结构体 |
__u64 |
|
用作最后一个参考帧的 V4L2 捕获缓冲区的时戳,与帧间编码帧一起使用。时戳是指结构体 |
__u64 |
|
用作备用参考帧的 V4L2 捕获缓冲区的时戳,与帧间编码帧一起使用。时戳是指结构体 |
__u64 |
|
请参阅 帧标志 |
帧 标志
|
0x01 |
指示帧是否为关键帧。 |
|
0x02 |
实验性比特流。 |
|
0x04 |
显示帧标志,指示该帧是否用于显示。 |
|
0x08 |
启用/禁用跳过无非零系数的宏块。 |
|
0x10 |
引用黄金帧时运动矢量的符号。 |
|
0x20 |
引用备用帧时运动矢量的符号。 |
-
类型 v4l2_vp8_entropy_coder_state¶
__u8 |
|
“Range”的编码器状态值 |
__u8 |
|
“Value”的编码器状态值 |
__u8 |
|
剩余的位数。 |
__u8 |
|
应用程序和驱动程序必须将其设置为零。 |
-
类型 v4l2_vp8_segment¶
__s8 |
|
有符号量化器值更新。 |
__s8 |
|
有符号环路滤波器级别值更新。 |
__u8 |
|
段概率。 |
__u8 |
|
应用程序和驱动程序必须将其设置为零。 |
__u32 |
|
请参阅 段标志 |
段 标志
|
0x01 |
启用/禁用基于段的调整。 |
|
0x02 |
指示此帧中是否更新了宏块分割映射。 |
|
0x04 |
指示此帧中是否更新了段特征数据。 |
|
0x08 |
如果设置,则段特征数据模式为增量值。如果清除,则为绝对值。 |
-
类型 v4l2_vp8_loop_filter¶
__s8 |
|
参考调整(有符号)增量值。 |
__s8 |
|
宏块预测模式调整(有符号)增量值。 |
__u8 |
|
锐度级别 |
__u8 |
|
滤波器级别 |
__u16 |
|
应用程序和驱动程序必须将其设置为零。 |
__u32 |
|
请参阅 环路滤波器标志 |
环路 滤波器 标志
|
0x01 |
启用/禁用宏块级别环路滤波器调整。 |
|
0x02 |
指示是否更新了调整中使用的增量值。 |
|
0x04 |
如果设置,则指示滤波器类型是简单的。如果清除,则滤波器类型是正常的。 |
-
类型 v4l2_vp8_quantization¶
__u8 |
|
亮度 AC 系数表索引。 |
__s8 |
|
亮度 DC 增量值。 |
__s8 |
|
Y2 块 DC 增量值。 |
__s8 |
|
Y2 块 AC 增量值。 |
__s8 |
|
色度 DC 增量值。 |
__s8 |
|
色度 AC 增量值。 |
__u16 |
|
应用程序和驱动程序必须将其设置为零。 |
-
类型 v4l2_vp8_entropy¶
__u8 |
|
系数更新概率。 |
__u8 |
|
亮度模式更新概率。 |
__u8 |
|
色度模式更新概率。 |
__u8 |
|
MV 解码更新概率。 |
__u8 |
|
应用程序和驱动程序必须将其设置为零。 |
V4L2_CID_STATELESS_MPEG2_SEQUENCE (结构体)
指定相关联的 MPEG-2 切片数据的序列参数(从比特流中提取)。这包括与 ISO 13818-2 规范的比特流的序列头和序列扩展部分中的语法元素匹配的字段。
-
类型 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 序列 标志
|
0x01 |
指示序列的所有帧都是逐行的而不是隔行的。 |
V4L2_CID_STATELESS_MPEG2_PICTURE (结构体)
指定相关联的 MPEG-2 切片数据的图片参数(从比特流中提取)。这包括与 ISO 13818-2 规范的比特流的图片头和图片编码扩展部分中的语法元素匹配的字段。
-
类型 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 节“量化矩阵扩展”指定。
-
类型 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)。
-
类型 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 定义。
-
类型 v4l2_ctrl_vp9_frame¶
struct |
|
环路滤波器参数。有关更多详细信息,请参阅结构体 |
struct |
|
量化参数。有关更多详细信息,请参阅 |
struct |
|
分段参数。有关更多详细信息,请参阅 |
__u32 |
|
V4L2_VP9_FRAME_FLAG_* 标志的组合。请参阅 帧标志。 |
__u16 |
|
压缩标头大小(以字节为单位)。 |
__u16 |
|
未压缩标头大小(以字节为单位)。 |
__u16 |
|
加 1 以获取以像素表示的帧宽度。请参阅 VP9 中的 7.2.3 节。 |
__u16 |
|
加 1 以获取以像素表示的帧高度。请参阅 VP9 中的 7.2.3 节。 |
__u16 |
|
加 1 以获取以像素表示的预期渲染宽度。这在解码过程中不使用,但硬件缩放器可能会使用它来准备好用于扫描输出的帧。请参阅 VP9 中的 7.2.4 节。 |
__u16 |
render_height_minus_1 |
加 1 以获取以像素表示的预期渲染高度。这在解码过程中不使用,但硬件缩放器可能会使用它来准备好用于扫描输出的帧。请参阅 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 |
|
应用程序和驱动程序必须将其设置为零。 |
帧 标志
|
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 帧参考模式语义”章节。
-
类型 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 |
段功能的数量。 |
分段 标志
|
0x01 |
指示此帧使用分段工具。 |
|
0x02 |
指示应在此帧解码期间更新分段图。 |
|
0x04 |
指示对分段图的更新是相对于现有分段图进行编码的。 |
|
0x08 |
指示即将为每个段指定新参数。 |
|
0x10 |
指示分段参数表示要使用的实际值。 |
-
类型 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 |
|
应用程序和驱动程序必须将其设置为零。 |
-
类型 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 语义”中进行了描述。
-
类型 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 (结构体)
指定关联 HEVC 切片数据的图片参数集字段(从比特流中提取)。这些比特流参数根据 ITU H.265/HEVC 定义。它们在规范的 7.4.3.3 节“图片参数集 RBSP 语义”中进行了描述。
-
类型 v4l2_ctrl_hevc_pps¶
__u8 |
|
为其他语法元素引用 PPS 提供标识符。 |
__u8 |
|
指定在引用 PPS 的编码图像的切片头 RBSP 中存在的额外切片头位数。 |
__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 |
|
指定默认的去块效应滤波参数 beta 的偏移量除以 2 的值。 |
__s8 |
|
指定默认的去块效应滤波参数 tC 的偏移量除以 2 的值。 |
__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 节中导出的量化参数 qP 的 cb 偏移量 |
__s8 |
|
指定第 8.6.2 节中导出的量化参数 qP 的 cr 偏移量 |
__s8 |
|
指定 beta 的去块效应滤波参数偏移量除以 2 的值。 |
__s8 |
|
指定 tC 的去块效应滤波参数偏移量除以 2 的值。 |
__u8 |
|
指示图像应显示为帧还是一个或多个场。 |
__u32 |
|
指定切片分段中第一个编码树块的地址。 |
__u8 |
|
L0 参考元素的列表,作为 DPB 中的索引。 |
__u8 |
|
L1 参考元素的列表,作为 DPB 中的索引。 |
__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 编码帧一起使用。时间戳引用结构 |
__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 (枚举)
指定要使用的解码模式。当前公开了基于切片和基于帧的解码,但以后可能会添加新的模式。此控件用作 V4L2_PIX_FMT_HEVC_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_HEVC_SLICE 的应用程序必须设置此控件,以指定缓冲区预期的解码模式。驱动程序可以公开单个或多个解码模式,具体取决于它们可以支持的内容。
-
类型 v4l2_stateless_hevc_decode_mode¶
|
0 |
解码以切片粒度完成。OUTPUT 缓冲区必须包含单个切片。 |
|
1 |
解码以帧粒度完成。OUTPUT 缓冲区必须包含解码帧所需的所有切片。 |
V4L2_CID_STATELESS_HEVC_START_CODE (枚举)
指定每个切片预期的 HEVC 切片起始码。此控件用作 V4L2_PIX_FMT_HEVC_SLICE 像素格式的修饰符。支持 V4L2_PIX_FMT_HEVC_SLICE 的应用程序必须设置此控件,以指定缓冲区预期的起始码。驱动程序可以公开单个或多个起始码,具体取决于它们可以支持的内容。
-
类型 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 (整数)
指定 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 (整数)
指定编码器在任何给定时间可以保留的最大长期参考 (LTR) 帧数。这适用于 H264 和 HEVC 编码器。
V4L2_CID_MPEG_VIDEO_FRAME_LTR_INDEX (整数)
设置此控件后,下一个排队的帧将被标记为长期参考 (LTR) 帧,并赋予此 LTR 索引,其范围为 0 到 LTR_COUNT-1。这适用于 H264 和 HEVC 编码器。源 Rec. ITU-T H.264 (06/2019);表 7.9
V4L2_CID_MPEG_VIDEO_USE_LTR_FRAMES (位掩码)
指定在设置此控件后排队的下一个帧进行编码时要使用的长期参考 (LTR) 帧。这提供了一个位掩码,其中包含位 [0, LTR_COUNT-1]。这适用于 H264 和 HEVC 编码器。
V4L2_CID_STATELESS_HEVC_DECODE_PARAMS (结构体)
指定各种解码参数,特别是所有列表(短、长、之前、当前、之后)的参考图片顺序计数 (POC) 以及每个列表的条目数。这些参数根据ITU H.265/HEVC定义。它们在规范的第 8.3 节“切片解码过程”中进行了描述。
-
类型 v4l2_ctrl_hevc_decode_params¶
__s32 |
|
PicOrderCntVal,如规范第 8.3.1 节“图片顺序计数的解码过程”中所述。 |
__u16 |
|
指定在切片头或 SPS(第 7.3.6.1 节)中描述为 st_ref_pic_set() 的第一个切片的短期参考图片集的大小(以位为单位)。 |
__u16 |
|
指定切片头或 SPS 中包含的第一个切片的长期参考图片集的大小(以位为单位)。它是规范的第 7.3.6.1 节中条件块 if(long_term_ref_pics_present_flag) 中的位数。 |
__u8 |
|
|
__u8 |
|
短期集合中位于当前帧之前的参考图片的数量。 |
__u8 |
|
短期集合中位于当前帧之后的参考图片的数量。 |
__u8 |
|
长期集合中参考图片的数量。 |
__u8 |
|
PocStCurrBefore,如第 8.3.2 节“参考图片集解码过程”中所述:提供 DPB 数组中短期之前的参考的索引。 |
__u8 |
|
PocStCurrAfter,如第 8.3.2 节“参考图片集解码过程”中所述:提供 DPB 数组中短期之后的参考的索引。 |
__u8 |
|
PocLtCurr,如第 8.3.2 节“参考图片集解码过程”中所述:提供 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 (结构体)
表示 AV1 序列 OBU(开放比特流单元)。有关更多详细信息,请参阅AV1中的第 5.5 节“序列头 OBU 语法”。
-
类型 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 平面可以具有单独的 delta 量化器值。如果未设置,则指示 U 和 V 平面将共享相同的 delta 量化器值。 |
V4L2_CID_STATELESS_AV1_TILE_GROUP_ENTRY (结构体)
表示 AV1 Tile Group 内的单个 AV1 瓦片。请注意,MiRowStart、MiRowEnd、MiColStart 和 MiColEnd 可以通过使用 tile_row 和 tile_col 从
struct v4l2_av1_tile_info
在struct v4l2_ctrl_av1_frame
中检索。更多详细信息,请参阅 AV1 中第 6.10.1 节“通用瓦片组 OBU 语义”。
-
类型 v4l2_ctrl_av1_tile_group_entry¶
__u32 |
|
距 OBU 数据的偏移量,即编码后的瓦片数据实际开始的位置。 |
__u32 |
|
指定编码后的瓦片的字节大小。等同于 AV1 中的 “TileSize”。 |
__u32 |
|
指定当前瓦片的行。等同于 AV1 中的 “TileRow”。 |
__u32 |
|
指定当前瓦片的列。等同于 AV1 中的 “TileColumn”。 |
|
0 |
扭曲模型只是一个恒等变换。 |
|
1 |
扭曲模型是一个纯平移。 |
|
2 |
扭曲模型是旋转 + 对称缩放 + 平移。 |
|
3 |
扭曲模型是一般的仿射变换。 |
-
类型 v4l2_av1_reference_frame¶
AV1 参考帧,如 AV1 中第 6.10.24 节“参考帧语义”中所述。
|
0 |
帧内参考。 |
|
1 |
最后一个帧参考。 |
|
2 |
倒数第二个帧参考。 |
|
3 |
倒数第三个帧参考。 |
|
4 |
黄金帧参考。 |
|
5 |
BWD 帧参考。 |
|
6 |
ALTREF2 帧参考。 |
|
7 |
ALTREF 帧参考。 |
-
类型 v4l2_av1_global_motion¶
AV1 全局运动参数,如 AV1 中第 6.8.17 节“全局运动参数语义”中所述。
__u8 |
|
一个包含每个参考帧标志的位域。有关详细信息,请参阅 AV1 全局运动标志。 |
|
使用的全局运动变换的类型。 |
|
__s32 |
|
此字段的含义与 AV1 中的“gm_params”相同。 |
__u8 |
|
位域,指示给定参考帧的全局运动参数是否无效。请参阅第 7.11.3.6 节“设置剪切过程”和变量“warpValid”。使用 V4L2_AV1_GLOBAL_MOTION_IS_INVALID(ref) 创建合适的掩码。 |
__u8 |
|
应用程序和驱动程序必须将其设置为零。 |
AV1 全局 运动 标志
|
0x00000001 |
指定特定参考帧是否存在全局运动参数。 |
|
0x00000002 |
指定特定参考帧是否使用旋转和缩放全局运动。 |
|
0x00000004 |
指定特定参考帧是否使用平移全局运动 |
-
类型 v4l2_av1_frame_restoration_type¶
AV1 帧恢复类型。
|
0 |
不应用任何滤波。 |
|
1 |
调用维纳滤波器处理。 |
|
2 |
调用自引导滤波器处理。 |
|
3 |
恢复滤波器是可切换的。 |
-
类型 v4l2_av1_loop_restoration¶
AV1 环路恢复,如 AV1 中第 6.10.15 节“环路恢复参数语义”中所述。
__u8 |
|
请参阅 AV1 环路恢复标志。 |
__u8 |
|
指定是否应将亮度恢复大小减半。 |
__u8 |
|
指定色度大小是否应为亮度大小的一半。 |
__u8 |
|
应用程序和驱动程序必须将其设置为零。 |
|
指定每个平面使用的恢复类型。 |
|
__u8 |
|
以当前平面中的样本为单位指定环路恢复单元的大小。 |
AV1 环路 恢复 标志
|
0x00000001 |
保留与 AV1 中 UsesLr 相同的含义。 |
|
0x00000002 |
保留与 AV1 中 UsesChromaLr 相同的含义。 |
-
类型 v4l2_av1_cdef¶
AV1 CDEF 参数语义,如 AV1 中第 6.10.14 节“CDEF 参数语义”中所述。
__u8 |
|
控制去块滤波中的阻尼量。 |
__u8 |
|
指定需要多少位来指定要应用的 CDEF 滤波器。 |
__u8 |
|
指定主滤波器的强度。 |
__u8 |
|
指定辅助滤波器的强度。 |
__u8 |
|
指定主滤波器的强度。 |
__u8 |
|
指定辅助滤波器的强度。 |
-
类型 v4l2_av1_segment_feature¶
AV1 分段特征,如 AV1 中第 3 节“符号和缩写术语”中所述。
|
0 |
量化器分段特征的索引。 |
|
1 |
垂直亮度环路滤波器分段特征的索引。 |
|
5 |
参考帧分段特征的索引。 |
|
6 |
跳跃分段特征的索引。 |
|
7 |
全局 mv 特征的索引。 |
|
8 |
段功能的数量。 |
-
类型 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。如果未设置,则表示将首先读取跳过语法元素。 |
-
类型 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 边缘发送单独的环路滤波器增量。delta_lf_multi 的值为 0 表示所有边缘使用相同的环路滤波器增量。 |
-
类型 v4l2_av1_量化¶
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 |
指定是否存在量化器索引增量值。 |
-
类型 v4l2_av1_瓦片信息¶
AV1 瓦片信息,定义在 ref:av1 的 6.8.14 节“瓦片信息语义”中。
__u8 |
|
更多细节请参阅 AV1 瓦片信息标志。 |
__u8 |
|
指定用于 CDF 更新的瓦片。 |
__u8 |
|
指定帧中的瓦片数量。 |
__u8 |
|
指定帧中的瓦片向下数量。 |
__u32 |
|
一个数组,指定图像中每个瓦片的起始列(以 4x4 亮度样本为单位)。 |
__u32 |
|
一个数组,指定图像中每个瓦片的起始行(以 4x4 亮度样本为单位)。 |
__u32 |
|
指定瓦片的宽度减 1,以超块为单位。 |
__u32 |
|
指定瓦片的高度减 1,以超块为单位。 |
__u8 |
|
指定编码每个瓦片大小所需的字节数。 |
__u8 |
|
应用程序和驱动程序必须将其设置为零。 |
AV1 瓦片 信息 标志
|
0x00000001 |
如果设置,表示瓦片在帧中均匀间隔。(换句话说,除了右边缘和底边缘的瓦片可能较小之外,所有瓦片的大小都相同)。如果未设置,则表示瓦片大小是编码的。 |
-
类型 v4l2_av1_帧类型¶
AV1 帧类型
|
0 |
关键帧。 |
|
1 |
帧间帧。 |
|
2 |
仅帧内帧。 |
|
3 |
切换帧。 |
-
类型 v4l2_av1_插值滤波器¶
AV1 插值滤波器
|
0 |
八抽头滤波器。 |
|
1 |
八抽头平滑滤波器。 |
|
2 |
八抽头锐化滤波器。 |
|
3 |
双线性滤波器。 |
|
4 |
滤波器选择在块级别进行信号通知。 |
-
类型 v4l2_av1_tx_模式¶
AV1 Tx 模式,在 AV1 的 6.8.21 节“TX 模式语义”中描述。
|
0 |
逆变换将仅使用 4x4 变换。 |
|
1 |
逆变换将使用适合块内的最大变换尺寸。 |
|
2 |
每个块显式指定变换尺寸的选择。 |
V4L2_CID_STATELESS_AV1_FRAME (结构体)
表示帧头 OBU。更多细节请参阅 AV1 的 6.8 节“帧头 OBU 语义”。
-
类型 v4l2_ctrl_av1_frame¶
|
瓦片信息 |
|
结构体 |
|
量化参数。 |
__u8 |
|
上采样比率的分母。 |
结构体 |
|
分割参数。 |
结构体 |
|
环路滤波器参数 |
结构体 |
|
CDEF 参数 |
__u8 |
|
指定当 skip_mode 等于 1 时用于复合预测的帧。 |
__u8 |
|
指定哪个参考帧包含 CDF 值和其他应在帧开始时加载的状态。 |
结构体 |
|
环路恢复参数。 |
结构体 |
|
全局运动参数。 |
__u32 |
|
更多细节请参阅 AV1 帧标志。 |
枚举 |
|
指定 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 |
如果设置,则指定运动矢量以 1/8 像素精度指定。如果未设置,则指定运动矢量以 1/4 像素精度指定; |
|
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 (结构体)
表示可选的胶片颗粒参数。有关更多详细信息,请参见 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 的语义)。 如果未设置,则表示在添加胶片颗粒后,应将样本值裁剪到完整范围。 |