1.15. 編解碼器控制參考

下面描述了編解碼器控制類別中的所有控制。首先是通用控制,然後是特定於某些硬體的控制。

注意

這些控制適用於所有編解碼器,而不僅僅是 MPEG。定義字首為 V4L2_CID_MPEG/V4L2_MPEG,因為這些控制最初是為 MPEG 編解碼器設計的,後來擴充套件到涵蓋所有編碼格式。

1.15.1. 通用編解碼器控制

1.15.1.1. 編解碼器控制 ID

V4L2_CID_CODEC_CLASS (class)

編解碼器類別描述符。對該控制呼叫 ioctls VIDIOC_QUERYCTRL, VIDIOC_QUERY_EXT_CTRL 和 VIDIOC_QUERYMENU 將返回此控制類別的描述。例如,此描述可用作 GUI 中選項卡頁面的標題。

V4L2_CID_MPEG_STREAM_TYPE

(enum)

enum v4l2_mpeg_stream_type -

MPEG-1、-2 或 -4 輸出流型別。不能對此有任何假設。每個硬體 MPEG 編碼器傾向於支援可用 MPEG 流型別的不同子集。此控制特定於複用 MPEG 流。當前定義的流型別有:

V4L2_MPEG_STREAM_TYPE_MPEG2_PS

MPEG-2 程式流

V4L2_MPEG_STREAM_TYPE_MPEG2_TS

MPEG-2 傳輸流

V4L2_MPEG_STREAM_TYPE_MPEG1_SS

MPEG-1 系統流

V4L2_MPEG_STREAM_TYPE_MPEG2_DVD

MPEG-2 DVD 相容流

V4L2_MPEG_STREAM_TYPE_MPEG1_VCD

MPEG-1 VCD 相容流

V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD

MPEG-2 SVCD 相容流

V4L2_CID_MPEG_STREAM_PID_PMT (integer)

MPEG 傳輸流的節目對映表包 ID(預設 16)

V4L2_CID_MPEG_STREAM_PID_AUDIO (integer)

MPEG 傳輸流的音訊包 ID(預設 256)

V4L2_CID_MPEG_STREAM_PID_VIDEO (integer)

MPEG 傳輸流的影片包 ID(預設 260)

V4L2_CID_MPEG_STREAM_PID_PCR (integer)

承載 PCR 欄位的 MPEG 傳輸流的包 ID(預設 259)

V4L2_CID_MPEG_STREAM_PES_ID_AUDIO (integer)

MPEG PES 的音訊 ID

V4L2_CID_MPEG_STREAM_PES_ID_VIDEO (integer)

MPEG PES 的影片 ID

V4L2_CID_MPEG_STREAM_VBI_FMT

(enum)

enum v4l2_mpeg_stream_vbi_fmt -

某些卡可以將 VBI 資料(例如,隱藏字幕、圖文電視)嵌入到 MPEG 流中。此控制選擇是否應嵌入 VBI 資料,以及如果嵌入,應使用哪種嵌入方法。可能的 VBI 格式列表取決於驅動程式。當前定義的 VBI 格式型別有:

V4L2_MPEG_STREAM_VBI_FMT_NONE

MPEG 流中無 VBI

V4L2_MPEG_STREAM_VBI_FMT_IVTV

私有包中的 VBI,IVTV 格式(在核心原始檔 Documentation/userspace-api/media/drivers/cx2341x-uapi.rst 中有文件說明)

V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ

(enum)

enum v4l2_mpeg_audio_sampling_freq -

MPEG 音訊取樣頻率。可能的值有:

V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100

44.1 kHz

V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000

48 kHz

V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000

32 kHz

V4L2_CID_MPEG_AUDIO_ENCODING

(enum)

enum v4l2_mpeg_audio_encoding -

MPEG 音訊編碼。此控制特定於複用 MPEG 流。可能的值有:

V4L2_MPEG_AUDIO_ENCODING_LAYER_1

MPEG-1/2 第一層編碼

V4L2_MPEG_AUDIO_ENCODING_LAYER_2

MPEG-1/2 第二層編碼

V4L2_MPEG_AUDIO_ENCODING_LAYER_3

MPEG-1/2 第三層編碼

V4L2_MPEG_AUDIO_ENCODING_AAC

MPEG-2/4 AAC(高階音訊編碼)

V4L2_MPEG_AUDIO_ENCODING_AC3

AC-3 又名 ATSC A/52 編碼

V4L2_CID_MPEG_AUDIO_L1_BITRATE

(enum)

enum v4l2_mpeg_audio_l1_bitrate -

MPEG-1/2 第一層位元率。可能的值有:

V4L2_MPEG_AUDIO_L1_BITRATE_32K

32 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_64K

64 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_96K

96 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_128K

128 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_160K

160 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_192K

192 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_224K

224 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_256K

256 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_288K

288 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_320K

320 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_352K

352 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_384K

384 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_416K

416 kbit/s

V4L2_MPEG_AUDIO_L1_BITRATE_448K

448 kbit/s

V4L2_CID_MPEG_AUDIO_L2_BITRATE

(enum)

enum v4l2_mpeg_audio_l2_bitrate -

MPEG-1/2 第二層位元率。可能的值有:

V4L2_MPEG_AUDIO_L2_BITRATE_32K

32 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_48K

48 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_56K

56 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_64K

64 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_80K

80 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_96K

96 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_112K

112 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_128K

128 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_160K

160 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_192K

192 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_224K

224 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_256K

256 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_320K

320 kbit/s

V4L2_MPEG_AUDIO_L2_BITRATE_384K

384 kbit/s

V4L2_CID_MPEG_AUDIO_L3_BITRATE

(enum)

enum v4l2_mpeg_audio_l3_bitrate -

MPEG-1/2 第三層位元率。可能的值有:

V4L2_MPEG_AUDIO_L3_BITRATE_32K

32 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_40K

40 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_48K

48 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_56K

56 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_64K

64 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_80K

80 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_96K

96 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_112K

112 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_128K

128 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_160K

160 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_192K

192 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_224K

224 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_256K

256 kbit/s

V4L2_MPEG_AUDIO_L3_BITRATE_320K

320 kbit/s

V4L2_CID_MPEG_AUDIO_AAC_BITRATE (integer)

AAC 位元率,單位為位元/秒。

V4L2_CID_MPEG_AUDIO_AC3_BITRATE

(enum)

enum v4l2_mpeg_audio_ac3_bitrate -

AC-3 位元率。可能的值有:

V4L2_MPEG_AUDIO_AC3_BITRATE_32K

32 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_40K

40 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_48K

48 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_56K

56 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_64K

64 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_80K

80 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_96K

96 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_112K

112 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_128K

128 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_160K

160 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_192K

192 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_224K

224 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_256K

256 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_320K

320 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_384K

384 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_448K

448 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_512K

512 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_576K

576 kbit/s

V4L2_MPEG_AUDIO_AC3_BITRATE_640K

640 kbit/s

V4L2_CID_MPEG_AUDIO_MODE

(enum)

enum v4l2_mpeg_audio_mode -

MPEG 音訊模式。可能的值有:

V4L2_MPEG_AUDIO_MODE_STEREO

立體聲

V4L2_MPEG_AUDIO_MODE_JOINT_STEREO

聯合立體聲

V4L2_MPEG_AUDIO_MODE_DUAL

雙語

V4L2_MPEG_AUDIO_MODE_MONO

單聲道

