Lines Matching +full:num +full:- +full:columns

1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
3 .. _codec-controls:
24 .. _mpeg-control-id:
27 -----------------
35 .. _v4l2-mpeg-stream-type:
40 enum v4l2_mpeg_stream_type -
41 The MPEG-1, -2 or -4 output stream type. One cannot assume anything
48 .. flat-table::
49 :header-rows: 0
50 :stub-columns: 0
52 * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_PS``
53 - MPEG-2 program stream
54 * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_TS``
55 - MPEG-2 transport stream
56 * - ``V4L2_MPEG_STREAM_TYPE_MPEG1_SS``
57 - MPEG-1 system stream
58 * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_DVD``
59 - MPEG-2 DVD-compatible stream
60 * - ``V4L2_MPEG_STREAM_TYPE_MPEG1_VCD``
61 - MPEG-1 VCD-compatible stream
62 * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD``
63 - MPEG-2 SVCD-compatible stream
87 .. _v4l2-mpeg-stream-vbi-fmt:
92 enum v4l2_mpeg_stream_vbi_fmt -
103 .. flat-table::
104 :header-rows: 0
105 :stub-columns: 0
107 * - ``V4L2_MPEG_STREAM_VBI_FMT_NONE``
108 - No VBI in the MPEG stream
109 * - ``V4L2_MPEG_STREAM_VBI_FMT_IVTV``
110 - VBI in private packets, IVTV format (documented in the kernel
112 ``Documentation/userspace-api/media/drivers/cx2341x-uapi.rst``)
116 .. _v4l2-mpeg-audio-sampling-freq:
121 enum v4l2_mpeg_audio_sampling_freq -
126 .. flat-table::
127 :header-rows: 0
128 :stub-columns: 0
130 * - ``V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100``
131 - 44.1 kHz
132 * - ``V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000``
133 - 48 kHz
134 * - ``V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000``
135 - 32 kHz
139 .. _v4l2-mpeg-audio-encoding:
144 enum v4l2_mpeg_audio_encoding -
150 .. flat-table::
151 :header-rows: 0
152 :stub-columns: 0
154 * - ``V4L2_MPEG_AUDIO_ENCODING_LAYER_1``
155 - MPEG-1/2 Layer I encoding
156 * - ``V4L2_MPEG_AUDIO_ENCODING_LAYER_2``
157 - MPEG-1/2 Layer II encoding
158 * - ``V4L2_MPEG_AUDIO_ENCODING_LAYER_3``
159 - MPEG-1/2 Layer III encoding
160 * - ``V4L2_MPEG_AUDIO_ENCODING_AAC``
161 - MPEG-2/4 AAC (Advanced Audio Coding)
162 * - ``V4L2_MPEG_AUDIO_ENCODING_AC3``
163 - AC-3 aka ATSC A/52 encoding
167 .. _v4l2-mpeg-audio-l1-bitrate:
172 enum v4l2_mpeg_audio_l1_bitrate -
173 MPEG-1/2 Layer I bitrate. Possible values are:
177 .. flat-table::
178 :header-rows: 0
179 :stub-columns: 0
181 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_32K``
182 - 32 kbit/s
183 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_64K``
184 - 64 kbit/s
185 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_96K``
186 - 96 kbit/s
187 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_128K``
188 - 128 kbit/s
189 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_160K``
190 - 160 kbit/s
191 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_192K``
192 - 192 kbit/s
193 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_224K``
194 - 224 kbit/s
195 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_256K``
196 - 256 kbit/s
197 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_288K``
198 - 288 kbit/s
199 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_320K``
200 - 320 kbit/s
201 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_352K``
202 - 352 kbit/s
203 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_384K``
204 - 384 kbit/s
205 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_416K``
206 - 416 kbit/s
207 * - ``V4L2_MPEG_AUDIO_L1_BITRATE_448K``
208 - 448 kbit/s
212 .. _v4l2-mpeg-audio-l2-bitrate:
217 enum v4l2_mpeg_audio_l2_bitrate -
218 MPEG-1/2 Layer II bitrate. Possible values are:
222 .. flat-table::
223 :header-rows: 0
224 :stub-columns: 0
226 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_32K``
227 - 32 kbit/s
228 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_48K``
229 - 48 kbit/s
230 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_56K``
231 - 56 kbit/s
232 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_64K``
233 - 64 kbit/s
234 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_80K``
235 - 80 kbit/s
236 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_96K``
237 - 96 kbit/s
238 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_112K``
239 - 112 kbit/s
240 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_128K``
241 - 128 kbit/s
242 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_160K``
243 - 160 kbit/s
244 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_192K``
245 - 192 kbit/s
246 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_224K``
247 - 224 kbit/s
248 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_256K``
249 - 256 kbit/s
250 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_320K``
251 - 320 kbit/s
252 * - ``V4L2_MPEG_AUDIO_L2_BITRATE_384K``
253 - 384 kbit/s
257 .. _v4l2-mpeg-audio-l3-bitrate:
262 enum v4l2_mpeg_audio_l3_bitrate -
263 MPEG-1/2 Layer III bitrate. Possible values are:
267 .. flat-table::
268 :header-rows: 0
269 :stub-columns: 0
271 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_32K``
272 - 32 kbit/s
273 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_40K``
274 - 40 kbit/s
275 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_48K``
276 - 48 kbit/s
277 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_56K``
278 - 56 kbit/s
279 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_64K``
280 - 64 kbit/s
281 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_80K``
282 - 80 kbit/s
283 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_96K``
284 - 96 kbit/s
285 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_112K``
286 - 112 kbit/s
287 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_128K``
288 - 128 kbit/s
289 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_160K``
290 - 160 kbit/s
291 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_192K``
292 - 192 kbit/s
293 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_224K``
294 - 224 kbit/s
295 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_256K``
296 - 256 kbit/s
297 * - ``V4L2_MPEG_AUDIO_L3_BITRATE_320K``
298 - 320 kbit/s
305 .. _v4l2-mpeg-audio-ac3-bitrate:
310 enum v4l2_mpeg_audio_ac3_bitrate -
311 AC-3 bitrate. Possible values are:
315 .. flat-table::
316 :header-rows: 0
317 :stub-columns: 0
319 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_32K``
320 - 32 kbit/s
321 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_40K``
322 - 40 kbit/s
323 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_48K``
324 - 48 kbit/s
325 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_56K``
326 - 56 kbit/s
327 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_64K``
328 - 64 kbit/s
329 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_80K``
330 - 80 kbit/s
331 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_96K``
332 - 96 kbit/s
333 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_112K``
334 - 112 kbit/s
335 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_128K``
336 - 128 kbit/s
337 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_160K``
338 - 160 kbit/s
339 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_192K``
340 - 192 kbit/s
341 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_224K``
342 - 224 kbit/s
343 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_256K``
344 - 256 kbit/s
345 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_320K``
346 - 320 kbit/s
347 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_384K``
348 - 384 kbit/s
349 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_448K``
350 - 448 kbit/s
351 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_512K``
352 - 512 kbit/s
353 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_576K``
354 - 576 kbit/s
355 * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_640K``
356 - 640 kbit/s
360 .. _v4l2-mpeg-audio-mode:
365 enum v4l2_mpeg_audio_mode -
370 .. flat-table::
371 :header-rows: 0
372 :stub-columns: 0
374 * - ``V4L2_MPEG_AUDIO_MODE_STEREO``
375 - Stereo
376 * - ``V4L2_MPEG_AUDIO_MODE_JOINT_STEREO``
377 - Joint Stereo
378 * - ``V4L2_MPEG_AUDIO_MODE_DUAL``
379 - Bilingual
380 * - ``V4L2_MPEG_AUDIO_MODE_MONO``
381 - Mono
385 .. _v4l2-mpeg-audio-mode-extension:
390 enum v4l2_mpeg_audio_mode_extension -
397 .. flat-table::
398 :header-rows: 0
399 :stub-columns: 0
401 * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4``
402 - Subbands 4-31 in intensity stereo
403 * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8``
404 - Subbands 8-31 in intensity stereo
405 * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12``
406 - Subbands 12-31 in intensity stereo
407 * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16``
408 - Subbands 16-31 in intensity stereo
412 .. _v4l2-mpeg-audio-emphasis:
417 enum v4l2_mpeg_audio_emphasis -
422 .. flat-table::
423 :header-rows: 0
424 :stub-columns: 0
426 * - ``V4L2_MPEG_AUDIO_EMPHASIS_NONE``
427 - None
428 * - ``V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS``
429 - 50/15 microsecond emphasis
430 * - ``V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17``
431 - CCITT J.17
435 .. _v4l2-mpeg-audio-crc:
440 enum v4l2_mpeg_audio_crc -
445 .. flat-table::
446 :header-rows: 0
447 :stub-columns: 0
449 * - ``V4L2_MPEG_AUDIO_CRC_NONE``
450 - None
451 * - ``V4L2_MPEG_AUDIO_CRC_CRC16``
452 - 16 bit parity check
462 .. _v4l2-mpeg-audio-dec-playback:
467 enum v4l2_mpeg_audio_dec_playback -
475 .. flat-table::
476 :header-rows: 0
477 :stub-columns: 0
479 * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO``
480 - Automatically determines the best playback mode.
481 * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO``
482 - Stereo playback.
483 * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT``
484 - Left channel playback.
485 * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT``
486 - Right channel playback.
487 * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO``
488 - Mono playback.
489 * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO``
490 - Stereo playback with swapped left and right channels.
494 .. _v4l2-mpeg-audio-dec-multilingual-playback:
499 enum v4l2_mpeg_audio_dec_playback -
502 .. _v4l2-mpeg-video-encoding:
507 enum v4l2_mpeg_video_encoding -
513 .. flat-table::
514 :header-rows: 0
515 :stub-columns: 0
517 * - ``V4L2_MPEG_VIDEO_ENCODING_MPEG_1``
518 - MPEG-1 Video encoding
519 * - ``V4L2_MPEG_VIDEO_ENCODING_MPEG_2``
520 - MPEG-2 Video encoding
521 * - ``V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC``
522 - MPEG-4 AVC (H.264) Video encoding
526 .. _v4l2-mpeg-video-aspect:
531 enum v4l2_mpeg_video_aspect -
536 .. flat-table::
537 :header-rows: 0
538 :stub-columns: 0
540 * - ``V4L2_MPEG_VIDEO_ASPECT_1x1``
541 * - ``V4L2_MPEG_VIDEO_ASPECT_4x3``
542 * - ``V4L2_MPEG_VIDEO_ASPECT_16x9``
543 * - ``V4L2_MPEG_VIDEO_ASPECT_221x100``
548 Number of B-Frames (default 2)
559 .. _v4l2-mpeg-video-bitrate-mode:
564 enum v4l2_mpeg_video_bitrate_mode -
569 .. flat-table::
570 :header-rows: 0
571 :stub-columns: 0
573 * - ``V4L2_MPEG_VIDEO_BITRATE_MODE_VBR``
574 - Variable bitrate
575 * - ``V4L2_MPEG_VIDEO_BITRATE_MODE_CBR``
576 - Constant bitrate
577 * - ``V4L2_MPEG_VIDEO_BITRATE_MODE_CQ``
578 - Constant quality
601 enum v4l2_mpeg_video_frame_skip_mode -
614 .. flat-table::
615 :header-rows: 0
616 :stub-columns: 0
618 * - ``V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED``
619 - Frame skip mode is disabled.
620 * - ``V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT``
621 - Frame skip mode enabled and buffer limit is set by the chosen
623 * - ``V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT``
624 - Frame skip mode enabled and buffer limit is set by the
625 :ref:`VBV (MPEG1/2/4) <v4l2-mpeg-video-vbv-size>` or
626 :ref:`CPB (H264) buffer size <v4l2-mpeg-video-h264-cpb-size>` control.
642 Sets the "mute" color of the video. The supplied 32-bit integer is
647 .. flat-table::
648 :header-rows: 0
649 :stub-columns: 0
651 * - Bit 0:7
652 - V chrominance information
653 * - Bit 8:15
654 - U chrominance information
655 * - Bit 16:23
656 - Y luminance information
657 * - Bit 24:31
658 - Must be zero.
662 .. _v4l2-mpeg-video-dec-pts:
665 This read-only control returns the 33-bit video Presentation Time
666 Stamp as defined in ITU T-REC-H.222.0 and ISO/IEC 13818-1 of the
670 .. _v4l2-mpeg-video-dec-frame:
673 This read-only control returns the frame counter of the frame that
685 .. flat-table::
686 :header-rows: 0
687 :stub-columns: 0
689 * -
690 - 8bit format
691 - 10bit format
692 - 12bit format
693 * - Y luminance
694 - Bit 0:7
695 - Bit 0:9
696 - Bit 0:11
697 * - Cb chrominance
698 - Bit 16:23
699 - Bit 16:25
700 - Bit 16:27
701 * - Cr chrominance
702 - Bit 32:39
703 - Bit 32:41
704 - Bit 32:43
705 * - Must be zero
706 - Bit 48:63
707 - Bit 48:63
708 - Bit 48:63
739 .. _v4l2-mpeg-video-h264-vui-sar-idc:
744 enum v4l2_mpeg_video_h264_vui_sar_idc -
746 defined in the table E-1 in the standard. Applicable to the H264
751 .. flat-table::
752 :header-rows: 0
753 :stub-columns: 0
755 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED``
756 - Unspecified
757 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1``
758 - 1x1
759 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11``
760 - 12x11
761 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11``
762 - 10x11
763 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11``
764 - 16x11
765 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33``
766 - 40x33
767 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11``
768 - 24x11
769 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11``
770 - 20x11
771 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11``
772 - 32x11
773 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33``
774 - 80x33
775 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11``
776 - 18x11
777 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11``
778 - 15x11
779 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33``
780 - 64x33
781 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99``
782 - 160x99
783 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3``
784 - 4x3
785 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2``
786 - 3x2
787 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1``
788 - 2x1
789 * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED``
790 - Extended SAR
802 .. _v4l2-mpeg-video-h264-level:
807 enum v4l2_mpeg_video_h264_level -
813 .. flat-table::
814 :header-rows: 0
815 :stub-columns: 0
817 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_0``
818 - Level 1.0
819 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1B``
820 - Level 1B
821 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_1``
822 - Level 1.1
823 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_2``
824 - Level 1.2
825 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_3``
826 - Level 1.3
827 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_2_0``
828 - Level 2.0
829 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_2_1``
830 - Level 2.1
831 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_2_2``
832 - Level 2.2
833 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_3_0``
834 - Level 3.0
835 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_3_1``
836 - Level 3.1
837 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_3_2``
838 - Level 3.2
839 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_4_0``
840 - Level 4.0
841 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_4_1``
842 - Level 4.1
843 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_4_2``
844 - Level 4.2
845 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_5_0``
846 - Level 5.0
847 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_5_1``
848 - Level 5.1
849 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_5_2``
850 - Level 5.2
851 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_6_0``
852 - Level 6.0
853 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_6_1``
854 - Level 6.1
855 * - ``V4L2_MPEG_VIDEO_H264_LEVEL_6_2``
856 - Level 6.2
860 .. _v4l2-mpeg-video-mpeg2-level:
865 enum v4l2_mpeg_video_mpeg2_level -
871 .. flat-table::
872 :header-rows: 0
873 :stub-columns: 0
875 * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_LOW``
876 - Low Level (LL)
877 * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_MAIN``
878 - Main Level (ML)
879 * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH_1440``
880 - High-1440 Level (H-14)
881 * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH``
882 - High Level (HL)
886 .. _v4l2-mpeg-video-mpeg4-level:
891 enum v4l2_mpeg_video_mpeg4_level -
897 .. flat-table::
898 :header-rows: 0
899 :stub-columns: 0
901 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_0``
902 - Level 0
903 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B``
904 - Level 0b
905 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_1``
906 - Level 1
907 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_2``
908 - Level 2
909 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_3``
910 - Level 3
911 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B``
912 - Level 3b
913 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_4``
914 - Level 4
915 * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_5``
916 - Level 5
920 .. _v4l2-mpeg-video-h264-profile:
925 enum v4l2_mpeg_video_h264_profile -
935 .. flat-table::
936 :header-rows: 0
937 :stub-columns: 0
939 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE``
940 - Baseline profile
941 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE``
942 - Constrained Baseline profile
943 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_MAIN``
944 - Main profile
945 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED``
946 - Extended profile
947 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH``
948 - High profile
949 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10``
950 - High 10 profile
951 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422``
952 - High 422 profile
953 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE``
954 - High 444 Predictive profile
955 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA``
956 - High 10 Intra profile
957 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA``
958 - High 422 Intra profile
959 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA``
960 - High 444 Intra profile
961 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA``
962 - CAVLC 444 Intra profile
963 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE``
964 - Scalable Baseline profile
965 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH``
966 - Scalable High profile
967 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA``
968 - Scalable High Intra profile
969 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH``
970 - Stereo High profile
971 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH``
972 - Multiview High profile
973 * - ``V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH``
974 - Constrained High profile
980 .. _v4l2-mpeg-video-mpeg2-profile:
985 enum v4l2_mpeg_video_mpeg2_profile -
995 .. flat-table::
996 :header-rows: 0
997 :stub-columns: 0
999 * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_SIMPLE``
1000 - Simple profile (SP)
1001 * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_MAIN``
1002 - Main profile (MP)
1003 * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_SNR_SCALABLE``
1004 - SNR Scalable profile (SNR)
1005 * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_SPATIALLY_SCALABLE``
1006 - Spatially Scalable profile (Spt)
1007 * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_HIGH``
1008 - High profile (HP)
1009 * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_MULTIVIEW``
1010 - Multi-view profile (MVP)
1017 .. _v4l2-mpeg-video-mpeg4-profile:
1022 enum v4l2_mpeg_video_mpeg4_profile -
1032 .. flat-table::
1033 :header-rows: 0
1034 :stub-columns: 0
1036 * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE``
1037 - Simple profile
1038 * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE``
1039 - Advanced Simple profile
1040 * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE``
1041 - Core profile
1042 * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE``
1043 - Simple Scalable profile
1044 * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY``
1045 - Advanced Coding Efficiency profile
1055 .. _v4l2-mpeg-video-multi-slice-mode:
1060 enum v4l2_mpeg_video_multi_slice_mode -
1068 .. flat-table::
1069 :header-rows: 0
1070 :stub-columns: 0
1072 * - ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE``
1073 - Single slice per frame.
1074 * - ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB``
1075 - Multiple slices with set maximum number of macroblocks per slice.
1076 * - ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES``
1077 - Multiple slice with set maximum size in bytes per slice.
1093 .. _v4l2-mpeg-video-h264-loop-filter-mode:
1098 enum v4l2_mpeg_video_h264_loop_filter_mode -
1107 .. flat-table::
1108 :header-rows: 0
1109 :stub-columns: 0
1111 * - ``V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED``
1112 - Loop filter is enabled.
1113 * - ``V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED``
1114 - Loop filter is disabled.
1115 * - ``V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY``
1116 - Loop filter is disabled at the slice boundary.
1126 field, and should be in the range of -6 to +6, inclusive. The actual alpha
1133 should be in the range of -6 to +6, inclusive. The actual beta offset
1137 .. _v4l2-mpeg-video-h264-entropy-mode:
1142 enum v4l2_mpeg_video_h264_entropy_mode -
1143 Entropy coding mode for H264 - CABAC/CAVALC. Applicable to the H264
1150 .. flat-table::
1151 :header-rows: 0
1152 :stub-columns: 0
1154 * - ``V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC``
1155 - Use CAVLC entropy coding.
1156 * - ``V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC``
1157 - Use CABAC entropy coding.
1186 for which the whole frame will be intra-refreshed. An example:
1189 intra-refreshed on frameX and the other half of macroblocks
1304 .. _v4l2-mpeg-video-vbv-size:
1316 .. _v4l2-mpeg-video-vbv-delay:
1321 .. _v4l2-mpeg-video-hor-search-range:
1329 .. _v4l2-mpeg-video-vert-search-range:
1337 .. _v4l2-mpeg-video-force-key-frame:
1341 encoders. This is a general, codec-agnostic keyframe control.
1343 .. _v4l2-mpeg-video-h264-cpb-size:
1352 Period between I-frames in the open GOP for H264. In case of an open
1353 GOP this is the period between two I-frames. The period between IDR
1356 Refresh is an I-frame after which no prior frames are referenced.
1361 .. _v4l2-mpeg-video-header-mode:
1366 enum v4l2_mpeg_video_header_mode -
1377 .. flat-table::
1378 :header-rows: 0
1379 :stub-columns: 0
1381 * - ``V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE``
1382 - The stream header is returned separately in the first buffer.
1383 * - ``V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME``
1384 - The stream header is returned together with the first encoded
1419 .. _v4l2-mpeg-video-h264-sei-fp-arrangement-type:
1424 enum v4l2_mpeg_video_h264_sei_fp_arrangement_type -
1434 .. flat-table::
1435 :header-rows: 0
1436 :stub-columns: 0
1438 * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD``
1439 - Pixels are alternatively from L and R.
1440 * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN``
1441 - L and R are interlaced by column.
1442 * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW``
1443 - L and R are interlaced by row.
1444 * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE``
1445 - L is on the left, R on the right.
1446 * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM``
1447 - L is on top, R on bottom.
1448 * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL``
1449 - One view per frame.
1462 .. _v4l2-mpeg-video-h264-fmo-map-type:
1467 enum v4l2_mpeg_video_h264_fmo_map_type -
1478 .. flat-table::
1479 :header-rows: 0
1480 :stub-columns: 0
1482 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES``
1483 - Slices are interleaved one after other with macroblocks in run
1485 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES``
1486 - Scatters the macroblocks based on a mathematical function known to
1488 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER``
1489 - Macroblocks arranged in rectangular areas or regions of interest.
1490 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT``
1491 - Slice groups grow in a cyclic way from centre to outwards.
1492 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN``
1493 - Slice groups grow in raster scan pattern from left to right.
1494 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN``
1495 - Slice groups grow in wipe scan pattern from top to bottom.
1496 * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT``
1497 - User defined map type.
1508 .. _v4l2-mpeg-video-h264-fmo-change-direction:
1513 enum v4l2_mpeg_video_h264_fmo_change_dir -
1519 .. flat-table::
1520 :header-rows: 0
1521 :stub-columns: 0
1523 * - ``V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT``
1524 - Raster scan or wipe right.
1525 * - ``V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT``
1526 - Reverse raster scan or wipe left.
1544 The supplied 32-bit integer is interpreted as follows (bit 0 = least
1549 .. flat-table::
1550 :header-rows: 0
1551 :stub-columns: 0
1553 * - Bit 0:15
1554 - Slice ID
1555 * - Bit 16:32
1556 - Slice position or order
1563 .. _v4l2-mpeg-video-h264-hierarchical-coding-type:
1568 enum v4l2_mpeg_video_h264_hierarchical_coding_type -
1574 .. flat-table::
1575 :header-rows: 0
1576 :stub-columns: 0
1578 * - ``V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B``
1579 - Hierarchical B coding.
1580 * - ``V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P``
1581 - Hierarchical P coding.
1591 encoder. The supplied 32-bit integer is interpreted as follows (bit
1596 .. flat-table::
1597 :header-rows: 0
1598 :stub-columns: 0
1600 * - Bit 0:15
1601 - QP value
1602 * - Bit 16:32
1603 - Layer number
1647 .. _mfc51-control-id:
1650 -------------------
1682 Padding enable in the encoder - use a color instead of repeating
1687 32-bit integer is interpreted as follows (bit 0 = least significant
1692 .. flat-table::
1693 :header-rows: 0
1694 :stub-columns: 0
1696 * - Bit 0:7
1697 - V chrominance information
1698 * - Bit 8:15
1699 - U chrominance information
1700 * - Bit 16:23
1701 - Y luminance information
1702 * - Bit 24:31
1703 - Must be zero.
1744 .. _v4l2-mpeg-mfc51-video-frame-skip-mode:
1754 enum v4l2_mpeg_mfc51_video_frame_skip_mode -
1767 .. flat-table::
1768 :header-rows: 0
1769 :stub-columns: 0
1771 * - ``V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_DISABLED``
1772 - Frame skip mode is disabled.
1773 * - ``V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT``
1774 - Frame skip mode enabled and buffer limit is set by the chosen
1776 * - ``V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT``
1777 - Frame skip mode enabled and buffer limit is set by the VBV
1785 Enable rate-control with fixed target bit. If this setting is
1796 .. _v4l2-mpeg-mfc51-video-force-frame-type:
1801 enum v4l2_mpeg_mfc51_video_force_frame_type -
1807 .. flat-table::
1808 :header-rows: 0
1809 :stub-columns: 0
1811 * - ``V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_DISABLED``
1812 - Forcing a specific frame type disabled.
1813 * - ``V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_I_FRAME``
1814 - Force an I-frame.
1815 * - ``V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_NOT_CODED``
1816 - Force a non-coded frame.
1826 .. _cx2341x-control-id:
1829 -------------------
1831 .. _v4l2-mpeg-cx2341x-video-spatial-filter-mode:
1836 enum v4l2_mpeg_cx2341x_video_spatial_filter_mode -
1843 .. flat-table::
1844 :header-rows: 0
1845 :stub-columns: 0
1847 * - ``V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL``
1848 - Choose the filter manually
1849 * - ``V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO``
1850 - Choose the filter automatically
1854 ``V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (integer (0-15))``
1858 .. _luma-spatial-filter-type:
1863 enum v4l2_mpeg_cx2341x_video_luma_spatial_filter_type -
1873 .. flat-table::
1874 :header-rows: 0
1875 :stub-columns: 0
1877 * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF``
1878 - No filter
1879 * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR``
1880 - One-dimensional horizontal
1881 * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT``
1882 - One-dimensional vertical
1883 * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE``
1884 - Two-dimensional separable
1885 * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE``
1886 - Two-dimensional symmetrical non-separable
1892 .. _chroma-spatial-filter-type:
1897 enum v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type -
1907 .. flat-table::
1908 :header-rows: 0
1909 :stub-columns: 0
1911 * - ``V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF``
1912 - No filter
1913 * - ``V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR``
1914 - One-dimensional horizontal
1920 .. _v4l2-mpeg-cx2341x-video-temporal-filter-mode:
1925 enum v4l2_mpeg_cx2341x_video_temporal_filter_mode -
1933 .. flat-table::
1934 :header-rows: 0
1935 :stub-columns: 0
1937 * - ``V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL``
1938 - Choose the filter manually
1939 * - ``V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO``
1940 - Choose the filter automatically
1946 ``V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (integer (0-31))``
1948 is 8 for full-scale capturing and 0 for scaled capturing.)
1950 .. _v4l2-mpeg-cx2341x-video-median-filter-type:
1955 enum v4l2_mpeg_cx2341x_video_median_filter_type -
1965 .. flat-table::
1966 :header-rows: 0
1967 :stub-columns: 0
1969 * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF``
1970 - No filter
1971 * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR``
1972 - Horizontal filter
1973 * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT``
1974 - Vertical filter
1975 * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT``
1976 - Horizontal and vertical filter
1977 * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG``
1978 - Diagonal filter
1984 ``V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (integer (0-255))``
1988 ``V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (integer (0-255))``
1992 ``V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM (integer (0-255))``
1996 ``V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP (integer (0-255))``
2001 The CX2341X MPEG encoder can insert one empty MPEG-2 PES packet into
2016 .. _vpx-control-id:
2019 ---------------
2021 .. _v4l2-vpx-num-partitions:
2026 enum v4l2_vp8_num_partitions -
2032 .. flat-table::
2033 :header-rows: 0
2034 :stub-columns: 0
2036 * - ``V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION``
2037 - 1 coefficient partition
2038 * - ``V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS``
2039 - 2 coefficient partitions
2040 * - ``V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS``
2041 - 4 coefficient partitions
2042 * - ``V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS``
2043 - 8 coefficient partitions
2050 .. _v4l2-vpx-num-ref-frames:
2055 enum v4l2_vp8_num_ref_frames -
2065 .. flat-table::
2066 :header-rows: 0
2067 :stub-columns: 0
2069 * - ``V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME``
2070 - Last encoded frame will be searched
2071 * - ``V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME``
2072 - Two frames will be searched among the last encoded frame, the
2075 * - ``V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME``
2076 - The last encoded frame, the golden frame and the altref frame will
2102 .. _v4l2-vpx-golden-frame-sel:
2107 enum v4l2_vp8_golden_frame_sel -
2116 .. flat-table::
2117 :header-rows: 0
2118 :stub-columns: 0
2120 * - ``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV``
2121 - Use the (n-2)th frame as a golden frame, current frame index being
2123 * - ``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD``
2124 - Use the previous specific frame indicated by
2145 .. _v4l2-mpeg-video-vp8-profile:
2150 enum v4l2_mpeg_video_vp8_profile -
2155 .. flat-table::
2156 :header-rows: 0
2157 :stub-columns: 0
2159 * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_0``
2160 - Profile 0
2161 * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_1``
2162 - Profile 1
2163 * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_2``
2164 - Profile 2
2165 * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_3``
2166 - Profile 3
2168 .. _v4l2-mpeg-video-vp9-profile:
2173 enum v4l2_mpeg_video_vp9_profile -
2178 .. flat-table::
2179 :header-rows: 0
2180 :stub-columns: 0
2182 * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_0``
2183 - Profile 0
2184 * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_1``
2185 - Profile 1
2186 * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_2``
2187 - Profile 2
2188 * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_3``
2189 - Profile 3
2191 .. _v4l2-mpeg-video-vp9-level:
2195 enum v4l2_mpeg_video_vp9_level -
2201 .. flat-table::
2202 :header-rows: 0
2203 :stub-columns: 0
2205 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_1_0``
2206 - Level 1
2207 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_1_1``
2208 - Level 1.1
2209 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_2_0``
2210 - Level 2
2211 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_2_1``
2212 - Level 2.1
2213 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_3_0``
2214 - Level 3
2215 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_3_1``
2216 - Level 3.1
2217 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_4_0``
2218 - Level 4
2219 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_4_1``
2220 - Level 4.1
2221 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_5_0``
2222 - Level 5
2223 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_5_1``
2224 - Level 5.1
2225 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_5_2``
2226 - Level 5.2
2227 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_6_0``
2228 - Level 6
2229 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_6_1``
2230 - Level 6.1
2231 * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_6_2``
2232 - Level 6.2
2242 .. _hevc-control-id:
2245 ----------------------
2312 .. _v4l2-hevc-hier-coding-type:
2317 enum v4l2_mpeg_video_hevc_hier_coding_type -
2326 .. flat-table::
2327 :header-rows: 0
2328 :stub-columns: 0
2330 * - ``V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_B``
2331 - Use the B frame for hierarchical coding.
2332 * - ``V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_P``
2333 - Use the P frame for hierarchical coding.
2342 (non-hierarchial coding), it should be zero. Possible values are [0, 6].
2381 .. _v4l2-hevc-profile:
2386 enum v4l2_mpeg_video_hevc_profile -
2395 .. flat-table::
2396 :header-rows: 0
2397 :stub-columns: 0
2399 * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN``
2400 - Main profile.
2401 * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE``
2402 - Main still picture profile.
2403 * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10``
2404 - Main 10 profile.
2411 .. _v4l2-hevc-level:
2416 enum v4l2_mpeg_video_hevc_level -
2440 .. _v4l2-hevc-tier:
2445 enum v4l2_mpeg_video_hevc_tier -
2461 .. _v4l2-hevc-loop-filter-mode:
2466 enum v4l2_mpeg_video_hevc_loop_filter_mode -
2475 .. flat-table::
2476 :header-rows: 0
2477 :stub-columns: 0
2479 * - ``V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_DISABLED``
2480 - Loop filter is disabled.
2481 * - ``V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_ENABLED``
2482 - Loop filter is enabled.
2483 * - ``V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY``
2484 - Loop filter is disabled at the slice boundary.
2492 Selects HEVC loop filter beta offset. The valid range is [-6, +6].
2495 Selects HEVC loop filter tc offset. The valid range is [-6, +6].
2497 .. _v4l2-hevc-refresh-type:
2502 enum v4l2_mpeg_video_hevc_hier_refresh_type -
2513 .. flat-table::
2514 :header-rows: 0
2515 :stub-columns: 0
2517 * - ``V4L2_MPEG_VIDEO_HEVC_REFRESH_NONE``
2518 - Use the B frame for hierarchical coding.
2519 * - ``V4L2_MPEG_VIDEO_HEVC_REFRESH_CRA``
2520 - Use CRA (Clean Random Access Unit) picture encoding.
2521 * - ``V4L2_MPEG_VIDEO_HEVC_REFRESH_IDR``
2522 - Use IDR (Instantaneous Decoding Refresh) picture encoding.
2559 Indicates bi-linear interpolation is conditionally used in the intra
2560 prediction filtering process in the CVS when set to 1. Indicates bi-linear
2578 .. _v4l2-hevc-size-of-length-field:
2583 enum v4l2_mpeg_video_hevc_size_of_length_field -
2593 .. flat-table::
2594 :header-rows: 0
2595 :stub-columns: 0
2597 * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_0``
2598 - Generate start code pattern (Normal).
2599 * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_1``
2600 - Generate size of length field instead of start code pattern and length is 1.
2601 * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_2``
2602 - Generate size of length field instead of start code pattern and length is 2.
2603 * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_4``
2604 - Generate size of length field instead of start code pattern and length is 4.
2633 P-Frame can use 1 or 2 frames for reference.
2640 .. _v4l2-mpeg-hevc:
2659 .. flat-table:: struct v4l2_ctrl_hevc_sps
2660 :header-rows: 0
2661 :stub-columns: 0
2664 * - __u16
2665 - ``pic_width_in_luma_samples``
2666 -
2667 * - __u16
2668 - ``pic_height_in_luma_samples``
2669 -
2670 * - __u8
2671 - ``bit_depth_luma_minus8``
2672 -
2673 * - __u8
2674 - ``bit_depth_chroma_minus8``
2675 -
2676 * - __u8
2677 - ``log2_max_pic_order_cnt_lsb_minus4``
2678 -
2679 * - __u8
2680 - ``sps_max_dec_pic_buffering_minus1``
2681 -
2682 * - __u8
2683 - ``sps_max_num_reorder_pics``
2684 -
2685 * - __u8
2686 - ``sps_max_latency_increase_plus1``
2687 -
2688 * - __u8
2689 - ``log2_min_luma_coding_block_size_minus3``
2690 -
2691 * - __u8
2692 - ``log2_diff_max_min_luma_coding_block_size``
2693 -
2694 * - __u8
2695 - ``log2_min_luma_transform_block_size_minus2``
2696 -
2697 * - __u8
2698 - ``log2_diff_max_min_luma_transform_block_size``
2699 -
2700 * - __u8
2701 - ``max_transform_hierarchy_depth_inter``
2702 -
2703 * - __u8
2704 - ``max_transform_hierarchy_depth_intra``
2705 -
2706 * - __u8
2707 - ``pcm_sample_bit_depth_luma_minus1``
2708 -
2709 * - __u8
2710 - ``pcm_sample_bit_depth_chroma_minus1``
2711 -
2712 * - __u8
2713 - ``log2_min_pcm_luma_coding_block_size_minus3``
2714 -
2715 * - __u8
2716 - ``log2_diff_max_min_pcm_luma_coding_block_size``
2717 -
2718 * - __u8
2719 - ``num_short_term_ref_pic_sets``
2720 -
2721 * - __u8
2722 - ``num_long_term_ref_pics_sps``
2723 -
2724 * - __u8
2725 - ``chroma_format_idc``
2726 -
2727 * - __u8
2728 - ``sps_max_sub_layers_minus1``
2729 -
2730 * - __u64
2731 - ``flags``
2732 - See :ref:`Sequence Parameter Set Flags <hevc_sps_flags>`
2748 .. flat-table::
2749 :header-rows: 0
2750 :stub-columns: 0
2753 * - ``V4L2_HEVC_SPS_FLAG_SEPARATE_COLOUR_PLANE``
2754 - 0x00000001
2755 -
2756 * - ``V4L2_HEVC_SPS_FLAG_SCALING_LIST_ENABLED``
2757 - 0x00000002
2758 -
2759 * - ``V4L2_HEVC_SPS_FLAG_AMP_ENABLED``
2760 - 0x00000004
2761 -
2762 * - ``V4L2_HEVC_SPS_FLAG_SAMPLE_ADAPTIVE_OFFSET``
2763 - 0x00000008
2764 -
2765 * - ``V4L2_HEVC_SPS_FLAG_PCM_ENABLED``
2766 - 0x00000010
2767 -
2768 * - ``V4L2_HEVC_SPS_FLAG_PCM_LOOP_FILTER_DISABLED``
2769 - 0x00000020
2770 -
2771 * - ``V4L2_HEVC_SPS_FLAG_LONG_TERM_REF_PICS_PRESENT``
2772 - 0x00000040
2773 -
2774 * - ``V4L2_HEVC_SPS_FLAG_SPS_TEMPORAL_MVP_ENABLED``
2775 - 0x00000080
2776 -
2777 * - ``V4L2_HEVC_SPS_FLAG_STRONG_INTRA_SMOOTHING_ENABLED``
2778 - 0x00000100
2779 -
2798 .. flat-table:: struct v4l2_ctrl_hevc_pps
2799 :header-rows: 0
2800 :stub-columns: 0
2803 * - __u8
2804 - ``num_extra_slice_header_bits``
2805 -
2806 * - __u8
2807 - ``num_ref_idx_l0_default_active_minus1``
2808 - Specifies the inferred value of num_ref_idx_l0_active_minus1
2809 * - __u8
2810 - ``num_ref_idx_l1_default_active_minus1``
2811 - Specifies the inferred value of num_ref_idx_l1_active_minus1
2812 * - __s8
2813 - ``init_qp_minus26``
2814 -
2815 * - __u8
2816 - ``diff_cu_qp_delta_depth``
2817 -
2818 * - __s8
2819 - ``pps_cb_qp_offset``
2820 -
2821 * - __s8
2822 - ``pps_cr_qp_offset``
2823 -
2824 * - __u8
2825 - ``num_tile_columns_minus1``
2826 -
2827 * - __u8
2828 - ``num_tile_rows_minus1``
2829 -
2830 * - __u8
2831 - ``column_width_minus1[20]``
2832 -
2833 * - __u8
2834 - ``row_height_minus1[22]``
2835 -
2836 * - __s8
2837 - ``pps_beta_offset_div2``
2838 -
2839 * - __s8
2840 - ``pps_tc_offset_div2``
2841 -
2842 * - __u8
2843 - ``log2_parallel_merge_level_minus2``
2844 -
2845 * - __u8
2846 - ``padding[4]``
2847 - Applications and drivers must set this to zero.
2848 * - __u64
2849 - ``flags``
2850 - See :ref:`Picture Parameter Set Flags <hevc_pps_flags>`
2860 .. flat-table::
2861 :header-rows: 0
2862 :stub-columns: 0
2865 * - ``V4L2_HEVC_PPS_FLAG_DEPENDENT_SLICE_SEGMENT_ENABLED``
2866 - 0x00000001
2867 -
2868 * - ``V4L2_HEVC_PPS_FLAG_OUTPUT_FLAG_PRESENT``
2869 - 0x00000002
2870 -
2871 * - ``V4L2_HEVC_PPS_FLAG_SIGN_DATA_HIDING_ENABLED``
2872 - 0x00000004
2873 -
2874 * - ``V4L2_HEVC_PPS_FLAG_CABAC_INIT_PRESENT``
2875 - 0x00000008
2876 -
2877 * - ``V4L2_HEVC_PPS_FLAG_CONSTRAINED_INTRA_PRED``
2878 - 0x00000010
2879 -
2880 * - ``V4L2_HEVC_PPS_FLAG_TRANSFORM_SKIP_ENABLED``
2881 - 0x00000020
2882 -
2883 * - ``V4L2_HEVC_PPS_FLAG_CU_QP_DELTA_ENABLED``
2884 - 0x00000040
2885 -
2886 * - ``V4L2_HEVC_PPS_FLAG_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT``
2887 - 0x00000080
2888 -
2889 * - ``V4L2_HEVC_PPS_FLAG_WEIGHTED_PRED``
2890 - 0x00000100
2891 -
2892 * - ``V4L2_HEVC_PPS_FLAG_WEIGHTED_BIPRED``
2893 - 0x00000200
2894 -
2895 * - ``V4L2_HEVC_PPS_FLAG_TRANSQUANT_BYPASS_ENABLED``
2896 - 0x00000400
2897 -
2898 * - ``V4L2_HEVC_PPS_FLAG_TILES_ENABLED``
2899 - 0x00000800
2900 -
2901 * - ``V4L2_HEVC_PPS_FLAG_ENTROPY_CODING_SYNC_ENABLED``
2902 - 0x00001000
2903 -
2904 * - ``V4L2_HEVC_PPS_FLAG_LOOP_FILTER_ACROSS_TILES_ENABLED``
2905 - 0x00002000
2906 -
2907 * - ``V4L2_HEVC_PPS_FLAG_PPS_LOOP_FILTER_ACROSS_SLICES_ENABLED``
2908 - 0x00004000
2909 -
2910 * - ``V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_OVERRIDE_ENABLED``
2911 - 0x00008000
2912 -
2913 * - ``V4L2_HEVC_PPS_FLAG_PPS_DISABLE_DEBLOCKING_FILTER``
2914 - 0x00010000
2915 -
2916 * - ``V4L2_HEVC_PPS_FLAG_LISTS_MODIFICATION_PRESENT``
2917 - 0x00020000
2918 -
2919 * - ``V4L2_HEVC_PPS_FLAG_SLICE_SEGMENT_HEADER_EXTENSION_PRESENT``
2920 - 0x00040000
2921 -
2922 * - ``V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_CONTROL_PRESENT``
2923 - 0x00080000
2924 - Specifies the presence of deblocking filter control syntax elements in
2926 * - ``V4L2_HEVC_PPS_FLAG_UNIFORM_SPACING``
2927 - 0x00100000
2928 - Specifies that tile column boundaries and likewise tile row boundaries
2936 Specifies various slice-specific parameters, especially from the NAL unit
2953 .. flat-table:: struct v4l2_ctrl_hevc_slice_params
2954 :header-rows: 0
2955 :stub-columns: 0
2958 * - __u32
2959 - ``bit_size``
2960 - Size (in bits) of the current slice data.
2961 * - __u32
2962 - ``data_bit_offset``
2963 - Offset (in bits) to the video data in the current slice data.
2964 * - __u8
2965 - ``nal_unit_type``
2966 -
2967 * - __u8
2968 - ``nuh_temporal_id_plus1``
2969 -
2970 * - __u8
2971 - ``slice_type``
2972 -
2975 * - __u8
2976 - ``colour_plane_id``
2977 -
2978 * - __u16
2979 - ``slice_pic_order_cnt``
2980 -
2981 * - __u8
2982 - ``num_ref_idx_l0_active_minus1``
2983 -
2984 * - __u8
2985 - ``num_ref_idx_l1_active_minus1``
2986 -
2987 * - __u8
2988 - ``collocated_ref_idx``
2989 -
2990 * - __u8
2991 - ``five_minus_max_num_merge_cand``
2992 -
2993 * - __s8
2994 - ``slice_qp_delta``
2995 -
2996 * - __s8
2997 - ``slice_cb_qp_offset``
2998 -
2999 * - __s8
3000 - ``slice_cr_qp_offset``
3001 -
3002 * - __s8
3003 - ``slice_act_y_qp_offset``
3004 -
3005 * - __s8
3006 - ``slice_act_cb_qp_offset``
3007 -
3008 * - __s8
3009 - ``slice_act_cr_qp_offset``
3010 -
3011 * - __s8
3012 - ``slice_beta_offset_div2``
3013 -
3014 * - __s8
3015 - ``slice_tc_offset_div2``
3016 -
3017 * - __u8
3018 - ``pic_struct``
3019 -
3020 * - __u32
3021 - ``slice_segment_addr``
3022 -
3023 * - __u8
3024 - ``ref_idx_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3025 - The list of L0 reference elements as indices in the DPB.
3026 * - __u8
3027 - ``ref_idx_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3028 - The list of L1 reference elements as indices in the DPB.
3029 * - __u8
3030 - ``padding``
3031 - Applications and drivers must set this to zero.
3032 * - struct :c:type:`v4l2_hevc_pred_weight_table`
3033 - ``pred_weight_table``
3034 - The prediction weight coefficients for inter-picture prediction.
3035 * - __u64
3036 - ``flags``
3037 - See :ref:`Slice Parameters Flags <hevc_slice_params_flags>`
3051 .. flat-table::
3052 :header-rows: 0
3053 :stub-columns: 0
3056 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_LUMA``
3057 - 0x00000001
3058 -
3059 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_CHROMA``
3060 - 0x00000002
3061 -
3062 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_TEMPORAL_MVP_ENABLED``
3063 - 0x00000004
3064 -
3065 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_MVD_L1_ZERO``
3066 - 0x00000008
3067 -
3068 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_CABAC_INIT``
3069 - 0x00000010
3070 -
3071 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_COLLOCATED_FROM_L0``
3072 - 0x00000020
3073 -
3074 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_USE_INTEGER_MV``
3075 - 0x00000040
3076 -
3077 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_DEBLOCKING_FILTER_DISABLED``
3078 - 0x00000080
3079 -
3080 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_LOOP_FILTER_ACROSS_SLICES_ENABLED``
3081 - 0x00000100
3082 -
3083 * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_DEPENDENT_SLICE_SEGMENT``
3084 - 0x00000200
3085 -
3099 .. flat-table:: struct v4l2_hevc_dpb_entry
3100 :header-rows: 0
3101 :stub-columns: 0
3104 * - __u64
3105 - ``timestamp``
3106 - Timestamp of the V4L2 capture buffer to use as reference, used
3107 with B-coded and P-coded frames. The timestamp refers to the
3111 * - __u8
3112 - ``rps``
3113 - The reference set for the reference frame
3117 * - __u8
3118 - ``field_pic``
3119 - Whether the reference is a field picture or a frame.
3120 * - __u16
3121 - ``pic_order_cnt[2]``
3122 - The picture order count of the reference. Only the first element of the
3124 top field and the second the bottom field in field-coded pictures.
3125 * - __u8
3126 - ``padding[2]``
3127 - Applications and drivers must set this to zero.
3141 .. flat-table:: struct v4l2_hevc_pred_weight_table
3142 :header-rows: 0
3143 :stub-columns: 0
3146 * - __u8
3147 - ``luma_log2_weight_denom``
3148 -
3149 * - __s8
3150 - ``delta_chroma_log2_weight_denom``
3151 -
3152 * - __s8
3153 - ``delta_luma_weight_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3154 -
3155 * - __s8
3156 - ``luma_offset_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3157 -
3158 * - __s8
3159 - ``delta_chroma_weight_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]``
3160 -
3161 * - __s8
3162 - ``chroma_offset_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]``
3163 -
3164 * - __s8
3165 - ``delta_luma_weight_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3166 -
3167 * - __s8
3168 - ``luma_offset_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3169 -
3170 * - __s8
3171 - ``delta_chroma_weight_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]``
3172 -
3173 * - __s8
3174 - ``chroma_offset_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]``
3175 -
3176 * - __u8
3177 - ``padding[6]``
3178 - Applications and drivers must set this to zero.
3185 Specifies the decoding mode to use. Currently exposes slice-based and
3186 frame-based decoding but new modes might be added later on.
3207 .. flat-table::
3208 :header-rows: 0
3209 :stub-columns: 0
3212 * - ``V4L2_MPEG_VIDEO_HEVC_DECODE_MODE_SLICE_BASED``
3213 - 0
3214 - Decoding is done at the slice granularity.
3216 * - ``V4L2_MPEG_VIDEO_HEVC_DECODE_MODE_FRAME_BASED``
3217 - 1
3218 - Decoding is done at the frame granularity.
3244 .. flat-table::
3245 :header-rows: 0
3246 :stub-columns: 0
3249 * - ``V4L2_MPEG_VIDEO_HEVC_START_CODE_NONE``
3250 - 0
3251 - Selecting this value specifies that HEVC slices are passed
3255 * - ``V4L2_MPEG_VIDEO_HEVC_START_CODE_ANNEX_B``
3256 - 1
3257 - Selecting this value specifies that HEVC slices are expected
3259 valid start codes can be 3-bytes 0x000001 or 4-bytes 0x00000001.
3268 Source Rec. ITU-T H.264 (06/2019); G.7.4.1.1, G.8.8.1.
3278 and given this LTR index which ranges from 0 to LTR_COUNT-1.
3280 Source Rec. ITU-T H.264 (06/2019); Table 7.9
3285 This provides a bitmask which consists of bits [0, LTR_COUNT-1].
3300 .. flat-table:: struct v4l2_ctrl_hevc_decode_params
3301 :header-rows: 0
3302 :stub-columns: 0
3305 * - __s32
3306 - ``pic_order_cnt_val``
3307 - PicOrderCntVal as described in section 8.3.1 "Decoding process
3309 * - __u8
3310 - ``num_active_dpb_entries``
3311 - The number of entries in ``dpb``.
3312 * - struct :c:type:`v4l2_hevc_dpb_entry`
3313 - ``dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3314 - The decoded picture buffer, for meta-data about reference frames.
3315 * - __u8
3316 - ``num_poc_st_curr_before``
3317 - The number of reference pictures in the short-term set that come before
3319 * - __u8
3320 - ``num_poc_st_curr_after``
3321 - The number of reference pictures in the short-term set that come after
3323 * - __u8
3324 - ``num_poc_lt_curr``
3325 - The number of reference pictures in the long-term set.
3326 * - __u8
3327 - ``poc_st_curr_before[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3328 - PocStCurrBefore as described in section 8.3.2 "Decoding process for reference
3330 * - __u8
3331 - ``poc_st_curr_after[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3332 - PocStCurrAfter as described in section 8.3.2 "Decoding process for reference
3334 * - __u8
3335 - ``poc_lt_curr[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
3336 - PocLtCurr as described in section 8.3.2 "Decoding process for reference
3338 * - __u64
3339 - ``flags``
3340 - See :ref:`Decode Parameters Flags <hevc_decode_params_flags>`
3348 .. flat-table::
3349 :header-rows: 0
3350 :stub-columns: 0
3353 * - ``V4L2_HEVC_DECODE_PARAM_FLAG_IRAP_PIC``
3354 - 0x00000001
3355 -
3356 * - ``V4L2_HEVC_DECODE_PARAM_FLAG_IDR_PIC``
3357 - 0x00000002
3358 -
3359 * - ``V4L2_HEVC_DECODE_PARAM_FLAG_NO_OUTPUT_OF_PRIOR``
3360 - 0x00000004
3361 -