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 的語義)。 如果未設定,則表示在新增膠片顆粒後,應對取樣值應用全範圍的剪下。 |