V4L2_CID_MPEG_AUDIO_MODE_EXTENSION

(enum)

enum v4l2_mpeg_audio_mode_extension -

聯合立體聲音訊模式擴充套件。在第一層和第二層中,它們指示哪些子帶處於強度立體聲模式。所有其他子帶都以立體聲編碼。第三層(尚未)支援。可能的值有:

V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4

子帶 4-31 為強度立體聲

V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8

子帶 8-31 為強度立體聲

V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12

子帶 12-31 為強度立體聲

V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16

子帶 16-31 為強度立體聲

V4L2_CID_MPEG_AUDIO_EMPHASIS

(enum)

enum v4l2_mpeg_audio_emphasis -

音訊強調。可能的值有:

V4L2_MPEG_AUDIO_EMPHASIS_NONE

V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS

50/15 微秒強調

V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17

CCITT J.17

V4L2_CID_MPEG_AUDIO_CRC

(enum)

enum v4l2_mpeg_audio_crc -

CRC 方法。可能的值有:

V4L2_MPEG_AUDIO_CRC_NONE

V4L2_MPEG_AUDIO_CRC_CRC16

16 位奇偶校驗

V4L2_CID_MPEG_AUDIO_MUTE (boolean)

捕獲時使音訊靜音。這不是透過使音訊硬體靜音來完成的,因為音訊硬體仍然會產生輕微的嘶嘶聲,而是透過編碼器本身來完成,從而保證固定且可重現的音訊位元流。0 = 未靜音,1 = 靜音。

V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK

(enum)

enum v4l2_mpeg_audio_dec_playback -

確定單語音訊應如何播放。可能的值有:

V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO

自動確定最佳播放模式。

V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO

立體聲播放。

V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT

左聲道播放。

V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT

右聲道播放。

V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO

單聲道播放。

V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO

左右聲道交換的立體聲播放。

V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK

(enum)

enum v4l2_mpeg_audio_dec_playback -

確定多語音訊應如何播放。

V4L2_CID_MPEG_VIDEO_ENCODING

(enum)

enum v4l2_mpeg_video_encoding -

MPEG 影片編碼方法。此控制特定於複用 MPEG 流。可能的值有:

V4L2_MPEG_VIDEO_ENCODING_MPEG_1

MPEG-1 影片編碼

V4L2_MPEG_VIDEO_ENCODING_MPEG_2

MPEG-2 影片編碼

V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC

MPEG-4 AVC (H.264) 影片編碼

V4L2_CID_MPEG_VIDEO_ASPECT

(enum)

enum v4l2_mpeg_video_aspect -

影片寬高比。可能的值有:

V4L2_MPEG_VIDEO_ASPECT_1x1

V4L2_MPEG_VIDEO_ASPECT_4x3

V4L2_MPEG_VIDEO_ASPECT_16x9

V4L2_MPEG_VIDEO_ASPECT_221x100

V4L2_CID_MPEG_VIDEO_B_FRAMES (integer)

B 幀數量(預設 2)

V4L2_CID_MPEG_VIDEO_GOP_SIZE (integer)

GOP 大小(預設 12)

V4L2_CID_MPEG_VIDEO_GOP_CLOSURE (boolean)

GOP 關閉(預設 1)

V4L2_CID_MPEG_VIDEO_PULLDOWN (boolean)

啟用 3:2 pulldown(預設 0)

V4L2_CID_MPEG_VIDEO_BITRATE_MODE

(enum)

enum v4l2_mpeg_video_bitrate_mode -

影片位元率模式。可能的值有:

V4L2_MPEG_VIDEO_BITRATE_MODE_VBR

可變位元率

V4L2_MPEG_VIDEO_BITRATE_MODE_CBR

恆定位元率

V4L2_MPEG_VIDEO_BITRATE_MODE_CQ

恆定質量

V4L2_CID_MPEG_VIDEO_BITRATE (integer)

平均影片位元率,單位為位元/秒。

V4L2_CID_MPEG_VIDEO_BITRATE_PEAK (integer)

峰值影片位元率,單位為位元/秒。必須大於或等於平均影片位元率。如果影片位元率模式設定為恆定位元率,則忽略此值。

V4L2_CID_MPEG_VIDEO_CONSTANT_QUALITY (integer)

恆定質量級別控制。當 V4L2_CID_MPEG_VIDEO_BITRATE_MODE 值為 V4L2_MPEG_VIDEO_BITRATE_MODE_CQ 時,此控制適用。有效範圍為 1 到 100,其中 1 表示最低質量,100 表示最高質量。編碼器將決定適當的量化引數和位元率以生成所需的幀質量。

V4L2_CID_MPEG_VIDEO_FRAME_SKIP_MODE (enum)

enum v4l2_mpeg_video_frame_skip_mode -

指示編碼器在何種條件下應跳過幀。如果編碼幀會導致編碼流大於所選資料限制,則該幀將被跳過。可能的值有:

V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED

幀跳過模式已停用。

V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT

幀跳過模式已啟用,緩衝區限制由所選級別設定,並由標準定義。

V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT

幀跳過模式已啟用,緩衝區限制由 VBV (MPEG1/2/4)CPB (H264) 緩衝區大小 控制設定。

V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION (integer)

對於每個捕獲的幀,跳過此數量的後續幀(預設 0)。

V4L2_CID_MPEG_VIDEO_MUTE (boolean)

捕獲時將影片“靜音”為固定顏色。這對於測試很有用,可以生成固定的影片位元流。0 = 未靜音,1 = 靜音。

V4L2_CID_MPEG_VIDEO_MUTE_YUV (integer)

設定影片的“靜音”顏色。提供的 32 位整數解釋如下(位 0 = 最低有效位):

位 0:7

V 色度資訊

位 8:15

U 色度資訊

位 16:23

Y 亮度資訊

位 24:31

必須為零。

V4L2_CID_MPEG_VIDEO_DEC_PTS (integer64)

此只讀控制返回當前顯示幀的 33 位影片演示時間戳(PTS),其定義在 ITU T-REC-H.222.0 和 ISO/IEC 13818-1 中。這與 ioctl VIDIOC_DECODER_CMD, VIDIOC_TRY_DECODER_CMD 中使用的 PTS 相同。

V4L2_CID_MPEG_VIDEO_DEC_FRAME (integer64)

此只讀控制返回當前顯示(已解碼)幀的幀計數器。解碼器啟動時,此值將重置為 0。

V4L2_CID_MPEG_VIDEO_DEC_CONCEAL_COLOR (integer64)

此控制在 YUV 顏色空間中設定隱藏顏色。它描述了客戶端在參考幀丟失的情況下對錯誤隱藏顏色的偏好。解碼器應使用首選顏色填充參考緩衝區,並將其用於未來的解碼。該控制每個通道使用 16 位。適用於解碼器。

8 位格式

10 位格式

12 位格式

Y 亮度

位 0:7

位 0:9

位 0:11

Cb 色度

位 16:23

位 16:25

位 16:27

Cr 色度

位 32:39

位 32:41

位 32:43

必須為零

位 48:63

位 48:63

位 48:63

V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE (boolean)

如果啟用,解碼器預期每個緩衝區接收一個切片,否則解碼器預期每個緩衝區接收一個完整幀。適用於解碼器,所有編解碼器。

V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY_ENABLE (boolean)

如果啟用顯示延遲,則解碼器在處理一定數量的 OUTPUT 緩衝區後,將被強制返回 CAPTURE 緩衝區(解碼幀)。延遲可透過 V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY 設定。此功能可用於例如生成影片縮圖。適用於解碼器。

V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY (integer)

解碼器顯示延遲值。解碼器在設定的“顯示延遲”幀數後,將被強制返回解碼幀。如果此數字較低,可能導致幀返回順序混亂,此外硬體可能仍將返回的緩衝區用作後續幀的參考圖片。

V4L2_CID_MPEG_VIDEO_AU_DELIMITER (boolean)

如果啟用,則將生成 AUD (Access Unit Delimiter) NALU。這對於無需完全解析每個 NALU 即可找到幀的開始很有用。適用於 H264 和 HEVC 編碼器。

V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE (boolean)

啟用在影片可用性資訊中寫入取樣寬高比。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC

(enum)

enum v4l2_mpeg_video_h264_vui_sar_idc -

H.264 編碼的 VUI 取樣寬高比指示符。該值在標準中的表 E-1 中定義。適用於 H264 編碼器。

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED

未指定

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1

1x1

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11

12x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11

10x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11

16x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33

40x33

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11

24x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11

20x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11

32x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33

80x33

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11

18x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11

15x11

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33

64x33

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99

160x99

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3

4x3

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2

3x2

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1

2x1

V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED

擴充套件 SAR

V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (integer)

H.264 VUI 編碼的擴展采樣寬高比寬度。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (integer)

H.264 VUI 編碼的擴展采樣寬高比高度。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_LEVEL

(enum)

enum v4l2_mpeg_video_h264_level -

H264 影片基本流的級別資訊。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_LEVEL_1_0

級別 1.0

V4L2_MPEG_VIDEO_H264_LEVEL_1B

級別 1B

V4L2_MPEG_VIDEO_H264_LEVEL_1_1

級別 1.1

V4L2_MPEG_VIDEO_H264_LEVEL_1_2

級別 1.2

V4L2_MPEG_VIDEO_H264_LEVEL_1_3

級別 1.3

V4L2_MPEG_VIDEO_H264_LEVEL_2_0

級別 2.0

V4L2_MPEG_VIDEO_H264_LEVEL_2_1

級別 2.1

V4L2_MPEG_VIDEO_H264_LEVEL_2_2

級別 2.2

V4L2_MPEG_VIDEO_H264_LEVEL_3_0

級別 3.0

V4L2_MPEG_VIDEO_H264_LEVEL_3_1

級別 3.1

V4L2_MPEG_VIDEO_H264_LEVEL_3_2

級別 3.2

V4L2_MPEG_VIDEO_H264_LEVEL_4_0

級別 4.0

V4L2_MPEG_VIDEO_H264_LEVEL_4_1

級別 4.1

V4L2_MPEG_VIDEO_H264_LEVEL_4_2

級別 4.2

V4L2_MPEG_VIDEO_H264_LEVEL_5_0

級別 5.0

V4L2_MPEG_VIDEO_H264_LEVEL_5_1

級別 5.1

V4L2_MPEG_VIDEO_H264_LEVEL_5_2

級別 5.2

V4L2_MPEG_VIDEO_H264_LEVEL_6_0

級別 6.0

V4L2_MPEG_VIDEO_H264_LEVEL_6_1

級別 6.1

V4L2_MPEG_VIDEO_H264_LEVEL_6_2

級別 6.2

V4L2_CID_MPEG_VIDEO_MPEG2_LEVEL

(enum)

enum v4l2_mpeg_video_mpeg2_level -

MPEG2 基本流的級別資訊。適用於 MPEG2 編解碼器。可能的值有:

V4L2_MPEG_VIDEO_MPEG2_LEVEL_LOW

低級別 (LL)

V4L2_MPEG_VIDEO_MPEG2_LEVEL_MAIN

主級別 (ML)

V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH_1440

高 1440 級別 (H-14)

V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH

高級別 (HL)

V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL

(enum)

enum v4l2_mpeg_video_mpeg4_level -

MPEG4 基本流的級別資訊。適用於 MPEG4 編碼器。可能的值有:

V4L2_MPEG_VIDEO_MPEG4_LEVEL_0

級別 0

V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B

級別 0b

V4L2_MPEG_VIDEO_MPEG4_LEVEL_1

級別 1

V4L2_MPEG_VIDEO_MPEG4_LEVEL_2

級別 2

V4L2_MPEG_VIDEO_MPEG4_LEVEL_3

級別 3

V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B

級別 3b

V4L2_MPEG_VIDEO_MPEG4_LEVEL_4

級別 4

V4L2_MPEG_VIDEO_MPEG4_LEVEL_5

級別 5

V4L2_CID_MPEG_VIDEO_H264_PROFILE

(enum)

enum v4l2_mpeg_video_h264_profile -

H264 的配置檔案資訊。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE

基線配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE

受限基線配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_MAIN

主配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED

擴充套件配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH

高配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10

高 10 配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422

高 422 配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE

高 444 預測配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA

高 10 幀內配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA

高 422 幀內配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA

高 444 幀內配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA

CAVLC 444 幀內配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE

可伸縮基線配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH

可伸縮高配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA

可伸縮高幀內配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH

立體聲高配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH

多檢視高配置檔案

V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH

受限高配置檔案

V4L2_CID_MPEG_VIDEO_MPEG2_PROFILE

(enum)

enum v4l2_mpeg_video_mpeg2_profile -

MPEG2 的配置檔案資訊。適用於 MPEG2 編解碼器。可能的值有:

V4L2_MPEG_VIDEO_MPEG2_PROFILE_SIMPLE

簡單配置檔案 (SP)

V4L2_MPEG_VIDEO_MPEG2_PROFILE_MAIN

主配置檔案 (MP)

V4L2_MPEG_VIDEO_MPEG2_PROFILE_SNR_SCALABLE

SNR 可伸縮配置檔案 (SNR)

V4L2_MPEG_VIDEO_MPEG2_PROFILE_SPATIALLY_SCALABLE

空間可伸縮配置檔案 (Spt)

V4L2_MPEG_VIDEO_MPEG2_PROFILE_HIGH

高配置檔案 (HP)

V4L2_MPEG_VIDEO_MPEG2_PROFILE_MULTIVIEW

多檢視配置檔案 (MVP)

V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE

(enum)

enum v4l2_mpeg_video_mpeg4_profile -

MPEG4 的配置檔案資訊。適用於 MPEG4 編碼器。可能的值有:

V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE

簡單配置檔案

V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE

高階簡單配置檔案

V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE

核心配置檔案

V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE

簡單可伸縮配置檔案

V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY

高階編碼效率配置檔案

V4L2_CID_MPEG_VIDEO_MAX_REF_PIC (integer)

用於編碼的最大參考圖片數量。適用於編碼器。

V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE

(enum)

enum v4l2_mpeg_video_multi_slice_mode -

確定編碼器應如何處理幀的分片。適用於編碼器。可能的值有:

V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE

每幀單個切片。

V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB

多個切片,每個切片設定最大宏塊數量。

V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES

多個切片,每個切片設定最大位元組大小。

V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB (integer)

切片中宏塊的最大數量。當 V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE 設定為 V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB 時使用。適用於編碼器。

V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES (integer)

切片的最大位元組大小。當 V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE 設定為 V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES 時使用。適用於編碼器。

V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE

(enum)

enum v4l2_mpeg_video_h264_loop_filter_mode -

H264 編碼器的迴圈濾波器模式。可能的值有:

V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED

迴圈濾波器已啟用。

V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED

迴圈濾波器已停用。

V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY

迴圈濾波器在切片邊界處停用。

V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA (integer)

迴圈濾波器 alpha 係數,定義在 H264 標準中。此值對應於 slice_alpha_c0_offset_div2 切片頭欄位,應在 -6 到 +6 範圍內(含)。實際的 alpha 偏移 FilterOffsetA 是此值的兩倍。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA (integer)

迴圈濾波器 beta 係數,定義在 H264 標準中。此值對應於 slice_beta_offset_div2 切片頭欄位,應在 -6 到 +6 範圍內(含)。實際的 beta 偏移 FilterOffsetB 是此值的兩倍。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE

(enum)

enum v4l2_mpeg_video_h264_entropy_mode -

H264 的熵編碼模式 - CABAC/CAVALC。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC

使用 CAVLC 熵編碼。

V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC

使用 CABAC 熵編碼。

V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM (boolean)

為 H264 啟用 8X8 變換。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_CONSTRAINED_INTRA_PREDICTION (boolean)

為 H264 啟用受限幀內預測。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_CHROMA_QP_INDEX_OFFSET (integer)

指定應新增到亮度量化引數以確定色度量化引數的偏移量。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB (integer)

迴圈幀內宏塊重新整理。這是每個幀連續重新整理宏塊的數量。每個幀都會重新整理一組連續的宏塊,直到迴圈完成並從幀的頂部開始。將此控制設定為零表示宏塊不會重新整理。請注意,當 V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD 控制設定為非零值時,此控制將不生效。適用於 H264、H263 和 MPEG4 編碼器。

V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE (enum)

enum v4l2_mpeg_video_intra_refresh_period_type -

設定幀內重新整理型別。重新整理整個幀的週期由 V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD 指定。請注意,如果此控制不存在,則未定義使用哪種重新整理型別,由驅動程式決定。適用於 H264 和 HEVC 編碼器。可能的值有:

V4L2_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE_RANDOM

整個幀在指定週期後完全隨機重新整理。

V4L2_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE_CYCLIC

整個幀的宏塊在指定週期後按迴圈順序完全重新整理。

V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD (integer)

幀內宏塊重新整理週期。這設定了重新整理整個幀的週期。換句話說,這定義了整個幀將被幀內重新整理的幀數。例如:將週期設定為 1 表示整個幀將被重新整理,將週期設定為 2 表示一半的宏塊將在 frameX 中進行幀內重新整理,另一半宏塊將在 frameX + 1 中重新整理,依此類推。將週期設定為零表示未指定週期。請注意,如果客戶端將此控制設定為非零值,則 V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB 控制將被忽略。適用於 H264 和 HEVC 編碼器。

V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE (boolean)

幀級速率控制啟用。如果停用此控制,則每種幀型別的量化引數是恆定的,並由適當的控制(例如 V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP)設定。如果啟用幀速率控制,則量化引數會進行調整以滿足所選的位元率。量化引數的最小值和最大值可以透過適當的控制(例如 V4L2_CID_MPEG_VIDEO_H263_MIN_QP)設定。適用於編碼器。

V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE (boolean)

宏塊級速率控制啟用。適用於 MPEG4 和 H264 編碼器。

V4L2_CID_MPEG_VIDEO_MPEG4_QPEL (boolean)

MPEG4 的四分之一畫素運動估計。適用於 MPEG4 編碼器。

V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (integer)

H263 I 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_H263_MIN_QP (integer)

H263 的最小量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_H263_MAX_QP (integer)

H263 的最大量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (integer)

H263 P 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP (integer)

H263 B 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP (integer)

H264 I 幀的量化引數。有效範圍:0 到 51。

V4L2_CID_MPEG_VIDEO_H264_MIN_QP (integer)

H264 的最小量化引數。有效範圍:0 到 51。

V4L2_CID_MPEG_VIDEO_H264_MAX_QP (integer)

H264 的最大量化引數。有效範圍:0 到 51。

V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP (integer)

H264 P 幀的量化引數。有效範圍:0 到 51。

V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP (integer)

H264 B 幀的量化引數。有效範圍:0 到 51。

V4L2_CID_MPEG_VIDEO_H264_I_FRAME_MIN_QP (integer)

H264 I 幀的最小量化引數,用於將 I 幀質量限制在一個範圍內。有效範圍:0 到 51。如果同時設定了 V4L2_CID_MPEG_VIDEO_H264_MIN_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_H264_I_FRAME_MAX_QP (integer)

H264 I 幀的最大量化引數,用於將 I 幀質量限制在一個範圍內。有效範圍:0 到 51。如果同時設定了 V4L2_CID_MPEG_VIDEO_H264_MAX_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_H264_P_FRAME_MIN_QP (integer)

H264 P 幀的最小量化引數,用於將 P 幀質量限制在一個範圍內。有效範圍:0 到 51。如果同時設定了 V4L2_CID_MPEG_VIDEO_H264_MIN_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_H264_P_FRAME_MAX_QP (integer)

H264 P 幀的最大量化引數,用於將 P 幀質量限制在一個範圍內。有效範圍:0 到 51。如果同時設定了 V4L2_CID_MPEG_VIDEO_H264_MAX_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_H264_B_FRAME_MIN_QP (integer)

H264 B 幀的最小量化引數,用於將 B 幀質量限制在一個範圍內。有效範圍:0 到 51。如果同時設定了 V4L2_CID_MPEG_VIDEO_H264_MIN_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_H264_B_FRAME_MAX_QP (integer)

H264 B 幀的最大量化引數,用於將 B 幀質量限制在一個範圍內。有效範圍:0 到 51。如果同時設定了 V4L2_CID_MPEG_VIDEO_H264_MAX_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP (integer)

MPEG4 I 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP (integer)

MPEG4 的最小量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP (integer)

MPEG4 的最大量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP (integer)

MPEG4 P 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP (integer)

MPEG4 B 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_VBV_SIZE (integer)

影片緩衝區驗證器(VBV)大小,單位為千位元組,用作幀跳過的限制。VBV 在標準中定義為驗證生成的流是否能成功解碼的方法。標準將其描述為“概念上連線到編碼器輸出的假設解碼器的一部分。其目的是限制編碼器或編輯過程可能產生的資料速率的可變性。”適用於 MPEG1、MPEG2、MPEG4 編碼器。

V4L2_CID_MPEG_VIDEO_VBV_DELAY (integer)

設定 VBV 緩衝區控制的初始延遲,單位為毫秒。

V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (integer)

水平搜尋範圍定義了在參考圖片中搜索和匹配當前宏塊(MB)的最大水平搜尋區域(以畫素為單位)。此 V4L2 控制宏用於設定影片編碼器中運動估計模組的水平搜尋範圍。

V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (integer)

垂直搜尋範圍定義了在參考圖片中搜索和匹配當前宏塊(MB)的最大垂直搜尋區域(以畫素為單位)。此 V4L2 控制宏用於設定影片編碼器中運動估計模組的垂直搜尋範圍。

V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME (button)

強制下一個排隊緩衝區為關鍵幀。適用於編碼器。這是一個通用的、與編解碼器無關的關鍵幀控制。

V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE (integer)

編碼圖片緩衝區(CPB)大小,單位為千位元組,用作幀跳過的限制。CPB 在 H264 標準中定義為驗證生成的流是否能成功解碼的方法。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_I_PERIOD (integer)

H264 開放 GOP 中 I 幀之間的週期。在開放 GOP 的情況下,這是兩個 I 幀之間的週期。IDR(即時解碼重新整理)幀之間的週期取自 GOP_SIZE 控制。IDR 幀代表即時解碼重新整理,是一種 I 幀,之後不再引用任何之前的幀。這意味著流可以從 IDR 幀重新開始,而無需儲存或解碼任何之前的幀。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_HEADER_MODE

(enum)

enum v4l2_mpeg_video_header_mode -

確定頭是作為第一個緩衝區返回,還是與第一個幀一起返回。適用於編碼器。可能的值有:

V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE

流頭在第一個緩衝區中單獨返回。

V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME

流頭與第一個編碼幀一起返回。

V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (boolean)

重複影片序列頭。重複這些頭使影片流的隨機訪問更容易。適用於 MPEG1、2 和 4 編碼器。

V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER (boolean)

啟用 MPEG4 解碼器的去塊後處理濾波器。適用於 MPEG4 解碼器。

V4L2_CID_MPEG_VIDEO_MPEG4_VOP_TIME_RES (integer)

MPEG4 的 vop_time_increment_resolution 值。適用於 MPEG4 編碼器。

V4L2_CID_MPEG_VIDEO_MPEG4_VOP_TIME_INC (integer)

MPEG4 的 vop_time_increment 值。適用於 MPEG4 編碼器。

V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING (boolean)

啟用在編碼位元流中生成幀打包補充增強資訊。幀打包 SEI 訊息包含用於 3D 觀看的 L 和 R 平面排列。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0 (boolean)

在幀打包 SEI 中將當前幀設定為 frame0。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE

(enum)

enum v4l2_mpeg_video_h264_sei_fp_arrangement_type -

H264 SEI 的幀打包排列型別。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD

畫素交替來自 L 和 R。

V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN

L 和 R 按列交錯。

V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW

L 和 R 按行交錯。

V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE

L 在左側,R 在右側。

V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM

L 在頂部,R 在底部。

V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL

每幀一個檢視。

V4L2_CID_MPEG_VIDEO_H264_FMO (boolean)

在編碼位元流中啟用靈活宏塊排序。它是一種用於重構圖片中宏塊排序的技術。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE

(enum)

enum v4l2_mpeg_video_h264_fmo_map_type -

使用 FMO 時,對映型別將影像劃分為不同的宏塊掃描模式。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES

切片以宏塊執行長度順序交錯。

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES

根據編碼器和解碼器都知道的數學函式分散宏塊。

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER

宏塊排列成矩形區域或感興趣區域。

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT

切片組以迴圈方式從中心向外增長。

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN

切片組以光柵掃描模式從左到右增長。

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN

切片組以擦除掃描模式從上到下增長。

V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT

使用者定義的對映型別。

V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP (integer)

FMO 中切片組的數量。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION

(enum)

enum v4l2_mpeg_video_h264_fmo_change_dir -

指定光柵和擦除對映的切片組更改方向。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT

光柵掃描或向右擦除。

V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT

反向光柵掃描或向左擦除。

V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE (integer)

指定光柵和擦除對映的第一個切片組的大小。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH (integer)

指定交錯對映的連續宏塊數量。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_ASO (boolean)

在編碼位元流中啟用任意切片排序。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER (integer)

指定 ASO 中的切片順序。適用於 H264 編碼器。提供的 32 位整數解釋如下(位 0 = 最低有效位):

位 0:15

切片 ID

位 16:32

切片位置或順序

V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING (boolean)

啟用 H264 分層編碼。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE

(enum)

enum v4l2_mpeg_video_h264_hierarchical_coding_type -

指定分層編碼型別。適用於 H264 編碼器。可能的值有:

V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B

分層 B 編碼。

V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P

分層 P 編碼。

V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER (integer)

指定分層編碼層數。適用於 H264 編碼器。

V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP (integer)

為每個層指定使用者定義的 QP。適用於 H264 編碼器。提供的 32 位整數解釋如下(位 0 = 最低有效位):

位 0:15

QP 值

位 16:32

層數

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L0_BR (integer)

指示 H264 編碼器分層編碼第 0 層的位元率 (bps)。

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L1_BR (integer)

指示 H264 編碼器分層編碼第 1 層的位元率 (bps)。

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L2_BR (integer)

指示 H264 編碼器分層編碼第 2 層的位元率 (bps)。

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L3_BR (integer)

指示 H264 編碼器分層編碼第 3 層的位元率 (bps)。

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L4_BR (integer)

指示 H264 編碼器分層編碼第 4 層的位元率 (bps)。

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L5_BR (integer)

指示 H264 編碼器分層編碼第 5 層的位元率 (bps)。

V4L2_CID_MPEG_VIDEO_H264_HIER_CODING_L6_BR (integer)

指示 H264 編碼器分層編碼第 6 層的位元率 (bps)。

V4L2_CID_FWHT_I_FRAME_QP (integer)

FWHT I 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_FWHT_P_FRAME_QP (integer)

FWHT P 幀的量化引數。有效範圍:1 到 31。

V4L2_CID_MPEG_VIDEO_AVERAGE_QP (integer)

此只讀控制返回當前編碼幀的平均 QP 值。該值適用於最後一個出隊捕獲緩衝區 (VIDIOC_DQBUF)。其有效範圍取決於編碼格式和引數。對於 H264,其有效範圍為 0 到 51。對於 HEVC,8 位為 0 到 51,10 位為 0 到 63。對於 H263 和 MPEG4,其有效範圍為 1 到 31。對於 VP8,其有效範圍為 0 到 127。對於 VP9,其有效範圍為 0 到 255。如果設定了編解碼器的 MIN_QP 和 MAX_QP,則 QP 將滿足這兩個要求。編解碼器需要始終使用指定的範圍,而不是硬體自定義範圍。適用於編碼器。

1.15.2. MFC 5.1 MPEG 控制

以下 MPEG 類控制處理特定於三星 S5P 系列 SoC 中存在的多格式編解碼器 5.1 裝置的 MPEG 解碼和編碼設定。

1.15.2.1. MFC 5.1 控制 ID

V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE (boolean)

如果啟用顯示延遲,則解碼器在處理一定數量的 OUTPUT 緩衝區後,將被強制返回 CAPTURE 緩衝區(解碼幀)。延遲可透過 V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY 設定。此功能可用於例如生成影片縮圖。適用於 H264 解碼器。

注意

此控制已棄用。請改用標準 V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY_ENABLE 控制。

V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY (integer)

H264 解碼器的顯示延遲值。解碼器在設定的“顯示延遲”幀數後,將被強制返回解碼幀。如果此數字較低,可能導致幀返回順序混亂,此外硬體可能仍將返回的緩衝區用作後續幀的參考圖片。

注意

此控制已棄用。請改用標準 V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY 控制。

V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P (integer)

用於編碼 P 幀的參考圖片數量。適用於 H264 編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_PADDING (boolean)

編碼器中的填充啟用 - 使用顏色而不是重複邊框畫素。適用於編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV (integer)

編碼器中的填充顏色。適用於編碼器。提供的 32 位整數解釋如下(位 0 = 最低有效位):

位 0:7

V 色度資訊

位 8:15

U 色度資訊

位 16:23

Y 亮度資訊

位 24:31

必須為零。

V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF (integer)

MFC 速率控制的反應係數。適用於編碼器。

注意

  1. 僅當幀級 RC 啟用時有效。

  2. 對於嚴格 CBR,此欄位必須較小(例如 2 ~ 10)。對於 VBR,此欄位必須較大(例如 100 ~ 1000)。

  3. 不建議使用大於 FRAME_RATE * (10^9 / BIT_RATE) 的數字。

V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK (boolean)

暗區自適應速率控制。僅當 H.264 和宏塊級 RC 啟用時有效(V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE)。適用於 H264 編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH (boolean)

平滑區域自適應速率控制。僅當 H.264 和宏塊級 RC 啟用時有效(V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE)。適用於 H264 編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC (boolean)

靜態區域自適應速率控制。僅當 H.264 和宏塊級 RC 啟用時有效(V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE)。適用於 H264 編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY (boolean)

活動區域自適應速率控制。僅當 H.264 和宏塊級 RC 啟用時有效(V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE)。適用於 H264 編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE

(enum)

注意

此控制已棄用。請改用標準 V4L2_CID_MPEG_VIDEO_FRAME_SKIP_MODE 控制。

enum v4l2_mpeg_mfc51_video_frame_skip_mode -

指示編碼器在何種條件下應跳過幀。如果編碼幀會導致編碼流大於所選資料限制,則該幀將被跳過。可能的值有:

V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_DISABLED

幀跳過模式已停用。

V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT

幀跳過模式已啟用,緩衝區限制由所選級別設定,並由標準定義。

V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT

幀跳過模式已啟用,緩衝區限制由 VBV (MPEG1/2/4) 或 CPB (H264) 緩衝區大小控制設定。

V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT (integer)

啟用固定目標位元的速率控制。如果啟用此設定,則編碼器的速率控制邏輯將計算 GOP 的平均位元率並將其保持在設定位元率目標之下或等於。否則,速率控制邏輯將計算流的整體平均位元率並將其保持在設定位元率之下或等於。在第一種情況下,整個流的平均位元率將小於設定位元率。這是因為平均值是針對較少數量的幀計算的,另一方面,啟用此設定將確保流滿足嚴格的頻寬限制。適用於編碼器。

V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE

(enum)

enum v4l2_mpeg_mfc51_video_force_frame_type -

為下一個排隊緩衝區強制指定幀型別。適用於編碼器。可能的值有:

V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_DISABLED

強制特定幀型別已停用。

V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_I_FRAME

強制為 I 幀。

V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_NOT_CODED

強制為非編碼幀。

1.15.3. CX2341x MPEG 控制

以下 MPEG 類控制處理特定於 Conexant CX23415 和 CX23416 MPEG 編碼晶片的 MPEG 編碼設定。

1.15.3.1. CX2341x 控制 ID

V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE

(enum)

enum v4l2_mpeg_cx2341x_video_spatial_filter_mode -

設定空間濾波器模式(預設 MANUAL)。可能的值有:

V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL

手動選擇濾波器

V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO

自動選擇濾波器

V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (integer (0-15))

空間濾波器的設定。0 = 關閉,15 = 最大值。(預設值為 0。)

V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE

(enum)

enum v4l2_mpeg_cx2341x_video_luma_spatial_filter_type -

選擇用於亮度空間濾波器的演算法(預設 1D_HOR)。可能的值:

V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF

無濾波器

V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR

一維水平

V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT

一維垂直

V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE

二維可分離

V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE

二維對稱不可分離

V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE

(enum)

enum v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type -

選擇色度空間濾波器的演算法(預設 1D_HOR)。可能的值有:

V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF

無濾波器

V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR

一維水平

V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE

(enum)

enum v4l2_mpeg_cx2341x_video_temporal_filter_mode -

設定時域濾波器模式(預設 MANUAL)。可能的值有:

V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL

手動選擇濾波器

V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO

自動選擇濾波器

V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (integer (0-31))

時域濾波器的設定。0 = 關閉,31 = 最大值。(全尺寸捕獲預設值為 8,縮放捕獲預設值為 0。)

V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE

(enum)

enum v4l2_mpeg_cx2341x_video_median_filter_type -

中值濾波器型別(預設 OFF)。可能的值有:

V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF

無濾波器

V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR

水平濾波器

V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT

垂直濾波器

V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT

水平和垂直濾波器

V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG

對角線濾波器

V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (integer (0-255))

亮度中值濾波器啟用閾值(預設 0)

V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (integer (0-255))

亮度中值濾波器啟用閾值以下(預設 255)

V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM (integer (0-255))

色度中值濾波器啟用閾值(預設 0)

V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP (integer (0-255))

色度中值濾波器啟用閾值以下(預設 255)

V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS (boolean)

CX2341X MPEG 編碼器可以在每四個影片幀之間插入一個空的 MPEG-2 PES 包。包大小為 2048 位元組,包括 packet_start_code_prefix 和 stream_id 欄位。stream_id 為 0xBF(私有流 2)。有效載荷由 0x00 位元組組成,由應用程式填充。0 = 不插入,1 = 插入包。

1.15.4. VPX 控制參考

VPX 控制包括 VPx 影片編解碼器編碼引數的控制。

1.15.4.1. VPX 控制 ID

V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS

(enum)

enum v4l2_vp8_num_partitions -

VP8 編碼器中使用的令牌分割槽數量。可能的值有:

V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION

1 個係數分割槽

V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS

2 個係數分割槽

V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS

4 個係數分割槽

V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS

8 個係數分割槽

V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4 (boolean)

設定此項可在幀內模式決策中阻止幀內 4x4 模式。

V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES

(enum)

enum v4l2_vp8_num_ref_frames -

用於編碼 P 幀的參考圖片數量。可能的值有:

V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME

將搜尋最後編碼的幀

V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME

將在最後編碼的幀、黃金幀和備用參考 (altref) 幀中搜索兩幀。編碼器實現將決定選擇哪兩幀。

V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME

將搜尋最後編碼的幀、黃金幀和 altref 幀。

V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL (integer)

指示迴圈濾波器級別。迴圈濾波器級別的調整透過相對於基線迴圈濾波器值的 delta 值完成。

V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS (integer)

此引數影響迴圈濾波器。任何大於零的值都會削弱迴圈濾波器上的去塊效應。

V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD (integer)

設定黃金幀的重新整理週期。週期以幀數為單位定義。對於值為“n”,從第一個關鍵幀開始的每第 n 幀將被視為黃金幀。例如,對於編碼序列 0, 1, 2, 3, 4, 5, 6, 7,如果黃金幀重新整理週期設定為 4,則幀 0, 4, 8 等將被視為黃金幀,因為幀 0 始終是關鍵幀。

V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL

(enum)

enum v4l2_vp8_golden_frame_sel -

選擇用於編碼的黃金幀。可能的值有:

V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV

使用 (n-2) 幀作為黃金幀,當前幀索引為“n”。

V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD

使用由 V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD 指示的前一個特定幀作為黃金幀。

V4L2_CID_MPEG_VIDEO_VPX_MIN_QP (integer)

VP8 的最小量化引數。

V4L2_CID_MPEG_VIDEO_VPX_MAX_QP (integer)

VP8 的最大量化引數。

V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP (integer)

VP8 I 幀的量化引數。

V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP (integer)

VP8 P 幀的量化引數。

V4L2_CID_MPEG_VIDEO_VP8_PROFILE

(enum)

enum v4l2_mpeg_video_vp8_profile -

此控制允許為 VP8 編碼器選擇配置檔案。這也用於列舉 VP8 編碼器或解碼器支援的配置檔案。可能的值有:

V4L2_MPEG_VIDEO_VP8_PROFILE_0

配置檔案 0

V4L2_MPEG_VIDEO_VP8_PROFILE_1

配置檔案 1

V4L2_MPEG_VIDEO_VP8_PROFILE_2

配置檔案 2

V4L2_MPEG_VIDEO_VP8_PROFILE_3

配置檔案 3

V4L2_CID_MPEG_VIDEO_VP9_PROFILE

(enum)

enum v4l2_mpeg_video_vp9_profile -

此控制允許為 VP9 編碼器選擇配置檔案。這也用於列舉 VP9 編碼器或解碼器支援的配置檔案。可能的值有:

V4L2_MPEG_VIDEO_VP9_PROFILE_0

配置檔案 0

V4L2_MPEG_VIDEO_VP9_PROFILE_1

配置檔案 1

V4L2_MPEG_VIDEO_VP9_PROFILE_2

配置檔案 2

V4L2_MPEG_VIDEO_VP9_PROFILE_3

配置檔案 3

V4L2_CID_MPEG_VIDEO_VP9_LEVEL (enum)

enum v4l2_mpeg_video_vp9_level -

此控制允許為 VP9 編碼器選擇級別。這也用於列舉 VP9 編碼器或解碼器支援的級別。更多資訊可以在 webmproject 找到。可能的值有:

V4L2_MPEG_VIDEO_VP9_LEVEL_1_0

級別 1

V4L2_MPEG_VIDEO_VP9_LEVEL_1_1

級別 1.1

V4L2_MPEG_VIDEO_VP9_LEVEL_2_0

級別 2

V4L2_MPEG_VIDEO_VP9_LEVEL_2_1

級別 2.1

V4L2_MPEG_VIDEO_VP9_LEVEL_3_0

級別 3

V4L2_MPEG_VIDEO_VP9_LEVEL_3_1

級別 3.1

V4L2_MPEG_VIDEO_VP9_LEVEL_4_0

級別 4

V4L2_MPEG_VIDEO_VP9_LEVEL_4_1

級別 4.1

V4L2_MPEG_VIDEO_VP9_LEVEL_5_0

級別 5

V4L2_MPEG_VIDEO_VP9_LEVEL_5_1

級別 5.1

V4L2_MPEG_VIDEO_VP9_LEVEL_5_2

級別 5.2

V4L2_MPEG_VIDEO_VP9_LEVEL_6_0

級別 6

V4L2_MPEG_VIDEO_VP9_LEVEL_6_1

級別 6.1

V4L2_MPEG_VIDEO_VP9_LEVEL_6_2

級別 6.2

1.15.5. 高效影片編碼 (HEVC/H.265) 控制參考

HEVC/H.265 控制包括 HEVC/H.265 影片編解碼器編碼引數的控制。

1.15.5.1. HEVC/H.265 控制 ID

V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP (integer)

HEVC 的最小量化引數。有效範圍:8 位為 0 到 51,10 位為 0 到 63。

V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP (integer)

HEVC 的最大量化引數。有效範圍:8 位為 0 到 51,10 位為 0 到 63。

V4L2_CID_MPEG_VIDEO_HEVC_I_FRAME_QP (integer)

HEVC I 幀的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_P_FRAME_QP (integer)

HEVC P 幀的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_QP (integer)

HEVC B 幀的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_I_FRAME_MIN_QP (integer)

HEVC I 幀的最小量化引數,用於將 I 幀質量限制在一個範圍內。有效範圍:8 位為 0 到 51,10 位為 0 到 63。如果同時設定了 V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_HEVC_I_FRAME_MAX_QP (integer)

HEVC I 幀的最大量化引數,用於將 I 幀質量限制在一個範圍內。有效範圍:8 位為 0 到 51,10 位為 0 到 63。如果同時設定了 V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_HEVC_P_FRAME_MIN_QP (integer)

HEVC P 幀的最小量化引數,用於將 P 幀質量限制在一個範圍內。有效範圍:8 位為 0 到 51,10 位為 0 到 63。如果同時設定了 V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_HEVC_P_FRAME_MAX_QP (integer)

HEVC P 幀的最大量化引數,用於將 P 幀質量限制在一個範圍內。有效範圍:8 位為 0 到 51,10 位為 0 到 63。如果同時設定了 V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_MIN_QP (integer)

HEVC B 幀的最小量化引數,用於將 B 幀質量限制在一個範圍內。有效範圍:8 位為 0 到 51,10 位為 0 到 63。如果同時設定了 V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_MAX_QP (integer)

HEVC B 幀的最大量化引數,用於將 B 幀質量限制在一個範圍內。有效範圍:8 位為 0 到 51,10 位為 0 到 63。如果同時設定了 V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP,則應選擇量化引數以滿足兩個要求。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_QP (boolean)

HIERARCHICAL_QP 允許主機透過 HIERARCHICAL_QP_LAYER 為每個時域層指定量化引數值。僅當 HIERARCHICAL_CODING_LAYER 大於 1 時有效。將控制值設定為 1 可啟用對層 QP 值的設定。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_TYPE

(enum)

enum v4l2_mpeg_video_hevc_hier_coding_type -

選擇分層編碼型別進行編碼。可能的值有:

V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_B

使用 B 幀進行分層編碼。

V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_P

使用 P 幀進行分層編碼。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_LAYER (integer)

選擇分層編碼層。在正常編碼(非分層編碼)中,應為零。可能的值為 [0, 6]。0 表示分層編碼層 0,1 表示分層編碼層 1,依此類推。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L0_QP (integer)

指示分層編碼層 0 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L1_QP (integer)

指示分層編碼層 1 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L2_QP (integer)

指示分層編碼層 2 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L3_QP (integer)

指示分層編碼層 3 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L4_QP (integer)

指示分層編碼層 4 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L5_QP (integer)

指示分層編碼層 5 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L6_QP (integer)

指示分層編碼層 6 的量化引數。有效範圍:[V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]。

V4L2_CID_MPEG_VIDEO_HEVC_PROFILE

(enum)

enum v4l2_mpeg_video_hevc_profile -

選擇 HEVC 編碼器的所需配置檔案。

V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN

主配置檔案。

V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE

主靜態圖片配置檔案。

V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10

主 10 配置。

V4L2_CID_MPEG_VIDEO_HEVC_LEVEL

(enum)

enum v4l2_mpeg_video_hevc_level -

選擇 HEVC 編碼器所需的級別。

V4L2_MPEG_VIDEO_HEVC_LEVEL_1

級別 1.0

V4L2_MPEG_VIDEO_HEVC_LEVEL_2

級別 2.0

V4L2_MPEG_VIDEO_HEVC_LEVEL_2_1

級別 2.1

V4L2_MPEG_VIDEO_HEVC_LEVEL_3

級別 3.0

V4L2_MPEG_VIDEO_HEVC_LEVEL_3_1

級別 3.1

V4L2_MPEG_VIDEO_HEVC_LEVEL_4

級別 4.0

V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1

級別 4.1

V4L2_MPEG_VIDEO_HEVC_LEVEL_5

級別 5.0

V4L2_MPEG_VIDEO_HEVC_LEVEL_5_1

級別 5.1

V4L2_MPEG_VIDEO_HEVC_LEVEL_5_2

級別 5.2

V4L2_MPEG_VIDEO_HEVC_LEVEL_6

級別 6.0

V4L2_MPEG_VIDEO_HEVC_LEVEL_6_1

級別 6.1

V4L2_MPEG_VIDEO_HEVC_LEVEL_6_2

級別 6.2

V4L2_CID_MPEG_VIDEO_HEVC_FRAME_RATE_RESOLUTION (integer)

指示一秒內均勻間隔的子間隔(稱為刻度)的數量。這是一個 16 位無符號整數,最大值為 0xffff,最小值為 1。

V4L2_CID_MPEG_VIDEO_HEVC_TIER

(enum)

enum v4l2_mpeg_video_hevc_tier -

TIER_FLAG 指定 HEVC 編碼圖片的層級資訊。層級旨在處理最大位元率不同的應用。將此標誌設定為 0 將 HEVC 層級選擇為主層級,將此標誌設定為 1 則表示高層級。高層級適用於需要高位元率的應用。

V4L2_MPEG_VIDEO_HEVC_TIER_MAIN

主層級。

V4L2_MPEG_VIDEO_HEVC_TIER_HIGH

高層級。

V4L2_CID_MPEG_VIDEO_HEVC_MAX_PARTITION_DEPTH (integer)

選擇 HEVC 最大編碼單元深度。

V4L2_CID_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE

(enum)

enum v4l2_mpeg_video_hevc_loop_filter_mode -

HEVC 編碼器的環路濾波模式。可能的值為

V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_DISABLED

迴圈濾波器已停用。

V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_ENABLED

迴圈濾波器已啟用。

V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY

迴圈濾波器在切片邊界處停用。

V4L2_CID_MPEG_VIDEO_HEVC_LF_BETA_OFFSET_DIV2 (integer)

選擇 HEVC 環路濾波器 beta 偏移。有效範圍是 [-6, +6]。

V4L2_CID_MPEG_VIDEO_HEVC_LF_TC_OFFSET_DIV2 (integer)

選擇 HEVC 環路濾波器 tc 偏移。有效範圍是 [-6, +6]。

V4L2_CID_MPEG_VIDEO_HEVC_REFRESH_TYPE

(enum)

enum v4l2_mpeg_video_hevc_hier_refresh_type -

選擇 HEVC 編碼器的重新整理型別。主機必須透過 V4L2_CID_MPEG_VIDEO_HEVC_REFRESH_PERIOD 指定週期。

V4L2_MPEG_VIDEO_HEVC_REFRESH_NONE

使用 B 幀進行分層編碼。

V4L2_MPEG_VIDEO_HEVC_REFRESH_CRA

使用 CRA(乾淨隨機訪問單元)圖片編碼。

V4L2_MPEG_VIDEO_HEVC_REFRESH_IDR

使用 IDR(即時解碼重新整理)圖片編碼。

V4L2_CID_MPEG_VIDEO_HEVC_REFRESH_PERIOD (integer)

選擇 HEVC 編碼器的重新整理週期。這指定了兩個 CRA/IDR 影像之間 I 影像的數量。僅當 REFRESH_TYPE 不為 0 時,此設定才有效。

V4L2_CID_MPEG_VIDEO_HEVC_LOSSLESS_CU (boolean)

指示 HEVC 無損編碼。設定為 0 停用無損編碼。設定為 1 啟用無損編碼。

V4L2_CID_MPEG_VIDEO_HEVC_CONST_INTRA_PRED (boolean)

指示 HEVC 編碼器的常量幀內預測。指定約束幀內預測,其中幀內最大編碼單元 (LCU) 預測僅透過使用殘差資料和相鄰幀內 LCU 的解碼樣本來執行。將值設定為 1 啟用常量幀內預測,將值設定為 0 停用常量幀內預測。

V4L2_CID_MPEG_VIDEO_HEVC_WAVEFRONT (boolean)

指示 HEVC 編碼器的波前並行處理。設定為 0 停用該功能,設定為 1 啟用波前並行處理。

V4L2_CID_MPEG_VIDEO_HEVC_GENERAL_PB (boolean)

將值設定為 1 可啟用 HEVC 編碼器的 P 幀和 B 幀組合。

V4L2_CID_MPEG_VIDEO_HEVC_TEMPORAL_ID (boolean)

指示 HEVC 編碼器的時間識別符號,透過將值設定為 1 啟用。

V4L2_CID_MPEG_VIDEO_HEVC_STRONG_SMOOTHING (boolean)

當設定為 1 時,表示雙線性插值有條件地用於 CVS 中的幀內預測濾波過程。當設定為 0 時,表示雙線性插值未用於 CVS 中。

V4L2_CID_MPEG_VIDEO_HEVC_MAX_NUM_MERGE_MV_MINUS1 (integer)

指示合併候選運動向量的最大數量。值範圍為 0 到 4。

V4L2_CID_MPEG_VIDEO_HEVC_TMV_PREDICTION (boolean)

指示 HEVC 編碼器的時間運動向量預測。設定為 1 啟用預測。設定為 0 停用預測。

V4L2_CID_MPEG_VIDEO_HEVC_WITHOUT_STARTCODE (boolean)

指定 HEVC 是否生成一個包含長度欄位大小而非起始碼模式的碼流。長度欄位的大小可透過 V4L2_CID_MPEG_VIDEO_HEVC_SIZE_OF_LENGTH_FIELD 控制進行配置。將值設定為 0 停用不帶起始碼模式的編碼。將值設定為 1 啟用不帶起始碼模式的編碼。

V4L2_CID_MPEG_VIDEO_HEVC_SIZE_OF_LENGTH_FIELD (enum)

enum v4l2_mpeg_video_hevc_size_of_length_field -

指示長度欄位的大小。當啟用 WITHOUT_STARTCODE_ENABLE 編碼時,此項有效。

V4L2_MPEG_VIDEO_HEVC_SIZE_0

生成起始碼模式(正常)。

V4L2_MPEG_VIDEO_HEVC_SIZE_1

生成長度欄位大小而非起始碼模式,長度為 1。

V4L2_MPEG_VIDEO_HEVC_SIZE_2

生成長度欄位大小而非起始碼模式,長度為 2。

V4L2_MPEG_VIDEO_HEVC_SIZE_4

生成長度欄位大小而非起始碼模式,長度為 4。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L0_BR (integer)

指示 HEVC 編碼器分層編碼層 0 的位元率。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L1_BR (integer)

指示 HEVC 編碼器分層編碼層 1 的位元率。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L2_BR (integer)

指示 HEVC 編碼器分層編碼層 2 的位元率。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L3_BR (integer)

指示 HEVC 編碼器分層編碼層 3 的位元率。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L4_BR (integer)

指示 HEVC 編碼器分層編碼層 4 的位元率。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L5_BR (integer)

指示 HEVC 編碼器分層編碼層 5 的位元率。

V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L6_BR (integer)

指示 HEVC 編碼器分層編碼層 6 的位元率。

V4L2_CID_MPEG_VIDEO_REF_NUMBER_FOR_PFRAMES (integer)

選擇 HEVC 編碼器所需的 P 參考影像數量。P 幀可以使用 1 或 2 個幀作為參考。

V4L2_CID_MPEG_VIDEO_PREPEND_SPSPPS_TO_IDR (integer)

指示是否在每個 IDR 生成 SPS 和 PPS。設定為 0 停用在每個 IDR 生成 SPS 和 PPS。設定為 1 啟用在每個 IDR 生成 SPS 和 PPS。