18c2ecf20Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ci.. _mpeg-controls: 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci*********************** 68c2ecf20Sopenharmony_ciCodec Control Reference 78c2ecf20Sopenharmony_ci*********************** 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ciBelow all controls within the Codec control class are described. First 108c2ecf20Sopenharmony_cithe generic controls, then controls specific for certain hardware. 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci.. note:: 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci These controls are applicable to all codecs and not just MPEG. The 158c2ecf20Sopenharmony_ci defines are prefixed with V4L2_CID_MPEG/V4L2_MPEG as the controls 168c2ecf20Sopenharmony_ci were originally made for MPEG codecs and later extended to cover all 178c2ecf20Sopenharmony_ci encoding formats. 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciGeneric Codec Controls 218c2ecf20Sopenharmony_ci====================== 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci.. _mpeg-control-id: 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciCodec Control IDs 278c2ecf20Sopenharmony_ci----------------- 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CLASS (class)`` 308c2ecf20Sopenharmony_ci The Codec class descriptor. Calling 318c2ecf20Sopenharmony_ci :ref:`VIDIOC_QUERYCTRL` for this control will 328c2ecf20Sopenharmony_ci return a description of this control class. This description can be 338c2ecf20Sopenharmony_ci used as the caption of a Tab page in a GUI, for example. 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci.. _v4l2-mpeg-stream-type: 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_TYPE`` 388c2ecf20Sopenharmony_ci (enum) 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_cienum v4l2_mpeg_stream_type - 418c2ecf20Sopenharmony_ci The MPEG-1, -2 or -4 output stream type. One cannot assume anything 428c2ecf20Sopenharmony_ci here. Each hardware MPEG encoder tends to support different subsets 438c2ecf20Sopenharmony_ci of the available MPEG stream types. This control is specific to 448c2ecf20Sopenharmony_ci multiplexed MPEG streams. The currently defined stream types are: 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci.. flat-table:: 498c2ecf20Sopenharmony_ci :header-rows: 0 508c2ecf20Sopenharmony_ci :stub-columns: 0 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_PS`` 538c2ecf20Sopenharmony_ci - MPEG-2 program stream 548c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_TS`` 558c2ecf20Sopenharmony_ci - MPEG-2 transport stream 568c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_TYPE_MPEG1_SS`` 578c2ecf20Sopenharmony_ci - MPEG-1 system stream 588c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_DVD`` 598c2ecf20Sopenharmony_ci - MPEG-2 DVD-compatible stream 608c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_TYPE_MPEG1_VCD`` 618c2ecf20Sopenharmony_ci - MPEG-1 VCD-compatible stream 628c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD`` 638c2ecf20Sopenharmony_ci - MPEG-2 SVCD-compatible stream 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_PID_PMT (integer)`` 688c2ecf20Sopenharmony_ci Program Map Table Packet ID for the MPEG transport stream (default 698c2ecf20Sopenharmony_ci 16) 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_PID_AUDIO (integer)`` 728c2ecf20Sopenharmony_ci Audio Packet ID for the MPEG transport stream (default 256) 738c2ecf20Sopenharmony_ci 748c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_PID_VIDEO (integer)`` 758c2ecf20Sopenharmony_ci Video Packet ID for the MPEG transport stream (default 260) 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_PID_PCR (integer)`` 788c2ecf20Sopenharmony_ci Packet ID for the MPEG transport stream carrying PCR fields (default 798c2ecf20Sopenharmony_ci 259) 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_PES_ID_AUDIO (integer)`` 828c2ecf20Sopenharmony_ci Audio ID for MPEG PES 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_PES_ID_VIDEO (integer)`` 858c2ecf20Sopenharmony_ci Video ID for MPEG PES 868c2ecf20Sopenharmony_ci 878c2ecf20Sopenharmony_ci.. _v4l2-mpeg-stream-vbi-fmt: 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_STREAM_VBI_FMT`` 908c2ecf20Sopenharmony_ci (enum) 918c2ecf20Sopenharmony_ci 928c2ecf20Sopenharmony_cienum v4l2_mpeg_stream_vbi_fmt - 938c2ecf20Sopenharmony_ci Some cards can embed VBI data (e. g. Closed Caption, Teletext) into 948c2ecf20Sopenharmony_ci the MPEG stream. This control selects whether VBI data should be 958c2ecf20Sopenharmony_ci embedded, and if so, what embedding method should be used. The list 968c2ecf20Sopenharmony_ci of possible VBI formats depends on the driver. The currently defined 978c2ecf20Sopenharmony_ci VBI format types are: 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ci 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{6.6 cm}|p{10.9cm}| 1028c2ecf20Sopenharmony_ci 1038c2ecf20Sopenharmony_ci.. flat-table:: 1048c2ecf20Sopenharmony_ci :header-rows: 0 1058c2ecf20Sopenharmony_ci :stub-columns: 0 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_VBI_FMT_NONE`` 1088c2ecf20Sopenharmony_ci - No VBI in the MPEG stream 1098c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_STREAM_VBI_FMT_IVTV`` 1108c2ecf20Sopenharmony_ci - VBI in private packets, IVTV format (documented in the kernel 1118c2ecf20Sopenharmony_ci sources in the file 1128c2ecf20Sopenharmony_ci ``Documentation/userspace-api/media/drivers/cx2341x-uapi.rst``) 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_ci 1158c2ecf20Sopenharmony_ci 1168c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-sampling-freq: 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ`` 1198c2ecf20Sopenharmony_ci (enum) 1208c2ecf20Sopenharmony_ci 1218c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_sampling_freq - 1228c2ecf20Sopenharmony_ci MPEG Audio sampling frequency. Possible values are: 1238c2ecf20Sopenharmony_ci 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ci 1268c2ecf20Sopenharmony_ci.. flat-table:: 1278c2ecf20Sopenharmony_ci :header-rows: 0 1288c2ecf20Sopenharmony_ci :stub-columns: 0 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100`` 1318c2ecf20Sopenharmony_ci - 44.1 kHz 1328c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000`` 1338c2ecf20Sopenharmony_ci - 48 kHz 1348c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000`` 1358c2ecf20Sopenharmony_ci - 32 kHz 1368c2ecf20Sopenharmony_ci 1378c2ecf20Sopenharmony_ci 1388c2ecf20Sopenharmony_ci 1398c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-encoding: 1408c2ecf20Sopenharmony_ci 1418c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_ENCODING`` 1428c2ecf20Sopenharmony_ci (enum) 1438c2ecf20Sopenharmony_ci 1448c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_encoding - 1458c2ecf20Sopenharmony_ci MPEG Audio encoding. This control is specific to multiplexed MPEG 1468c2ecf20Sopenharmony_ci streams. Possible values are: 1478c2ecf20Sopenharmony_ci 1488c2ecf20Sopenharmony_ci 1498c2ecf20Sopenharmony_ci 1508c2ecf20Sopenharmony_ci.. flat-table:: 1518c2ecf20Sopenharmony_ci :header-rows: 0 1528c2ecf20Sopenharmony_ci :stub-columns: 0 1538c2ecf20Sopenharmony_ci 1548c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_ENCODING_LAYER_1`` 1558c2ecf20Sopenharmony_ci - MPEG-1/2 Layer I encoding 1568c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_ENCODING_LAYER_2`` 1578c2ecf20Sopenharmony_ci - MPEG-1/2 Layer II encoding 1588c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_ENCODING_LAYER_3`` 1598c2ecf20Sopenharmony_ci - MPEG-1/2 Layer III encoding 1608c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_ENCODING_AAC`` 1618c2ecf20Sopenharmony_ci - MPEG-2/4 AAC (Advanced Audio Coding) 1628c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_ENCODING_AC3`` 1638c2ecf20Sopenharmony_ci - AC-3 aka ATSC A/52 encoding 1648c2ecf20Sopenharmony_ci 1658c2ecf20Sopenharmony_ci 1668c2ecf20Sopenharmony_ci 1678c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-l1-bitrate: 1688c2ecf20Sopenharmony_ci 1698c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_L1_BITRATE`` 1708c2ecf20Sopenharmony_ci (enum) 1718c2ecf20Sopenharmony_ci 1728c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_l1_bitrate - 1738c2ecf20Sopenharmony_ci MPEG-1/2 Layer I bitrate. Possible values are: 1748c2ecf20Sopenharmony_ci 1758c2ecf20Sopenharmony_ci 1768c2ecf20Sopenharmony_ci 1778c2ecf20Sopenharmony_ci.. flat-table:: 1788c2ecf20Sopenharmony_ci :header-rows: 0 1798c2ecf20Sopenharmony_ci :stub-columns: 0 1808c2ecf20Sopenharmony_ci 1818c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_32K`` 1828c2ecf20Sopenharmony_ci - 32 kbit/s 1838c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_64K`` 1848c2ecf20Sopenharmony_ci - 64 kbit/s 1858c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_96K`` 1868c2ecf20Sopenharmony_ci - 96 kbit/s 1878c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_128K`` 1888c2ecf20Sopenharmony_ci - 128 kbit/s 1898c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_160K`` 1908c2ecf20Sopenharmony_ci - 160 kbit/s 1918c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_192K`` 1928c2ecf20Sopenharmony_ci - 192 kbit/s 1938c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_224K`` 1948c2ecf20Sopenharmony_ci - 224 kbit/s 1958c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_256K`` 1968c2ecf20Sopenharmony_ci - 256 kbit/s 1978c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_288K`` 1988c2ecf20Sopenharmony_ci - 288 kbit/s 1998c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_320K`` 2008c2ecf20Sopenharmony_ci - 320 kbit/s 2018c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_352K`` 2028c2ecf20Sopenharmony_ci - 352 kbit/s 2038c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_384K`` 2048c2ecf20Sopenharmony_ci - 384 kbit/s 2058c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_416K`` 2068c2ecf20Sopenharmony_ci - 416 kbit/s 2078c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L1_BITRATE_448K`` 2088c2ecf20Sopenharmony_ci - 448 kbit/s 2098c2ecf20Sopenharmony_ci 2108c2ecf20Sopenharmony_ci 2118c2ecf20Sopenharmony_ci 2128c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-l2-bitrate: 2138c2ecf20Sopenharmony_ci 2148c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_L2_BITRATE`` 2158c2ecf20Sopenharmony_ci (enum) 2168c2ecf20Sopenharmony_ci 2178c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_l2_bitrate - 2188c2ecf20Sopenharmony_ci MPEG-1/2 Layer II bitrate. Possible values are: 2198c2ecf20Sopenharmony_ci 2208c2ecf20Sopenharmony_ci 2218c2ecf20Sopenharmony_ci 2228c2ecf20Sopenharmony_ci.. flat-table:: 2238c2ecf20Sopenharmony_ci :header-rows: 0 2248c2ecf20Sopenharmony_ci :stub-columns: 0 2258c2ecf20Sopenharmony_ci 2268c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_32K`` 2278c2ecf20Sopenharmony_ci - 32 kbit/s 2288c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_48K`` 2298c2ecf20Sopenharmony_ci - 48 kbit/s 2308c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_56K`` 2318c2ecf20Sopenharmony_ci - 56 kbit/s 2328c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_64K`` 2338c2ecf20Sopenharmony_ci - 64 kbit/s 2348c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_80K`` 2358c2ecf20Sopenharmony_ci - 80 kbit/s 2368c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_96K`` 2378c2ecf20Sopenharmony_ci - 96 kbit/s 2388c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_112K`` 2398c2ecf20Sopenharmony_ci - 112 kbit/s 2408c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_128K`` 2418c2ecf20Sopenharmony_ci - 128 kbit/s 2428c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_160K`` 2438c2ecf20Sopenharmony_ci - 160 kbit/s 2448c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_192K`` 2458c2ecf20Sopenharmony_ci - 192 kbit/s 2468c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_224K`` 2478c2ecf20Sopenharmony_ci - 224 kbit/s 2488c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_256K`` 2498c2ecf20Sopenharmony_ci - 256 kbit/s 2508c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_320K`` 2518c2ecf20Sopenharmony_ci - 320 kbit/s 2528c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L2_BITRATE_384K`` 2538c2ecf20Sopenharmony_ci - 384 kbit/s 2548c2ecf20Sopenharmony_ci 2558c2ecf20Sopenharmony_ci 2568c2ecf20Sopenharmony_ci 2578c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-l3-bitrate: 2588c2ecf20Sopenharmony_ci 2598c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_L3_BITRATE`` 2608c2ecf20Sopenharmony_ci (enum) 2618c2ecf20Sopenharmony_ci 2628c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_l3_bitrate - 2638c2ecf20Sopenharmony_ci MPEG-1/2 Layer III bitrate. Possible values are: 2648c2ecf20Sopenharmony_ci 2658c2ecf20Sopenharmony_ci 2668c2ecf20Sopenharmony_ci 2678c2ecf20Sopenharmony_ci.. flat-table:: 2688c2ecf20Sopenharmony_ci :header-rows: 0 2698c2ecf20Sopenharmony_ci :stub-columns: 0 2708c2ecf20Sopenharmony_ci 2718c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_32K`` 2728c2ecf20Sopenharmony_ci - 32 kbit/s 2738c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_40K`` 2748c2ecf20Sopenharmony_ci - 40 kbit/s 2758c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_48K`` 2768c2ecf20Sopenharmony_ci - 48 kbit/s 2778c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_56K`` 2788c2ecf20Sopenharmony_ci - 56 kbit/s 2798c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_64K`` 2808c2ecf20Sopenharmony_ci - 64 kbit/s 2818c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_80K`` 2828c2ecf20Sopenharmony_ci - 80 kbit/s 2838c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_96K`` 2848c2ecf20Sopenharmony_ci - 96 kbit/s 2858c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_112K`` 2868c2ecf20Sopenharmony_ci - 112 kbit/s 2878c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_128K`` 2888c2ecf20Sopenharmony_ci - 128 kbit/s 2898c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_160K`` 2908c2ecf20Sopenharmony_ci - 160 kbit/s 2918c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_192K`` 2928c2ecf20Sopenharmony_ci - 192 kbit/s 2938c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_224K`` 2948c2ecf20Sopenharmony_ci - 224 kbit/s 2958c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_256K`` 2968c2ecf20Sopenharmony_ci - 256 kbit/s 2978c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_L3_BITRATE_320K`` 2988c2ecf20Sopenharmony_ci - 320 kbit/s 2998c2ecf20Sopenharmony_ci 3008c2ecf20Sopenharmony_ci 3018c2ecf20Sopenharmony_ci 3028c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_AAC_BITRATE (integer)`` 3038c2ecf20Sopenharmony_ci AAC bitrate in bits per second. 3048c2ecf20Sopenharmony_ci 3058c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-ac3-bitrate: 3068c2ecf20Sopenharmony_ci 3078c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_AC3_BITRATE`` 3088c2ecf20Sopenharmony_ci (enum) 3098c2ecf20Sopenharmony_ci 3108c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_ac3_bitrate - 3118c2ecf20Sopenharmony_ci AC-3 bitrate. Possible values are: 3128c2ecf20Sopenharmony_ci 3138c2ecf20Sopenharmony_ci 3148c2ecf20Sopenharmony_ci 3158c2ecf20Sopenharmony_ci.. flat-table:: 3168c2ecf20Sopenharmony_ci :header-rows: 0 3178c2ecf20Sopenharmony_ci :stub-columns: 0 3188c2ecf20Sopenharmony_ci 3198c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_32K`` 3208c2ecf20Sopenharmony_ci - 32 kbit/s 3218c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_40K`` 3228c2ecf20Sopenharmony_ci - 40 kbit/s 3238c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_48K`` 3248c2ecf20Sopenharmony_ci - 48 kbit/s 3258c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_56K`` 3268c2ecf20Sopenharmony_ci - 56 kbit/s 3278c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_64K`` 3288c2ecf20Sopenharmony_ci - 64 kbit/s 3298c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_80K`` 3308c2ecf20Sopenharmony_ci - 80 kbit/s 3318c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_96K`` 3328c2ecf20Sopenharmony_ci - 96 kbit/s 3338c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_112K`` 3348c2ecf20Sopenharmony_ci - 112 kbit/s 3358c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_128K`` 3368c2ecf20Sopenharmony_ci - 128 kbit/s 3378c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_160K`` 3388c2ecf20Sopenharmony_ci - 160 kbit/s 3398c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_192K`` 3408c2ecf20Sopenharmony_ci - 192 kbit/s 3418c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_224K`` 3428c2ecf20Sopenharmony_ci - 224 kbit/s 3438c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_256K`` 3448c2ecf20Sopenharmony_ci - 256 kbit/s 3458c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_320K`` 3468c2ecf20Sopenharmony_ci - 320 kbit/s 3478c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_384K`` 3488c2ecf20Sopenharmony_ci - 384 kbit/s 3498c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_448K`` 3508c2ecf20Sopenharmony_ci - 448 kbit/s 3518c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_512K`` 3528c2ecf20Sopenharmony_ci - 512 kbit/s 3538c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_576K`` 3548c2ecf20Sopenharmony_ci - 576 kbit/s 3558c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_AC3_BITRATE_640K`` 3568c2ecf20Sopenharmony_ci - 640 kbit/s 3578c2ecf20Sopenharmony_ci 3588c2ecf20Sopenharmony_ci 3598c2ecf20Sopenharmony_ci 3608c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-mode: 3618c2ecf20Sopenharmony_ci 3628c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_MODE`` 3638c2ecf20Sopenharmony_ci (enum) 3648c2ecf20Sopenharmony_ci 3658c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_mode - 3668c2ecf20Sopenharmony_ci MPEG Audio mode. Possible values are: 3678c2ecf20Sopenharmony_ci 3688c2ecf20Sopenharmony_ci 3698c2ecf20Sopenharmony_ci 3708c2ecf20Sopenharmony_ci.. flat-table:: 3718c2ecf20Sopenharmony_ci :header-rows: 0 3728c2ecf20Sopenharmony_ci :stub-columns: 0 3738c2ecf20Sopenharmony_ci 3748c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_STEREO`` 3758c2ecf20Sopenharmony_ci - Stereo 3768c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_JOINT_STEREO`` 3778c2ecf20Sopenharmony_ci - Joint Stereo 3788c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_DUAL`` 3798c2ecf20Sopenharmony_ci - Bilingual 3808c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_MONO`` 3818c2ecf20Sopenharmony_ci - Mono 3828c2ecf20Sopenharmony_ci 3838c2ecf20Sopenharmony_ci 3848c2ecf20Sopenharmony_ci 3858c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-mode-extension: 3868c2ecf20Sopenharmony_ci 3878c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_MODE_EXTENSION`` 3888c2ecf20Sopenharmony_ci (enum) 3898c2ecf20Sopenharmony_ci 3908c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_mode_extension - 3918c2ecf20Sopenharmony_ci Joint Stereo audio mode extension. In Layer I and II they indicate 3928c2ecf20Sopenharmony_ci which subbands are in intensity stereo. All other subbands are coded 3938c2ecf20Sopenharmony_ci in stereo. Layer III is not (yet) supported. Possible values are: 3948c2ecf20Sopenharmony_ci 3958c2ecf20Sopenharmony_ci 3968c2ecf20Sopenharmony_ci 3978c2ecf20Sopenharmony_ci.. flat-table:: 3988c2ecf20Sopenharmony_ci :header-rows: 0 3998c2ecf20Sopenharmony_ci :stub-columns: 0 4008c2ecf20Sopenharmony_ci 4018c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4`` 4028c2ecf20Sopenharmony_ci - Subbands 4-31 in intensity stereo 4038c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8`` 4048c2ecf20Sopenharmony_ci - Subbands 8-31 in intensity stereo 4058c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12`` 4068c2ecf20Sopenharmony_ci - Subbands 12-31 in intensity stereo 4078c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16`` 4088c2ecf20Sopenharmony_ci - Subbands 16-31 in intensity stereo 4098c2ecf20Sopenharmony_ci 4108c2ecf20Sopenharmony_ci 4118c2ecf20Sopenharmony_ci 4128c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-emphasis: 4138c2ecf20Sopenharmony_ci 4148c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_EMPHASIS`` 4158c2ecf20Sopenharmony_ci (enum) 4168c2ecf20Sopenharmony_ci 4178c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_emphasis - 4188c2ecf20Sopenharmony_ci Audio Emphasis. Possible values are: 4198c2ecf20Sopenharmony_ci 4208c2ecf20Sopenharmony_ci 4218c2ecf20Sopenharmony_ci 4228c2ecf20Sopenharmony_ci.. flat-table:: 4238c2ecf20Sopenharmony_ci :header-rows: 0 4248c2ecf20Sopenharmony_ci :stub-columns: 0 4258c2ecf20Sopenharmony_ci 4268c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_EMPHASIS_NONE`` 4278c2ecf20Sopenharmony_ci - None 4288c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS`` 4298c2ecf20Sopenharmony_ci - 50/15 microsecond emphasis 4308c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17`` 4318c2ecf20Sopenharmony_ci - CCITT J.17 4328c2ecf20Sopenharmony_ci 4338c2ecf20Sopenharmony_ci 4348c2ecf20Sopenharmony_ci 4358c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-crc: 4368c2ecf20Sopenharmony_ci 4378c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_CRC`` 4388c2ecf20Sopenharmony_ci (enum) 4398c2ecf20Sopenharmony_ci 4408c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_crc - 4418c2ecf20Sopenharmony_ci CRC method. Possible values are: 4428c2ecf20Sopenharmony_ci 4438c2ecf20Sopenharmony_ci 4448c2ecf20Sopenharmony_ci 4458c2ecf20Sopenharmony_ci.. flat-table:: 4468c2ecf20Sopenharmony_ci :header-rows: 0 4478c2ecf20Sopenharmony_ci :stub-columns: 0 4488c2ecf20Sopenharmony_ci 4498c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_CRC_NONE`` 4508c2ecf20Sopenharmony_ci - None 4518c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_CRC_CRC16`` 4528c2ecf20Sopenharmony_ci - 16 bit parity check 4538c2ecf20Sopenharmony_ci 4548c2ecf20Sopenharmony_ci 4558c2ecf20Sopenharmony_ci 4568c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_MUTE (boolean)`` 4578c2ecf20Sopenharmony_ci Mutes the audio when capturing. This is not done by muting audio 4588c2ecf20Sopenharmony_ci hardware, which can still produce a slight hiss, but in the encoder 4598c2ecf20Sopenharmony_ci itself, guaranteeing a fixed and reproducible audio bitstream. 0 = 4608c2ecf20Sopenharmony_ci unmuted, 1 = muted. 4618c2ecf20Sopenharmony_ci 4628c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-dec-playback: 4638c2ecf20Sopenharmony_ci 4648c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK`` 4658c2ecf20Sopenharmony_ci (enum) 4668c2ecf20Sopenharmony_ci 4678c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_dec_playback - 4688c2ecf20Sopenharmony_ci Determines how monolingual audio should be played back. Possible 4698c2ecf20Sopenharmony_ci values are: 4708c2ecf20Sopenharmony_ci 4718c2ecf20Sopenharmony_ci 4728c2ecf20Sopenharmony_ci 4738c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.8cm}|p{7.7cm}| 4748c2ecf20Sopenharmony_ci 4758c2ecf20Sopenharmony_ci.. flat-table:: 4768c2ecf20Sopenharmony_ci :header-rows: 0 4778c2ecf20Sopenharmony_ci :stub-columns: 0 4788c2ecf20Sopenharmony_ci 4798c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO`` 4808c2ecf20Sopenharmony_ci - Automatically determines the best playback mode. 4818c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO`` 4828c2ecf20Sopenharmony_ci - Stereo playback. 4838c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT`` 4848c2ecf20Sopenharmony_ci - Left channel playback. 4858c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT`` 4868c2ecf20Sopenharmony_ci - Right channel playback. 4878c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO`` 4888c2ecf20Sopenharmony_ci - Mono playback. 4898c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO`` 4908c2ecf20Sopenharmony_ci - Stereo playback with swapped left and right channels. 4918c2ecf20Sopenharmony_ci 4928c2ecf20Sopenharmony_ci 4938c2ecf20Sopenharmony_ci 4948c2ecf20Sopenharmony_ci.. _v4l2-mpeg-audio-dec-multilingual-playback: 4958c2ecf20Sopenharmony_ci 4968c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK`` 4978c2ecf20Sopenharmony_ci (enum) 4988c2ecf20Sopenharmony_ci 4998c2ecf20Sopenharmony_cienum v4l2_mpeg_audio_dec_playback - 5008c2ecf20Sopenharmony_ci Determines how multilingual audio should be played back. 5018c2ecf20Sopenharmony_ci 5028c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-encoding: 5038c2ecf20Sopenharmony_ci 5048c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_ENCODING`` 5058c2ecf20Sopenharmony_ci (enum) 5068c2ecf20Sopenharmony_ci 5078c2ecf20Sopenharmony_cienum v4l2_mpeg_video_encoding - 5088c2ecf20Sopenharmony_ci MPEG Video encoding method. This control is specific to multiplexed 5098c2ecf20Sopenharmony_ci MPEG streams. Possible values are: 5108c2ecf20Sopenharmony_ci 5118c2ecf20Sopenharmony_ci 5128c2ecf20Sopenharmony_ci 5138c2ecf20Sopenharmony_ci.. flat-table:: 5148c2ecf20Sopenharmony_ci :header-rows: 0 5158c2ecf20Sopenharmony_ci :stub-columns: 0 5168c2ecf20Sopenharmony_ci 5178c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ENCODING_MPEG_1`` 5188c2ecf20Sopenharmony_ci - MPEG-1 Video encoding 5198c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ENCODING_MPEG_2`` 5208c2ecf20Sopenharmony_ci - MPEG-2 Video encoding 5218c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC`` 5228c2ecf20Sopenharmony_ci - MPEG-4 AVC (H.264) Video encoding 5238c2ecf20Sopenharmony_ci 5248c2ecf20Sopenharmony_ci 5258c2ecf20Sopenharmony_ci 5268c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-aspect: 5278c2ecf20Sopenharmony_ci 5288c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_ASPECT`` 5298c2ecf20Sopenharmony_ci (enum) 5308c2ecf20Sopenharmony_ci 5318c2ecf20Sopenharmony_cienum v4l2_mpeg_video_aspect - 5328c2ecf20Sopenharmony_ci Video aspect. Possible values are: 5338c2ecf20Sopenharmony_ci 5348c2ecf20Sopenharmony_ci 5358c2ecf20Sopenharmony_ci 5368c2ecf20Sopenharmony_ci.. flat-table:: 5378c2ecf20Sopenharmony_ci :header-rows: 0 5388c2ecf20Sopenharmony_ci :stub-columns: 0 5398c2ecf20Sopenharmony_ci 5408c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ASPECT_1x1`` 5418c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ASPECT_4x3`` 5428c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ASPECT_16x9`` 5438c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_ASPECT_221x100`` 5448c2ecf20Sopenharmony_ci 5458c2ecf20Sopenharmony_ci 5468c2ecf20Sopenharmony_ci 5478c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_B_FRAMES (integer)`` 5488c2ecf20Sopenharmony_ci Number of B-Frames (default 2) 5498c2ecf20Sopenharmony_ci 5508c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_GOP_SIZE (integer)`` 5518c2ecf20Sopenharmony_ci GOP size (default 12) 5528c2ecf20Sopenharmony_ci 5538c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_GOP_CLOSURE (boolean)`` 5548c2ecf20Sopenharmony_ci GOP closure (default 1) 5558c2ecf20Sopenharmony_ci 5568c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_PULLDOWN (boolean)`` 5578c2ecf20Sopenharmony_ci Enable 3:2 pulldown (default 0) 5588c2ecf20Sopenharmony_ci 5598c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-bitrate-mode: 5608c2ecf20Sopenharmony_ci 5618c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_BITRATE_MODE`` 5628c2ecf20Sopenharmony_ci (enum) 5638c2ecf20Sopenharmony_ci 5648c2ecf20Sopenharmony_cienum v4l2_mpeg_video_bitrate_mode - 5658c2ecf20Sopenharmony_ci Video bitrate mode. Possible values are: 5668c2ecf20Sopenharmony_ci 5678c2ecf20Sopenharmony_ci 5688c2ecf20Sopenharmony_ci 5698c2ecf20Sopenharmony_ci.. flat-table:: 5708c2ecf20Sopenharmony_ci :header-rows: 0 5718c2ecf20Sopenharmony_ci :stub-columns: 0 5728c2ecf20Sopenharmony_ci 5738c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_BITRATE_MODE_VBR`` 5748c2ecf20Sopenharmony_ci - Variable bitrate 5758c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_BITRATE_MODE_CBR`` 5768c2ecf20Sopenharmony_ci - Constant bitrate 5778c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_BITRATE_MODE_CQ`` 5788c2ecf20Sopenharmony_ci - Constant quality 5798c2ecf20Sopenharmony_ci 5808c2ecf20Sopenharmony_ci 5818c2ecf20Sopenharmony_ci 5828c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_BITRATE (integer)`` 5838c2ecf20Sopenharmony_ci Video bitrate in bits per second. 5848c2ecf20Sopenharmony_ci 5858c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_BITRATE_PEAK (integer)`` 5868c2ecf20Sopenharmony_ci Peak video bitrate in bits per second. Must be larger or equal to 5878c2ecf20Sopenharmony_ci the average video bitrate. It is ignored if the video bitrate mode 5888c2ecf20Sopenharmony_ci is set to constant bitrate. 5898c2ecf20Sopenharmony_ci 5908c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_CONSTANT_QUALITY (integer)`` 5918c2ecf20Sopenharmony_ci Constant quality level control. This control is applicable when 5928c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_BITRATE_MODE`` value is 5938c2ecf20Sopenharmony_ci ``V4L2_MPEG_VIDEO_BITRATE_MODE_CQ``. Valid range is 1 to 100 5948c2ecf20Sopenharmony_ci where 1 indicates lowest quality and 100 indicates highest quality. 5958c2ecf20Sopenharmony_ci Encoder will decide the appropriate quantization parameter and 5968c2ecf20Sopenharmony_ci bitrate to produce requested frame quality. 5978c2ecf20Sopenharmony_ci 5988c2ecf20Sopenharmony_ci 5998c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_FRAME_SKIP_MODE (enum)`` 6008c2ecf20Sopenharmony_ci 6018c2ecf20Sopenharmony_cienum v4l2_mpeg_video_frame_skip_mode - 6028c2ecf20Sopenharmony_ci Indicates in what conditions the encoder should skip frames. If 6038c2ecf20Sopenharmony_ci encoding a frame would cause the encoded stream to be larger then a 6048c2ecf20Sopenharmony_ci chosen data limit then the frame will be skipped. Possible values 6058c2ecf20Sopenharmony_ci are: 6068c2ecf20Sopenharmony_ci 6078c2ecf20Sopenharmony_ci 6088c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.2cm}|p{8.3cm}| 6098c2ecf20Sopenharmony_ci 6108c2ecf20Sopenharmony_ci.. raw:: latex 6118c2ecf20Sopenharmony_ci 6128c2ecf20Sopenharmony_ci \small 6138c2ecf20Sopenharmony_ci 6148c2ecf20Sopenharmony_ci.. flat-table:: 6158c2ecf20Sopenharmony_ci :header-rows: 0 6168c2ecf20Sopenharmony_ci :stub-columns: 0 6178c2ecf20Sopenharmony_ci 6188c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_FRAME_SKIP_MODE_DISABLED`` 6198c2ecf20Sopenharmony_ci - Frame skip mode is disabled. 6208c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_FRAME_SKIP_MODE_LEVEL_LIMIT`` 6218c2ecf20Sopenharmony_ci - Frame skip mode enabled and buffer limit is set by the chosen 6228c2ecf20Sopenharmony_ci level and is defined by the standard. 6238c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_FRAME_SKIP_MODE_BUF_LIMIT`` 6248c2ecf20Sopenharmony_ci - Frame skip mode enabled and buffer limit is set by the 6258c2ecf20Sopenharmony_ci :ref:`VBV (MPEG1/2/4) <v4l2-mpeg-video-vbv-size>` or 6268c2ecf20Sopenharmony_ci :ref:`CPB (H264) buffer size <v4l2-mpeg-video-h264-cpb-size>` control. 6278c2ecf20Sopenharmony_ci 6288c2ecf20Sopenharmony_ci.. raw:: latex 6298c2ecf20Sopenharmony_ci 6308c2ecf20Sopenharmony_ci \normalsize 6318c2ecf20Sopenharmony_ci 6328c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION (integer)`` 6338c2ecf20Sopenharmony_ci For every captured frame, skip this many subsequent frames (default 6348c2ecf20Sopenharmony_ci 0). 6358c2ecf20Sopenharmony_ci 6368c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MUTE (boolean)`` 6378c2ecf20Sopenharmony_ci "Mutes" the video to a fixed color when capturing. This is useful 6388c2ecf20Sopenharmony_ci for testing, to produce a fixed video bitstream. 0 = unmuted, 1 = 6398c2ecf20Sopenharmony_ci muted. 6408c2ecf20Sopenharmony_ci 6418c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MUTE_YUV (integer)`` 6428c2ecf20Sopenharmony_ci Sets the "mute" color of the video. The supplied 32-bit integer is 6438c2ecf20Sopenharmony_ci interpreted as follows (bit 0 = least significant bit): 6448c2ecf20Sopenharmony_ci 6458c2ecf20Sopenharmony_ci 6468c2ecf20Sopenharmony_ci 6478c2ecf20Sopenharmony_ci.. flat-table:: 6488c2ecf20Sopenharmony_ci :header-rows: 0 6498c2ecf20Sopenharmony_ci :stub-columns: 0 6508c2ecf20Sopenharmony_ci 6518c2ecf20Sopenharmony_ci * - Bit 0:7 6528c2ecf20Sopenharmony_ci - V chrominance information 6538c2ecf20Sopenharmony_ci * - Bit 8:15 6548c2ecf20Sopenharmony_ci - U chrominance information 6558c2ecf20Sopenharmony_ci * - Bit 16:23 6568c2ecf20Sopenharmony_ci - Y luminance information 6578c2ecf20Sopenharmony_ci * - Bit 24:31 6588c2ecf20Sopenharmony_ci - Must be zero. 6598c2ecf20Sopenharmony_ci 6608c2ecf20Sopenharmony_ci 6618c2ecf20Sopenharmony_ci 6628c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-dec-pts: 6638c2ecf20Sopenharmony_ci 6648c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_DEC_PTS (integer64)`` 6658c2ecf20Sopenharmony_ci This read-only control returns the 33-bit video Presentation Time 6668c2ecf20Sopenharmony_ci Stamp as defined in ITU T-REC-H.222.0 and ISO/IEC 13818-1 of the 6678c2ecf20Sopenharmony_ci currently displayed frame. This is the same PTS as is used in 6688c2ecf20Sopenharmony_ci :ref:`VIDIOC_DECODER_CMD`. 6698c2ecf20Sopenharmony_ci 6708c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-dec-frame: 6718c2ecf20Sopenharmony_ci 6728c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_DEC_FRAME (integer64)`` 6738c2ecf20Sopenharmony_ci This read-only control returns the frame counter of the frame that 6748c2ecf20Sopenharmony_ci is currently displayed (decoded). This value is reset to 0 whenever 6758c2ecf20Sopenharmony_ci the decoder is started. 6768c2ecf20Sopenharmony_ci 6778c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE (boolean)`` 6788c2ecf20Sopenharmony_ci If enabled the decoder expects to receive a single slice per buffer, 6798c2ecf20Sopenharmony_ci otherwise the decoder expects a single frame in per buffer. 6808c2ecf20Sopenharmony_ci Applicable to the decoder, all codecs. 6818c2ecf20Sopenharmony_ci 6828c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE (boolean)`` 6838c2ecf20Sopenharmony_ci Enable writing sample aspect ratio in the Video Usability 6848c2ecf20Sopenharmony_ci Information. Applicable to the H264 encoder. 6858c2ecf20Sopenharmony_ci 6868c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-vui-sar-idc: 6878c2ecf20Sopenharmony_ci 6888c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC`` 6898c2ecf20Sopenharmony_ci (enum) 6908c2ecf20Sopenharmony_ci 6918c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_vui_sar_idc - 6928c2ecf20Sopenharmony_ci VUI sample aspect ratio indicator for H.264 encoding. The value is 6938c2ecf20Sopenharmony_ci defined in the table E-1 in the standard. Applicable to the H264 6948c2ecf20Sopenharmony_ci encoder. 6958c2ecf20Sopenharmony_ci 6968c2ecf20Sopenharmony_ci 6978c2ecf20Sopenharmony_ci 6988c2ecf20Sopenharmony_ci.. flat-table:: 6998c2ecf20Sopenharmony_ci :header-rows: 0 7008c2ecf20Sopenharmony_ci :stub-columns: 0 7018c2ecf20Sopenharmony_ci 7028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED`` 7038c2ecf20Sopenharmony_ci - Unspecified 7048c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1`` 7058c2ecf20Sopenharmony_ci - 1x1 7068c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11`` 7078c2ecf20Sopenharmony_ci - 12x11 7088c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11`` 7098c2ecf20Sopenharmony_ci - 10x11 7108c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11`` 7118c2ecf20Sopenharmony_ci - 16x11 7128c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33`` 7138c2ecf20Sopenharmony_ci - 40x33 7148c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11`` 7158c2ecf20Sopenharmony_ci - 24x11 7168c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11`` 7178c2ecf20Sopenharmony_ci - 20x11 7188c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11`` 7198c2ecf20Sopenharmony_ci - 32x11 7208c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33`` 7218c2ecf20Sopenharmony_ci - 80x33 7228c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11`` 7238c2ecf20Sopenharmony_ci - 18x11 7248c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11`` 7258c2ecf20Sopenharmony_ci - 15x11 7268c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33`` 7278c2ecf20Sopenharmony_ci - 64x33 7288c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99`` 7298c2ecf20Sopenharmony_ci - 160x99 7308c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3`` 7318c2ecf20Sopenharmony_ci - 4x3 7328c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2`` 7338c2ecf20Sopenharmony_ci - 3x2 7348c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1`` 7358c2ecf20Sopenharmony_ci - 2x1 7368c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED`` 7378c2ecf20Sopenharmony_ci - Extended SAR 7388c2ecf20Sopenharmony_ci 7398c2ecf20Sopenharmony_ci 7408c2ecf20Sopenharmony_ci 7418c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (integer)`` 7428c2ecf20Sopenharmony_ci Extended sample aspect ratio width for H.264 VUI encoding. 7438c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 7448c2ecf20Sopenharmony_ci 7458c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (integer)`` 7468c2ecf20Sopenharmony_ci Extended sample aspect ratio height for H.264 VUI encoding. 7478c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 7488c2ecf20Sopenharmony_ci 7498c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-level: 7508c2ecf20Sopenharmony_ci 7518c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_LEVEL`` 7528c2ecf20Sopenharmony_ci (enum) 7538c2ecf20Sopenharmony_ci 7548c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_level - 7558c2ecf20Sopenharmony_ci The level information for the H264 video elementary stream. 7568c2ecf20Sopenharmony_ci Applicable to the H264 encoder. Possible values are: 7578c2ecf20Sopenharmony_ci 7588c2ecf20Sopenharmony_ci 7598c2ecf20Sopenharmony_ci 7608c2ecf20Sopenharmony_ci.. flat-table:: 7618c2ecf20Sopenharmony_ci :header-rows: 0 7628c2ecf20Sopenharmony_ci :stub-columns: 0 7638c2ecf20Sopenharmony_ci 7648c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_0`` 7658c2ecf20Sopenharmony_ci - Level 1.0 7668c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1B`` 7678c2ecf20Sopenharmony_ci - Level 1B 7688c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_1`` 7698c2ecf20Sopenharmony_ci - Level 1.1 7708c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_2`` 7718c2ecf20Sopenharmony_ci - Level 1.2 7728c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_1_3`` 7738c2ecf20Sopenharmony_ci - Level 1.3 7748c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_2_0`` 7758c2ecf20Sopenharmony_ci - Level 2.0 7768c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_2_1`` 7778c2ecf20Sopenharmony_ci - Level 2.1 7788c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_2_2`` 7798c2ecf20Sopenharmony_ci - Level 2.2 7808c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_3_0`` 7818c2ecf20Sopenharmony_ci - Level 3.0 7828c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_3_1`` 7838c2ecf20Sopenharmony_ci - Level 3.1 7848c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_3_2`` 7858c2ecf20Sopenharmony_ci - Level 3.2 7868c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_4_0`` 7878c2ecf20Sopenharmony_ci - Level 4.0 7888c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_4_1`` 7898c2ecf20Sopenharmony_ci - Level 4.1 7908c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_4_2`` 7918c2ecf20Sopenharmony_ci - Level 4.2 7928c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_5_0`` 7938c2ecf20Sopenharmony_ci - Level 5.0 7948c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_5_1`` 7958c2ecf20Sopenharmony_ci - Level 5.1 7968c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_5_2`` 7978c2ecf20Sopenharmony_ci - Level 5.2 7988c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_6_0`` 7998c2ecf20Sopenharmony_ci - Level 6.0 8008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_6_1`` 8018c2ecf20Sopenharmony_ci - Level 6.1 8028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LEVEL_6_2`` 8038c2ecf20Sopenharmony_ci - Level 6.2 8048c2ecf20Sopenharmony_ci 8058c2ecf20Sopenharmony_ci 8068c2ecf20Sopenharmony_ci 8078c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-mpeg2-level: 8088c2ecf20Sopenharmony_ci 8098c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG2_LEVEL`` 8108c2ecf20Sopenharmony_ci (enum) 8118c2ecf20Sopenharmony_ci 8128c2ecf20Sopenharmony_cienum v4l2_mpeg_video_mpeg2_level - 8138c2ecf20Sopenharmony_ci The level information for the MPEG2 elementary stream. Applicable to 8148c2ecf20Sopenharmony_ci MPEG2 codecs. Possible values are: 8158c2ecf20Sopenharmony_ci 8168c2ecf20Sopenharmony_ci 8178c2ecf20Sopenharmony_ci 8188c2ecf20Sopenharmony_ci.. flat-table:: 8198c2ecf20Sopenharmony_ci :header-rows: 0 8208c2ecf20Sopenharmony_ci :stub-columns: 0 8218c2ecf20Sopenharmony_ci 8228c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_LOW`` 8238c2ecf20Sopenharmony_ci - Low Level (LL) 8248c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_MAIN`` 8258c2ecf20Sopenharmony_ci - Main Level (ML) 8268c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH_1440`` 8278c2ecf20Sopenharmony_ci - High-1440 Level (H-14) 8288c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH`` 8298c2ecf20Sopenharmony_ci - High Level (HL) 8308c2ecf20Sopenharmony_ci 8318c2ecf20Sopenharmony_ci 8328c2ecf20Sopenharmony_ci 8338c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-mpeg4-level: 8348c2ecf20Sopenharmony_ci 8358c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL`` 8368c2ecf20Sopenharmony_ci (enum) 8378c2ecf20Sopenharmony_ci 8388c2ecf20Sopenharmony_cienum v4l2_mpeg_video_mpeg4_level - 8398c2ecf20Sopenharmony_ci The level information for the MPEG4 elementary stream. Applicable to 8408c2ecf20Sopenharmony_ci the MPEG4 encoder. Possible values are: 8418c2ecf20Sopenharmony_ci 8428c2ecf20Sopenharmony_ci 8438c2ecf20Sopenharmony_ci 8448c2ecf20Sopenharmony_ci.. flat-table:: 8458c2ecf20Sopenharmony_ci :header-rows: 0 8468c2ecf20Sopenharmony_ci :stub-columns: 0 8478c2ecf20Sopenharmony_ci 8488c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_0`` 8498c2ecf20Sopenharmony_ci - Level 0 8508c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B`` 8518c2ecf20Sopenharmony_ci - Level 0b 8528c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_1`` 8538c2ecf20Sopenharmony_ci - Level 1 8548c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_2`` 8558c2ecf20Sopenharmony_ci - Level 2 8568c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_3`` 8578c2ecf20Sopenharmony_ci - Level 3 8588c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B`` 8598c2ecf20Sopenharmony_ci - Level 3b 8608c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_4`` 8618c2ecf20Sopenharmony_ci - Level 4 8628c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_LEVEL_5`` 8638c2ecf20Sopenharmony_ci - Level 5 8648c2ecf20Sopenharmony_ci 8658c2ecf20Sopenharmony_ci 8668c2ecf20Sopenharmony_ci 8678c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-profile: 8688c2ecf20Sopenharmony_ci 8698c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_PROFILE`` 8708c2ecf20Sopenharmony_ci (enum) 8718c2ecf20Sopenharmony_ci 8728c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_profile - 8738c2ecf20Sopenharmony_ci The profile information for H264. Applicable to the H264 encoder. 8748c2ecf20Sopenharmony_ci Possible values are: 8758c2ecf20Sopenharmony_ci 8768c2ecf20Sopenharmony_ci 8778c2ecf20Sopenharmony_ci 8788c2ecf20Sopenharmony_ci.. flat-table:: 8798c2ecf20Sopenharmony_ci :header-rows: 0 8808c2ecf20Sopenharmony_ci :stub-columns: 0 8818c2ecf20Sopenharmony_ci 8828c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE`` 8838c2ecf20Sopenharmony_ci - Baseline profile 8848c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE`` 8858c2ecf20Sopenharmony_ci - Constrained Baseline profile 8868c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_MAIN`` 8878c2ecf20Sopenharmony_ci - Main profile 8888c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED`` 8898c2ecf20Sopenharmony_ci - Extended profile 8908c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH`` 8918c2ecf20Sopenharmony_ci - High profile 8928c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10`` 8938c2ecf20Sopenharmony_ci - High 10 profile 8948c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422`` 8958c2ecf20Sopenharmony_ci - High 422 profile 8968c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE`` 8978c2ecf20Sopenharmony_ci - High 444 Predictive profile 8988c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA`` 8998c2ecf20Sopenharmony_ci - High 10 Intra profile 9008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA`` 9018c2ecf20Sopenharmony_ci - High 422 Intra profile 9028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA`` 9038c2ecf20Sopenharmony_ci - High 444 Intra profile 9048c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA`` 9058c2ecf20Sopenharmony_ci - CAVLC 444 Intra profile 9068c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE`` 9078c2ecf20Sopenharmony_ci - Scalable Baseline profile 9088c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH`` 9098c2ecf20Sopenharmony_ci - Scalable High profile 9108c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA`` 9118c2ecf20Sopenharmony_ci - Scalable High Intra profile 9128c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH`` 9138c2ecf20Sopenharmony_ci - Stereo High profile 9148c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH`` 9158c2ecf20Sopenharmony_ci - Multiview High profile 9168c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH`` 9178c2ecf20Sopenharmony_ci - Constrained High profile 9188c2ecf20Sopenharmony_ci 9198c2ecf20Sopenharmony_ci 9208c2ecf20Sopenharmony_ci 9218c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-mpeg2-profile: 9228c2ecf20Sopenharmony_ci 9238c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG2_PROFILE`` 9248c2ecf20Sopenharmony_ci (enum) 9258c2ecf20Sopenharmony_ci 9268c2ecf20Sopenharmony_cienum v4l2_mpeg_video_mpeg2_profile - 9278c2ecf20Sopenharmony_ci The profile information for MPEG2. Applicable to MPEG2 codecs. 9288c2ecf20Sopenharmony_ci Possible values are: 9298c2ecf20Sopenharmony_ci 9308c2ecf20Sopenharmony_ci 9318c2ecf20Sopenharmony_ci 9328c2ecf20Sopenharmony_ci.. flat-table:: 9338c2ecf20Sopenharmony_ci :header-rows: 0 9348c2ecf20Sopenharmony_ci :stub-columns: 0 9358c2ecf20Sopenharmony_ci 9368c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_SIMPLE`` 9378c2ecf20Sopenharmony_ci - Simple profile (SP) 9388c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_MAIN`` 9398c2ecf20Sopenharmony_ci - Main profile (MP) 9408c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_SNR_SCALABLE`` 9418c2ecf20Sopenharmony_ci - SNR Scalable profile (SNR) 9428c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_SPATIALLY_SCALABLE`` 9438c2ecf20Sopenharmony_ci - Spatially Scalable profile (Spt) 9448c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_HIGH`` 9458c2ecf20Sopenharmony_ci - High profile (HP) 9468c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG2_PROFILE_MULTIVIEW`` 9478c2ecf20Sopenharmony_ci - Multi-view profile (MVP) 9488c2ecf20Sopenharmony_ci 9498c2ecf20Sopenharmony_ci 9508c2ecf20Sopenharmony_ci 9518c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-mpeg4-profile: 9528c2ecf20Sopenharmony_ci 9538c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE`` 9548c2ecf20Sopenharmony_ci (enum) 9558c2ecf20Sopenharmony_ci 9568c2ecf20Sopenharmony_cienum v4l2_mpeg_video_mpeg4_profile - 9578c2ecf20Sopenharmony_ci The profile information for MPEG4. Applicable to the MPEG4 encoder. 9588c2ecf20Sopenharmony_ci Possible values are: 9598c2ecf20Sopenharmony_ci 9608c2ecf20Sopenharmony_ci 9618c2ecf20Sopenharmony_ci 9628c2ecf20Sopenharmony_ci.. flat-table:: 9638c2ecf20Sopenharmony_ci :header-rows: 0 9648c2ecf20Sopenharmony_ci :stub-columns: 0 9658c2ecf20Sopenharmony_ci 9668c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE`` 9678c2ecf20Sopenharmony_ci - Simple profile 9688c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE`` 9698c2ecf20Sopenharmony_ci - Advanced Simple profile 9708c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE`` 9718c2ecf20Sopenharmony_ci - Core profile 9728c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE`` 9738c2ecf20Sopenharmony_ci - Simple Scalable profile 9748c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY`` 9758c2ecf20Sopenharmony_ci - 9768c2ecf20Sopenharmony_ci 9778c2ecf20Sopenharmony_ci 9788c2ecf20Sopenharmony_ci 9798c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MAX_REF_PIC (integer)`` 9808c2ecf20Sopenharmony_ci The maximum number of reference pictures used for encoding. 9818c2ecf20Sopenharmony_ci Applicable to the encoder. 9828c2ecf20Sopenharmony_ci 9838c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-multi-slice-mode: 9848c2ecf20Sopenharmony_ci 9858c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE`` 9868c2ecf20Sopenharmony_ci (enum) 9878c2ecf20Sopenharmony_ci 9888c2ecf20Sopenharmony_cienum v4l2_mpeg_video_multi_slice_mode - 9898c2ecf20Sopenharmony_ci Determines how the encoder should handle division of frame into 9908c2ecf20Sopenharmony_ci slices. Applicable to the encoder. Possible values are: 9918c2ecf20Sopenharmony_ci 9928c2ecf20Sopenharmony_ci 9938c2ecf20Sopenharmony_ci 9948c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.6cm}|p{7.9cm}| 9958c2ecf20Sopenharmony_ci 9968c2ecf20Sopenharmony_ci.. flat-table:: 9978c2ecf20Sopenharmony_ci :header-rows: 0 9988c2ecf20Sopenharmony_ci :stub-columns: 0 9998c2ecf20Sopenharmony_ci 10008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE`` 10018c2ecf20Sopenharmony_ci - Single slice per frame. 10028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB`` 10038c2ecf20Sopenharmony_ci - Multiple slices with set maximum number of macroblocks per slice. 10048c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES`` 10058c2ecf20Sopenharmony_ci - Multiple slice with set maximum size in bytes per slice. 10068c2ecf20Sopenharmony_ci 10078c2ecf20Sopenharmony_ci 10088c2ecf20Sopenharmony_ci 10098c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB (integer)`` 10108c2ecf20Sopenharmony_ci The maximum number of macroblocks in a slice. Used when 10118c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE`` is set to 10128c2ecf20Sopenharmony_ci ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB``. Applicable to the 10138c2ecf20Sopenharmony_ci encoder. 10148c2ecf20Sopenharmony_ci 10158c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES (integer)`` 10168c2ecf20Sopenharmony_ci The maximum size of a slice in bytes. Used when 10178c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE`` is set to 10188c2ecf20Sopenharmony_ci ``V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES``. Applicable to the 10198c2ecf20Sopenharmony_ci encoder. 10208c2ecf20Sopenharmony_ci 10218c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-loop-filter-mode: 10228c2ecf20Sopenharmony_ci 10238c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE`` 10248c2ecf20Sopenharmony_ci (enum) 10258c2ecf20Sopenharmony_ci 10268c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_loop_filter_mode - 10278c2ecf20Sopenharmony_ci Loop filter mode for H264 encoder. Possible values are: 10288c2ecf20Sopenharmony_ci 10298c2ecf20Sopenharmony_ci.. raw:: latex 10308c2ecf20Sopenharmony_ci 10318c2ecf20Sopenharmony_ci \small 10328c2ecf20Sopenharmony_ci 10338c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{13.6cm}|p{3.9cm}| 10348c2ecf20Sopenharmony_ci 10358c2ecf20Sopenharmony_ci.. flat-table:: 10368c2ecf20Sopenharmony_ci :header-rows: 0 10378c2ecf20Sopenharmony_ci :stub-columns: 0 10388c2ecf20Sopenharmony_ci 10398c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED`` 10408c2ecf20Sopenharmony_ci - Loop filter is enabled. 10418c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED`` 10428c2ecf20Sopenharmony_ci - Loop filter is disabled. 10438c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY`` 10448c2ecf20Sopenharmony_ci - Loop filter is disabled at the slice boundary. 10458c2ecf20Sopenharmony_ci 10468c2ecf20Sopenharmony_ci.. raw:: latex 10478c2ecf20Sopenharmony_ci 10488c2ecf20Sopenharmony_ci \normalsize 10498c2ecf20Sopenharmony_ci 10508c2ecf20Sopenharmony_ci 10518c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA (integer)`` 10528c2ecf20Sopenharmony_ci Loop filter alpha coefficient, defined in the H264 standard. 10538c2ecf20Sopenharmony_ci This value corresponds to the slice_alpha_c0_offset_div2 slice header 10548c2ecf20Sopenharmony_ci field, and should be in the range of -6 to +6, inclusive. The actual alpha 10558c2ecf20Sopenharmony_ci offset FilterOffsetA is twice this value. 10568c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 10578c2ecf20Sopenharmony_ci 10588c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA (integer)`` 10598c2ecf20Sopenharmony_ci Loop filter beta coefficient, defined in the H264 standard. 10608c2ecf20Sopenharmony_ci This corresponds to the slice_beta_offset_div2 slice header field, and 10618c2ecf20Sopenharmony_ci should be in the range of -6 to +6, inclusive. The actual beta offset 10628c2ecf20Sopenharmony_ci FilterOffsetB is twice this value. 10638c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 10648c2ecf20Sopenharmony_ci 10658c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-entropy-mode: 10668c2ecf20Sopenharmony_ci 10678c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE`` 10688c2ecf20Sopenharmony_ci (enum) 10698c2ecf20Sopenharmony_ci 10708c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_entropy_mode - 10718c2ecf20Sopenharmony_ci Entropy coding mode for H264 - CABAC/CAVALC. Applicable to the H264 10728c2ecf20Sopenharmony_ci encoder. Possible values are: 10738c2ecf20Sopenharmony_ci 10748c2ecf20Sopenharmony_ci 10758c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.0cm}|p{8.5cm}| 10768c2ecf20Sopenharmony_ci 10778c2ecf20Sopenharmony_ci 10788c2ecf20Sopenharmony_ci.. flat-table:: 10798c2ecf20Sopenharmony_ci :header-rows: 0 10808c2ecf20Sopenharmony_ci :stub-columns: 0 10818c2ecf20Sopenharmony_ci 10828c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC`` 10838c2ecf20Sopenharmony_ci - Use CAVLC entropy coding. 10848c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC`` 10858c2ecf20Sopenharmony_ci - Use CABAC entropy coding. 10868c2ecf20Sopenharmony_ci 10878c2ecf20Sopenharmony_ci 10888c2ecf20Sopenharmony_ci 10898c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM (boolean)`` 10908c2ecf20Sopenharmony_ci Enable 8X8 transform for H264. Applicable to the H264 encoder. 10918c2ecf20Sopenharmony_ci 10928c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_CONSTRAINED_INTRA_PREDICTION (boolean)`` 10938c2ecf20Sopenharmony_ci Enable constrained intra prediction for H264. Applicable to the H264 10948c2ecf20Sopenharmony_ci encoder. 10958c2ecf20Sopenharmony_ci 10968c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_CHROMA_QP_INDEX_OFFSET (integer)`` 10978c2ecf20Sopenharmony_ci Specify the offset that should be added to the luma quantization 10988c2ecf20Sopenharmony_ci parameter to determine the chroma quantization parameter. Applicable 10998c2ecf20Sopenharmony_ci to the H264 encoder. 11008c2ecf20Sopenharmony_ci 11018c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB (integer)`` 11028c2ecf20Sopenharmony_ci Cyclic intra macroblock refresh. This is the number of continuous 11038c2ecf20Sopenharmony_ci macroblocks refreshed every frame. Each frame a successive set of 11048c2ecf20Sopenharmony_ci macroblocks is refreshed until the cycle completes and starts from 11058c2ecf20Sopenharmony_ci the top of the frame. Applicable to H264, H263 and MPEG4 encoder. 11068c2ecf20Sopenharmony_ci 11078c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE (boolean)`` 11088c2ecf20Sopenharmony_ci Frame level rate control enable. If this control is disabled then 11098c2ecf20Sopenharmony_ci the quantization parameter for each frame type is constant and set 11108c2ecf20Sopenharmony_ci with appropriate controls (e.g. 11118c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP``). If frame rate control is 11128c2ecf20Sopenharmony_ci enabled then quantization parameter is adjusted to meet the chosen 11138c2ecf20Sopenharmony_ci bitrate. Minimum and maximum value for the quantization parameter 11148c2ecf20Sopenharmony_ci can be set with appropriate controls (e.g. 11158c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_H263_MIN_QP``). Applicable to encoders. 11168c2ecf20Sopenharmony_ci 11178c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE (boolean)`` 11188c2ecf20Sopenharmony_ci Macroblock level rate control enable. Applicable to the MPEG4 and 11198c2ecf20Sopenharmony_ci H264 encoders. 11208c2ecf20Sopenharmony_ci 11218c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_QPEL (boolean)`` 11228c2ecf20Sopenharmony_ci Quarter pixel motion estimation for MPEG4. Applicable to the MPEG4 11238c2ecf20Sopenharmony_ci encoder. 11248c2ecf20Sopenharmony_ci 11258c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (integer)`` 11268c2ecf20Sopenharmony_ci Quantization parameter for an I frame for H263. Valid range: from 1 11278c2ecf20Sopenharmony_ci to 31. 11288c2ecf20Sopenharmony_ci 11298c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H263_MIN_QP (integer)`` 11308c2ecf20Sopenharmony_ci Minimum quantization parameter for H263. Valid range: from 1 to 31. 11318c2ecf20Sopenharmony_ci 11328c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H263_MAX_QP (integer)`` 11338c2ecf20Sopenharmony_ci Maximum quantization parameter for H263. Valid range: from 1 to 31. 11348c2ecf20Sopenharmony_ci 11358c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (integer)`` 11368c2ecf20Sopenharmony_ci Quantization parameter for an P frame for H263. Valid range: from 1 11378c2ecf20Sopenharmony_ci to 31. 11388c2ecf20Sopenharmony_ci 11398c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP (integer)`` 11408c2ecf20Sopenharmony_ci Quantization parameter for an B frame for H263. Valid range: from 1 11418c2ecf20Sopenharmony_ci to 31. 11428c2ecf20Sopenharmony_ci 11438c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP (integer)`` 11448c2ecf20Sopenharmony_ci Quantization parameter for an I frame for H264. Valid range: from 0 11458c2ecf20Sopenharmony_ci to 51. 11468c2ecf20Sopenharmony_ci 11478c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_MIN_QP (integer)`` 11488c2ecf20Sopenharmony_ci Minimum quantization parameter for H264. Valid range: from 0 to 51. 11498c2ecf20Sopenharmony_ci 11508c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_MAX_QP (integer)`` 11518c2ecf20Sopenharmony_ci Maximum quantization parameter for H264. Valid range: from 0 to 51. 11528c2ecf20Sopenharmony_ci 11538c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP (integer)`` 11548c2ecf20Sopenharmony_ci Quantization parameter for an P frame for H264. Valid range: from 0 11558c2ecf20Sopenharmony_ci to 51. 11568c2ecf20Sopenharmony_ci 11578c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP (integer)`` 11588c2ecf20Sopenharmony_ci Quantization parameter for an B frame for H264. Valid range: from 0 11598c2ecf20Sopenharmony_ci to 51. 11608c2ecf20Sopenharmony_ci 11618c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_I_FRAME_MIN_QP (integer)`` 11628c2ecf20Sopenharmony_ci Minimum quantization parameter for the H264 I frame to limit I frame 11638c2ecf20Sopenharmony_ci quality to a range. Valid range: from 0 to 51. If 11648c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_H264_MIN_QP is also set, the quantization parameter 11658c2ecf20Sopenharmony_ci should be chosen to meet both requirements. 11668c2ecf20Sopenharmony_ci 11678c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_I_FRAME_MAX_QP (integer)`` 11688c2ecf20Sopenharmony_ci Maximum quantization parameter for the H264 I frame to limit I frame 11698c2ecf20Sopenharmony_ci quality to a range. Valid range: from 0 to 51. If 11708c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_H264_MAX_QP is also set, the quantization parameter 11718c2ecf20Sopenharmony_ci should be chosen to meet both requirements. 11728c2ecf20Sopenharmony_ci 11738c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_P_FRAME_MIN_QP (integer)`` 11748c2ecf20Sopenharmony_ci Minimum quantization parameter for the H264 P frame to limit P frame 11758c2ecf20Sopenharmony_ci quality to a range. Valid range: from 0 to 51. If 11768c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_H264_MIN_QP is also set, the quantization parameter 11778c2ecf20Sopenharmony_ci should be chosen to meet both requirements. 11788c2ecf20Sopenharmony_ci 11798c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_P_FRAME_MAX_QP (integer)`` 11808c2ecf20Sopenharmony_ci Maximum quantization parameter for the H264 P frame to limit P frame 11818c2ecf20Sopenharmony_ci quality to a range. Valid range: from 0 to 51. If 11828c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_H264_MAX_QP is also set, the quantization parameter 11838c2ecf20Sopenharmony_ci should be chosen to meet both requirements. 11848c2ecf20Sopenharmony_ci 11858c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP (integer)`` 11868c2ecf20Sopenharmony_ci Quantization parameter for an I frame for MPEG4. Valid range: from 1 11878c2ecf20Sopenharmony_ci to 31. 11888c2ecf20Sopenharmony_ci 11898c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP (integer)`` 11908c2ecf20Sopenharmony_ci Minimum quantization parameter for MPEG4. Valid range: from 1 to 31. 11918c2ecf20Sopenharmony_ci 11928c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP (integer)`` 11938c2ecf20Sopenharmony_ci Maximum quantization parameter for MPEG4. Valid range: from 1 to 31. 11948c2ecf20Sopenharmony_ci 11958c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP (integer)`` 11968c2ecf20Sopenharmony_ci Quantization parameter for an P frame for MPEG4. Valid range: from 1 11978c2ecf20Sopenharmony_ci to 31. 11988c2ecf20Sopenharmony_ci 11998c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP (integer)`` 12008c2ecf20Sopenharmony_ci Quantization parameter for an B frame for MPEG4. Valid range: from 1 12018c2ecf20Sopenharmony_ci to 31. 12028c2ecf20Sopenharmony_ci 12038c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-vbv-size: 12048c2ecf20Sopenharmony_ci 12058c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VBV_SIZE (integer)`` 12068c2ecf20Sopenharmony_ci The Video Buffer Verifier size in kilobytes, it is used as a 12078c2ecf20Sopenharmony_ci limitation of frame skip. The VBV is defined in the standard as a 12088c2ecf20Sopenharmony_ci mean to verify that the produced stream will be successfully 12098c2ecf20Sopenharmony_ci decoded. The standard describes it as "Part of a hypothetical 12108c2ecf20Sopenharmony_ci decoder that is conceptually connected to the output of the encoder. 12118c2ecf20Sopenharmony_ci Its purpose is to provide a constraint on the variability of the 12128c2ecf20Sopenharmony_ci data rate that an encoder or editing process may produce.". 12138c2ecf20Sopenharmony_ci Applicable to the MPEG1, MPEG2, MPEG4 encoders. 12148c2ecf20Sopenharmony_ci 12158c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-vbv-delay: 12168c2ecf20Sopenharmony_ci 12178c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VBV_DELAY (integer)`` 12188c2ecf20Sopenharmony_ci Sets the initial delay in milliseconds for VBV buffer control. 12198c2ecf20Sopenharmony_ci 12208c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-hor-search-range: 12218c2ecf20Sopenharmony_ci 12228c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (integer)`` 12238c2ecf20Sopenharmony_ci Horizontal search range defines maximum horizontal search area in 12248c2ecf20Sopenharmony_ci pixels to search and match for the present Macroblock (MB) in the 12258c2ecf20Sopenharmony_ci reference picture. This V4L2 control macro is used to set horizontal 12268c2ecf20Sopenharmony_ci search range for motion estimation module in video encoder. 12278c2ecf20Sopenharmony_ci 12288c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-vert-search-range: 12298c2ecf20Sopenharmony_ci 12308c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (integer)`` 12318c2ecf20Sopenharmony_ci Vertical search range defines maximum vertical search area in pixels 12328c2ecf20Sopenharmony_ci to search and match for the present Macroblock (MB) in the reference 12338c2ecf20Sopenharmony_ci picture. This V4L2 control macro is used to set vertical search 12348c2ecf20Sopenharmony_ci range for motion estimation module in video encoder. 12358c2ecf20Sopenharmony_ci 12368c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-force-key-frame: 12378c2ecf20Sopenharmony_ci 12388c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME (button)`` 12398c2ecf20Sopenharmony_ci Force a key frame for the next queued buffer. Applicable to 12408c2ecf20Sopenharmony_ci encoders. This is a general, codec-agnostic keyframe control. 12418c2ecf20Sopenharmony_ci 12428c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-cpb-size: 12438c2ecf20Sopenharmony_ci 12448c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE (integer)`` 12458c2ecf20Sopenharmony_ci The Coded Picture Buffer size in kilobytes, it is used as a 12468c2ecf20Sopenharmony_ci limitation of frame skip. The CPB is defined in the H264 standard as 12478c2ecf20Sopenharmony_ci a mean to verify that the produced stream will be successfully 12488c2ecf20Sopenharmony_ci decoded. Applicable to the H264 encoder. 12498c2ecf20Sopenharmony_ci 12508c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_I_PERIOD (integer)`` 12518c2ecf20Sopenharmony_ci Period between I-frames in the open GOP for H264. In case of an open 12528c2ecf20Sopenharmony_ci GOP this is the period between two I-frames. The period between IDR 12538c2ecf20Sopenharmony_ci (Instantaneous Decoding Refresh) frames is taken from the GOP_SIZE 12548c2ecf20Sopenharmony_ci control. An IDR frame, which stands for Instantaneous Decoding 12558c2ecf20Sopenharmony_ci Refresh is an I-frame after which no prior frames are referenced. 12568c2ecf20Sopenharmony_ci This means that a stream can be restarted from an IDR frame without 12578c2ecf20Sopenharmony_ci the need to store or decode any previous frames. Applicable to the 12588c2ecf20Sopenharmony_ci H264 encoder. 12598c2ecf20Sopenharmony_ci 12608c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-header-mode: 12618c2ecf20Sopenharmony_ci 12628c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEADER_MODE`` 12638c2ecf20Sopenharmony_ci (enum) 12648c2ecf20Sopenharmony_ci 12658c2ecf20Sopenharmony_cienum v4l2_mpeg_video_header_mode - 12668c2ecf20Sopenharmony_ci Determines whether the header is returned as the first buffer or is 12678c2ecf20Sopenharmony_ci it returned together with the first frame. Applicable to encoders. 12688c2ecf20Sopenharmony_ci Possible values are: 12698c2ecf20Sopenharmony_ci 12708c2ecf20Sopenharmony_ci.. raw:: latex 12718c2ecf20Sopenharmony_ci 12728c2ecf20Sopenharmony_ci \small 12738c2ecf20Sopenharmony_ci 12748c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{10.3cm}|p{7.2cm}| 12758c2ecf20Sopenharmony_ci 12768c2ecf20Sopenharmony_ci.. flat-table:: 12778c2ecf20Sopenharmony_ci :header-rows: 0 12788c2ecf20Sopenharmony_ci :stub-columns: 0 12798c2ecf20Sopenharmony_ci 12808c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE`` 12818c2ecf20Sopenharmony_ci - The stream header is returned separately in the first buffer. 12828c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME`` 12838c2ecf20Sopenharmony_ci - The stream header is returned together with the first encoded 12848c2ecf20Sopenharmony_ci frame. 12858c2ecf20Sopenharmony_ci 12868c2ecf20Sopenharmony_ci.. raw:: latex 12878c2ecf20Sopenharmony_ci 12888c2ecf20Sopenharmony_ci \normalsize 12898c2ecf20Sopenharmony_ci 12908c2ecf20Sopenharmony_ci 12918c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (boolean)`` 12928c2ecf20Sopenharmony_ci Repeat the video sequence headers. Repeating these headers makes 12938c2ecf20Sopenharmony_ci random access to the video stream easier. Applicable to the MPEG1, 2 12948c2ecf20Sopenharmony_ci and 4 encoder. 12958c2ecf20Sopenharmony_ci 12968c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER (boolean)`` 12978c2ecf20Sopenharmony_ci Enabled the deblocking post processing filter for MPEG4 decoder. 12988c2ecf20Sopenharmony_ci Applicable to the MPEG4 decoder. 12998c2ecf20Sopenharmony_ci 13008c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_VOP_TIME_RES (integer)`` 13018c2ecf20Sopenharmony_ci vop_time_increment_resolution value for MPEG4. Applicable to the 13028c2ecf20Sopenharmony_ci MPEG4 encoder. 13038c2ecf20Sopenharmony_ci 13048c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG4_VOP_TIME_INC (integer)`` 13058c2ecf20Sopenharmony_ci vop_time_increment value for MPEG4. Applicable to the MPEG4 13068c2ecf20Sopenharmony_ci encoder. 13078c2ecf20Sopenharmony_ci 13088c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING (boolean)`` 13098c2ecf20Sopenharmony_ci Enable generation of frame packing supplemental enhancement 13108c2ecf20Sopenharmony_ci information in the encoded bitstream. The frame packing SEI message 13118c2ecf20Sopenharmony_ci contains the arrangement of L and R planes for 3D viewing. 13128c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 13138c2ecf20Sopenharmony_ci 13148c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0 (boolean)`` 13158c2ecf20Sopenharmony_ci Sets current frame as frame0 in frame packing SEI. Applicable to the 13168c2ecf20Sopenharmony_ci H264 encoder. 13178c2ecf20Sopenharmony_ci 13188c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-sei-fp-arrangement-type: 13198c2ecf20Sopenharmony_ci 13208c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE`` 13218c2ecf20Sopenharmony_ci (enum) 13228c2ecf20Sopenharmony_ci 13238c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_sei_fp_arrangement_type - 13248c2ecf20Sopenharmony_ci Frame packing arrangement type for H264 SEI. Applicable to the H264 13258c2ecf20Sopenharmony_ci encoder. Possible values are: 13268c2ecf20Sopenharmony_ci 13278c2ecf20Sopenharmony_ci.. raw:: latex 13288c2ecf20Sopenharmony_ci 13298c2ecf20Sopenharmony_ci \small 13308c2ecf20Sopenharmony_ci 13318c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{12cm}|p{5.5cm}| 13328c2ecf20Sopenharmony_ci 13338c2ecf20Sopenharmony_ci.. flat-table:: 13348c2ecf20Sopenharmony_ci :header-rows: 0 13358c2ecf20Sopenharmony_ci :stub-columns: 0 13368c2ecf20Sopenharmony_ci 13378c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD`` 13388c2ecf20Sopenharmony_ci - Pixels are alternatively from L and R. 13398c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN`` 13408c2ecf20Sopenharmony_ci - L and R are interlaced by column. 13418c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW`` 13428c2ecf20Sopenharmony_ci - L and R are interlaced by row. 13438c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE`` 13448c2ecf20Sopenharmony_ci - L is on the left, R on the right. 13458c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM`` 13468c2ecf20Sopenharmony_ci - L is on top, R on bottom. 13478c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL`` 13488c2ecf20Sopenharmony_ci - One view per frame. 13498c2ecf20Sopenharmony_ci 13508c2ecf20Sopenharmony_ci.. raw:: latex 13518c2ecf20Sopenharmony_ci 13528c2ecf20Sopenharmony_ci \normalsize 13538c2ecf20Sopenharmony_ci 13548c2ecf20Sopenharmony_ci 13558c2ecf20Sopenharmony_ci 13568c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_FMO (boolean)`` 13578c2ecf20Sopenharmony_ci Enables flexible macroblock ordering in the encoded bitstream. It is 13588c2ecf20Sopenharmony_ci a technique used for restructuring the ordering of macroblocks in 13598c2ecf20Sopenharmony_ci pictures. Applicable to the H264 encoder. 13608c2ecf20Sopenharmony_ci 13618c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-fmo-map-type: 13628c2ecf20Sopenharmony_ci 13638c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE`` 13648c2ecf20Sopenharmony_ci (enum) 13658c2ecf20Sopenharmony_ci 13668c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_fmo_map_type - 13678c2ecf20Sopenharmony_ci When using FMO, the map type divides the image in different scan 13688c2ecf20Sopenharmony_ci patterns of macroblocks. Applicable to the H264 encoder. Possible 13698c2ecf20Sopenharmony_ci values are: 13708c2ecf20Sopenharmony_ci 13718c2ecf20Sopenharmony_ci.. raw:: latex 13728c2ecf20Sopenharmony_ci 13738c2ecf20Sopenharmony_ci \small 13748c2ecf20Sopenharmony_ci 13758c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{12.5cm}|p{5.0cm}| 13768c2ecf20Sopenharmony_ci 13778c2ecf20Sopenharmony_ci.. flat-table:: 13788c2ecf20Sopenharmony_ci :header-rows: 0 13798c2ecf20Sopenharmony_ci :stub-columns: 0 13808c2ecf20Sopenharmony_ci 13818c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES`` 13828c2ecf20Sopenharmony_ci - Slices are interleaved one after other with macroblocks in run 13838c2ecf20Sopenharmony_ci length order. 13848c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES`` 13858c2ecf20Sopenharmony_ci - Scatters the macroblocks based on a mathematical function known to 13868c2ecf20Sopenharmony_ci both encoder and decoder. 13878c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER`` 13888c2ecf20Sopenharmony_ci - Macroblocks arranged in rectangular areas or regions of interest. 13898c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT`` 13908c2ecf20Sopenharmony_ci - Slice groups grow in a cyclic way from centre to outwards. 13918c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN`` 13928c2ecf20Sopenharmony_ci - Slice groups grow in raster scan pattern from left to right. 13938c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN`` 13948c2ecf20Sopenharmony_ci - Slice groups grow in wipe scan pattern from top to bottom. 13958c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT`` 13968c2ecf20Sopenharmony_ci - User defined map type. 13978c2ecf20Sopenharmony_ci 13988c2ecf20Sopenharmony_ci.. raw:: latex 13998c2ecf20Sopenharmony_ci 14008c2ecf20Sopenharmony_ci \normalsize 14018c2ecf20Sopenharmony_ci 14028c2ecf20Sopenharmony_ci 14038c2ecf20Sopenharmony_ci 14048c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP (integer)`` 14058c2ecf20Sopenharmony_ci Number of slice groups in FMO. Applicable to the H264 encoder. 14068c2ecf20Sopenharmony_ci 14078c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-fmo-change-direction: 14088c2ecf20Sopenharmony_ci 14098c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION`` 14108c2ecf20Sopenharmony_ci (enum) 14118c2ecf20Sopenharmony_ci 14128c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_fmo_change_dir - 14138c2ecf20Sopenharmony_ci Specifies a direction of the slice group change for raster and wipe 14148c2ecf20Sopenharmony_ci maps. Applicable to the H264 encoder. Possible values are: 14158c2ecf20Sopenharmony_ci 14168c2ecf20Sopenharmony_ci 14178c2ecf20Sopenharmony_ci 14188c2ecf20Sopenharmony_ci.. flat-table:: 14198c2ecf20Sopenharmony_ci :header-rows: 0 14208c2ecf20Sopenharmony_ci :stub-columns: 0 14218c2ecf20Sopenharmony_ci 14228c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT`` 14238c2ecf20Sopenharmony_ci - Raster scan or wipe right. 14248c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT`` 14258c2ecf20Sopenharmony_ci - Reverse raster scan or wipe left. 14268c2ecf20Sopenharmony_ci 14278c2ecf20Sopenharmony_ci 14288c2ecf20Sopenharmony_ci 14298c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE (integer)`` 14308c2ecf20Sopenharmony_ci Specifies the size of the first slice group for raster and wipe map. 14318c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 14328c2ecf20Sopenharmony_ci 14338c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH (integer)`` 14348c2ecf20Sopenharmony_ci Specifies the number of consecutive macroblocks for the interleaved 14358c2ecf20Sopenharmony_ci map. Applicable to the H264 encoder. 14368c2ecf20Sopenharmony_ci 14378c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_ASO (boolean)`` 14388c2ecf20Sopenharmony_ci Enables arbitrary slice ordering in encoded bitstream. Applicable to 14398c2ecf20Sopenharmony_ci the H264 encoder. 14408c2ecf20Sopenharmony_ci 14418c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER (integer)`` 14428c2ecf20Sopenharmony_ci Specifies the slice order in ASO. Applicable to the H264 encoder. 14438c2ecf20Sopenharmony_ci The supplied 32-bit integer is interpreted as follows (bit 0 = least 14448c2ecf20Sopenharmony_ci significant bit): 14458c2ecf20Sopenharmony_ci 14468c2ecf20Sopenharmony_ci 14478c2ecf20Sopenharmony_ci 14488c2ecf20Sopenharmony_ci.. flat-table:: 14498c2ecf20Sopenharmony_ci :header-rows: 0 14508c2ecf20Sopenharmony_ci :stub-columns: 0 14518c2ecf20Sopenharmony_ci 14528c2ecf20Sopenharmony_ci * - Bit 0:15 14538c2ecf20Sopenharmony_ci - Slice ID 14548c2ecf20Sopenharmony_ci * - Bit 16:32 14558c2ecf20Sopenharmony_ci - Slice position or order 14568c2ecf20Sopenharmony_ci 14578c2ecf20Sopenharmony_ci 14588c2ecf20Sopenharmony_ci 14598c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING (boolean)`` 14608c2ecf20Sopenharmony_ci Enables H264 hierarchical coding. Applicable to the H264 encoder. 14618c2ecf20Sopenharmony_ci 14628c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-h264-hierarchical-coding-type: 14638c2ecf20Sopenharmony_ci 14648c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE`` 14658c2ecf20Sopenharmony_ci (enum) 14668c2ecf20Sopenharmony_ci 14678c2ecf20Sopenharmony_cienum v4l2_mpeg_video_h264_hierarchical_coding_type - 14688c2ecf20Sopenharmony_ci Specifies the hierarchical coding type. Applicable to the H264 14698c2ecf20Sopenharmony_ci encoder. Possible values are: 14708c2ecf20Sopenharmony_ci 14718c2ecf20Sopenharmony_ci 14728c2ecf20Sopenharmony_ci 14738c2ecf20Sopenharmony_ci.. flat-table:: 14748c2ecf20Sopenharmony_ci :header-rows: 0 14758c2ecf20Sopenharmony_ci :stub-columns: 0 14768c2ecf20Sopenharmony_ci 14778c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B`` 14788c2ecf20Sopenharmony_ci - Hierarchical B coding. 14798c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P`` 14808c2ecf20Sopenharmony_ci - Hierarchical P coding. 14818c2ecf20Sopenharmony_ci 14828c2ecf20Sopenharmony_ci 14838c2ecf20Sopenharmony_ci 14848c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER (integer)`` 14858c2ecf20Sopenharmony_ci Specifies the number of hierarchical coding layers. Applicable to 14868c2ecf20Sopenharmony_ci the H264 encoder. 14878c2ecf20Sopenharmony_ci 14888c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP (integer)`` 14898c2ecf20Sopenharmony_ci Specifies a user defined QP for each layer. Applicable to the H264 14908c2ecf20Sopenharmony_ci encoder. The supplied 32-bit integer is interpreted as follows (bit 14918c2ecf20Sopenharmony_ci 0 = least significant bit): 14928c2ecf20Sopenharmony_ci 14938c2ecf20Sopenharmony_ci 14948c2ecf20Sopenharmony_ci 14958c2ecf20Sopenharmony_ci.. flat-table:: 14968c2ecf20Sopenharmony_ci :header-rows: 0 14978c2ecf20Sopenharmony_ci :stub-columns: 0 14988c2ecf20Sopenharmony_ci 14998c2ecf20Sopenharmony_ci * - Bit 0:15 15008c2ecf20Sopenharmony_ci - QP value 15018c2ecf20Sopenharmony_ci * - Bit 16:32 15028c2ecf20Sopenharmony_ci - Layer number 15038c2ecf20Sopenharmony_ci 15048c2ecf20Sopenharmony_ci 15058c2ecf20Sopenharmony_ci.. _v4l2-mpeg-h264: 15068c2ecf20Sopenharmony_ci 15078c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_SPS (struct)`` 15088c2ecf20Sopenharmony_ci Specifies the sequence parameter set (as extracted from the 15098c2ecf20Sopenharmony_ci bitstream) for the associated H264 slice data. This includes the 15108c2ecf20Sopenharmony_ci necessary parameters for configuring a stateless hardware decoding 15118c2ecf20Sopenharmony_ci pipeline for H264. The bitstream parameters are defined according 15128c2ecf20Sopenharmony_ci to :ref:`h264`, section 7.4.2.1.1 "Sequence Parameter Set Data 15138c2ecf20Sopenharmony_ci Semantics". For further documentation, refer to the above 15148c2ecf20Sopenharmony_ci specification, unless there is an explicit comment stating 15158c2ecf20Sopenharmony_ci otherwise. 15168c2ecf20Sopenharmony_ci 15178c2ecf20Sopenharmony_ci .. note:: 15188c2ecf20Sopenharmony_ci 15198c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 15208c2ecf20Sopenharmony_ci it is expected to change. 15218c2ecf20Sopenharmony_ci 15228c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_h264_sps 15238c2ecf20Sopenharmony_ci 15248c2ecf20Sopenharmony_ci.. cssclass:: longtable 15258c2ecf20Sopenharmony_ci 15268c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_h264_sps 15278c2ecf20Sopenharmony_ci :header-rows: 0 15288c2ecf20Sopenharmony_ci :stub-columns: 0 15298c2ecf20Sopenharmony_ci :widths: 1 1 2 15308c2ecf20Sopenharmony_ci 15318c2ecf20Sopenharmony_ci * - __u8 15328c2ecf20Sopenharmony_ci - ``profile_idc`` 15338c2ecf20Sopenharmony_ci - 15348c2ecf20Sopenharmony_ci * - __u8 15358c2ecf20Sopenharmony_ci - ``constraint_set_flags`` 15368c2ecf20Sopenharmony_ci - See :ref:`Sequence Parameter Set Constraints Set Flags <h264_sps_constraints_set_flags>` 15378c2ecf20Sopenharmony_ci * - __u8 15388c2ecf20Sopenharmony_ci - ``level_idc`` 15398c2ecf20Sopenharmony_ci - 15408c2ecf20Sopenharmony_ci * - __u8 15418c2ecf20Sopenharmony_ci - ``seq_parameter_set_id`` 15428c2ecf20Sopenharmony_ci - 15438c2ecf20Sopenharmony_ci * - __u8 15448c2ecf20Sopenharmony_ci - ``chroma_format_idc`` 15458c2ecf20Sopenharmony_ci - 15468c2ecf20Sopenharmony_ci * - __u8 15478c2ecf20Sopenharmony_ci - ``bit_depth_luma_minus8`` 15488c2ecf20Sopenharmony_ci - 15498c2ecf20Sopenharmony_ci * - __u8 15508c2ecf20Sopenharmony_ci - ``bit_depth_chroma_minus8`` 15518c2ecf20Sopenharmony_ci - 15528c2ecf20Sopenharmony_ci * - __u8 15538c2ecf20Sopenharmony_ci - ``log2_max_frame_num_minus4`` 15548c2ecf20Sopenharmony_ci - 15558c2ecf20Sopenharmony_ci * - __u8 15568c2ecf20Sopenharmony_ci - ``pic_order_cnt_type`` 15578c2ecf20Sopenharmony_ci - 15588c2ecf20Sopenharmony_ci * - __u8 15598c2ecf20Sopenharmony_ci - ``log2_max_pic_order_cnt_lsb_minus4`` 15608c2ecf20Sopenharmony_ci - 15618c2ecf20Sopenharmony_ci * - __u8 15628c2ecf20Sopenharmony_ci - ``max_num_ref_frames`` 15638c2ecf20Sopenharmony_ci - 15648c2ecf20Sopenharmony_ci * - __u8 15658c2ecf20Sopenharmony_ci - ``num_ref_frames_in_pic_order_cnt_cycle`` 15668c2ecf20Sopenharmony_ci - 15678c2ecf20Sopenharmony_ci * - __s32 15688c2ecf20Sopenharmony_ci - ``offset_for_ref_frame[255]`` 15698c2ecf20Sopenharmony_ci - 15708c2ecf20Sopenharmony_ci * - __s32 15718c2ecf20Sopenharmony_ci - ``offset_for_non_ref_pic`` 15728c2ecf20Sopenharmony_ci - 15738c2ecf20Sopenharmony_ci * - __s32 15748c2ecf20Sopenharmony_ci - ``offset_for_top_to_bottom_field`` 15758c2ecf20Sopenharmony_ci - 15768c2ecf20Sopenharmony_ci * - __u16 15778c2ecf20Sopenharmony_ci - ``pic_width_in_mbs_minus1`` 15788c2ecf20Sopenharmony_ci - 15798c2ecf20Sopenharmony_ci * - __u16 15808c2ecf20Sopenharmony_ci - ``pic_height_in_map_units_minus1`` 15818c2ecf20Sopenharmony_ci - 15828c2ecf20Sopenharmony_ci * - __u32 15838c2ecf20Sopenharmony_ci - ``flags`` 15848c2ecf20Sopenharmony_ci - See :ref:`Sequence Parameter Set Flags <h264_sps_flags>` 15858c2ecf20Sopenharmony_ci 15868c2ecf20Sopenharmony_ci.. _h264_sps_constraints_set_flags: 15878c2ecf20Sopenharmony_ci 15888c2ecf20Sopenharmony_ci``Sequence Parameter Set Constraints Set Flags`` 15898c2ecf20Sopenharmony_ci 15908c2ecf20Sopenharmony_ci.. cssclass:: longtable 15918c2ecf20Sopenharmony_ci 15928c2ecf20Sopenharmony_ci.. flat-table:: 15938c2ecf20Sopenharmony_ci :header-rows: 0 15948c2ecf20Sopenharmony_ci :stub-columns: 0 15958c2ecf20Sopenharmony_ci :widths: 1 1 2 15968c2ecf20Sopenharmony_ci 15978c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_CONSTRAINT_SET0_FLAG`` 15988c2ecf20Sopenharmony_ci - 0x00000001 15998c2ecf20Sopenharmony_ci - 16008c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_CONSTRAINT_SET1_FLAG`` 16018c2ecf20Sopenharmony_ci - 0x00000002 16028c2ecf20Sopenharmony_ci - 16038c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_CONSTRAINT_SET2_FLAG`` 16048c2ecf20Sopenharmony_ci - 0x00000004 16058c2ecf20Sopenharmony_ci - 16068c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_CONSTRAINT_SET3_FLAG`` 16078c2ecf20Sopenharmony_ci - 0x00000008 16088c2ecf20Sopenharmony_ci - 16098c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_CONSTRAINT_SET4_FLAG`` 16108c2ecf20Sopenharmony_ci - 0x00000010 16118c2ecf20Sopenharmony_ci - 16128c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_CONSTRAINT_SET5_FLAG`` 16138c2ecf20Sopenharmony_ci - 0x00000020 16148c2ecf20Sopenharmony_ci - 16158c2ecf20Sopenharmony_ci 16168c2ecf20Sopenharmony_ci.. _h264_sps_flags: 16178c2ecf20Sopenharmony_ci 16188c2ecf20Sopenharmony_ci``Sequence Parameter Set Flags`` 16198c2ecf20Sopenharmony_ci 16208c2ecf20Sopenharmony_ci.. cssclass:: longtable 16218c2ecf20Sopenharmony_ci 16228c2ecf20Sopenharmony_ci.. flat-table:: 16238c2ecf20Sopenharmony_ci :header-rows: 0 16248c2ecf20Sopenharmony_ci :stub-columns: 0 16258c2ecf20Sopenharmony_ci :widths: 1 1 2 16268c2ecf20Sopenharmony_ci 16278c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_SEPARATE_COLOUR_PLANE`` 16288c2ecf20Sopenharmony_ci - 0x00000001 16298c2ecf20Sopenharmony_ci - 16308c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_QPPRIME_Y_ZERO_TRANSFORM_BYPASS`` 16318c2ecf20Sopenharmony_ci - 0x00000002 16328c2ecf20Sopenharmony_ci - 16338c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_DELTA_PIC_ORDER_ALWAYS_ZERO`` 16348c2ecf20Sopenharmony_ci - 0x00000004 16358c2ecf20Sopenharmony_ci - 16368c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_GAPS_IN_FRAME_NUM_VALUE_ALLOWED`` 16378c2ecf20Sopenharmony_ci - 0x00000008 16388c2ecf20Sopenharmony_ci - 16398c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_FRAME_MBS_ONLY`` 16408c2ecf20Sopenharmony_ci - 0x00000010 16418c2ecf20Sopenharmony_ci - 16428c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_MB_ADAPTIVE_FRAME_FIELD`` 16438c2ecf20Sopenharmony_ci - 0x00000020 16448c2ecf20Sopenharmony_ci - 16458c2ecf20Sopenharmony_ci * - ``V4L2_H264_SPS_FLAG_DIRECT_8X8_INFERENCE`` 16468c2ecf20Sopenharmony_ci - 0x00000040 16478c2ecf20Sopenharmony_ci - 16488c2ecf20Sopenharmony_ci 16498c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_PPS (struct)`` 16508c2ecf20Sopenharmony_ci Specifies the picture parameter set (as extracted from the 16518c2ecf20Sopenharmony_ci bitstream) for the associated H264 slice data. This includes the 16528c2ecf20Sopenharmony_ci necessary parameters for configuring a stateless hardware decoding 16538c2ecf20Sopenharmony_ci pipeline for H264. The bitstream parameters are defined according 16548c2ecf20Sopenharmony_ci to :ref:`h264`, section 7.4.2.2 "Picture Parameter Set RBSP 16558c2ecf20Sopenharmony_ci Semantics". For further documentation, refer to the above 16568c2ecf20Sopenharmony_ci specification, unless there is an explicit comment stating 16578c2ecf20Sopenharmony_ci otherwise. 16588c2ecf20Sopenharmony_ci 16598c2ecf20Sopenharmony_ci .. note:: 16608c2ecf20Sopenharmony_ci 16618c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 16628c2ecf20Sopenharmony_ci it is expected to change. 16638c2ecf20Sopenharmony_ci 16648c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_h264_pps 16658c2ecf20Sopenharmony_ci 16668c2ecf20Sopenharmony_ci.. cssclass:: longtable 16678c2ecf20Sopenharmony_ci 16688c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_h264_pps 16698c2ecf20Sopenharmony_ci :header-rows: 0 16708c2ecf20Sopenharmony_ci :stub-columns: 0 16718c2ecf20Sopenharmony_ci :widths: 1 1 2 16728c2ecf20Sopenharmony_ci 16738c2ecf20Sopenharmony_ci * - __u8 16748c2ecf20Sopenharmony_ci - ``pic_parameter_set_id`` 16758c2ecf20Sopenharmony_ci - 16768c2ecf20Sopenharmony_ci * - __u8 16778c2ecf20Sopenharmony_ci - ``seq_parameter_set_id`` 16788c2ecf20Sopenharmony_ci - 16798c2ecf20Sopenharmony_ci * - __u8 16808c2ecf20Sopenharmony_ci - ``num_slice_groups_minus1`` 16818c2ecf20Sopenharmony_ci - 16828c2ecf20Sopenharmony_ci * - __u8 16838c2ecf20Sopenharmony_ci - ``num_ref_idx_l0_default_active_minus1`` 16848c2ecf20Sopenharmony_ci - 16858c2ecf20Sopenharmony_ci * - __u8 16868c2ecf20Sopenharmony_ci - ``num_ref_idx_l1_default_active_minus1`` 16878c2ecf20Sopenharmony_ci - 16888c2ecf20Sopenharmony_ci * - __u8 16898c2ecf20Sopenharmony_ci - ``weighted_bipred_idc`` 16908c2ecf20Sopenharmony_ci - 16918c2ecf20Sopenharmony_ci * - __s8 16928c2ecf20Sopenharmony_ci - ``pic_init_qp_minus26`` 16938c2ecf20Sopenharmony_ci - 16948c2ecf20Sopenharmony_ci * - __s8 16958c2ecf20Sopenharmony_ci - ``pic_init_qs_minus26`` 16968c2ecf20Sopenharmony_ci - 16978c2ecf20Sopenharmony_ci * - __s8 16988c2ecf20Sopenharmony_ci - ``chroma_qp_index_offset`` 16998c2ecf20Sopenharmony_ci - 17008c2ecf20Sopenharmony_ci * - __s8 17018c2ecf20Sopenharmony_ci - ``second_chroma_qp_index_offset`` 17028c2ecf20Sopenharmony_ci - 17038c2ecf20Sopenharmony_ci * - __u16 17048c2ecf20Sopenharmony_ci - ``flags`` 17058c2ecf20Sopenharmony_ci - See :ref:`Picture Parameter Set Flags <h264_pps_flags>` 17068c2ecf20Sopenharmony_ci 17078c2ecf20Sopenharmony_ci.. _h264_pps_flags: 17088c2ecf20Sopenharmony_ci 17098c2ecf20Sopenharmony_ci``Picture Parameter Set Flags`` 17108c2ecf20Sopenharmony_ci 17118c2ecf20Sopenharmony_ci.. cssclass:: longtable 17128c2ecf20Sopenharmony_ci 17138c2ecf20Sopenharmony_ci.. flat-table:: 17148c2ecf20Sopenharmony_ci :header-rows: 0 17158c2ecf20Sopenharmony_ci :stub-columns: 0 17168c2ecf20Sopenharmony_ci :widths: 1 1 2 17178c2ecf20Sopenharmony_ci 17188c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_ENTROPY_CODING_MODE`` 17198c2ecf20Sopenharmony_ci - 0x00000001 17208c2ecf20Sopenharmony_ci - 17218c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_BOTTOM_FIELD_PIC_ORDER_IN_FRAME_PRESENT`` 17228c2ecf20Sopenharmony_ci - 0x00000002 17238c2ecf20Sopenharmony_ci - 17248c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_WEIGHTED_PRED`` 17258c2ecf20Sopenharmony_ci - 0x00000004 17268c2ecf20Sopenharmony_ci - 17278c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_DEBLOCKING_FILTER_CONTROL_PRESENT`` 17288c2ecf20Sopenharmony_ci - 0x00000008 17298c2ecf20Sopenharmony_ci - 17308c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_CONSTRAINED_INTRA_PRED`` 17318c2ecf20Sopenharmony_ci - 0x00000010 17328c2ecf20Sopenharmony_ci - 17338c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_REDUNDANT_PIC_CNT_PRESENT`` 17348c2ecf20Sopenharmony_ci - 0x00000020 17358c2ecf20Sopenharmony_ci - 17368c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_TRANSFORM_8X8_MODE`` 17378c2ecf20Sopenharmony_ci - 0x00000040 17388c2ecf20Sopenharmony_ci - 17398c2ecf20Sopenharmony_ci * - ``V4L2_H264_PPS_FLAG_SCALING_MATRIX_PRESENT`` 17408c2ecf20Sopenharmony_ci - 0x00000080 17418c2ecf20Sopenharmony_ci - Indicates that ``V4L2_CID_MPEG_VIDEO_H264_SCALING_MATRIX`` 17428c2ecf20Sopenharmony_ci must be used for this picture. 17438c2ecf20Sopenharmony_ci 17448c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_SCALING_MATRIX (struct)`` 17458c2ecf20Sopenharmony_ci Specifies the scaling matrix (as extracted from the bitstream) for 17468c2ecf20Sopenharmony_ci the associated H264 slice data. The bitstream parameters are 17478c2ecf20Sopenharmony_ci defined according to :ref:`h264`, section 7.4.2.1.1.1 "Scaling 17488c2ecf20Sopenharmony_ci List Semantics". For further documentation, refer to the above 17498c2ecf20Sopenharmony_ci specification, unless there is an explicit comment stating 17508c2ecf20Sopenharmony_ci otherwise. 17518c2ecf20Sopenharmony_ci 17528c2ecf20Sopenharmony_ci .. note:: 17538c2ecf20Sopenharmony_ci 17548c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 17558c2ecf20Sopenharmony_ci it is expected to change. 17568c2ecf20Sopenharmony_ci 17578c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_h264_scaling_matrix 17588c2ecf20Sopenharmony_ci 17598c2ecf20Sopenharmony_ci.. cssclass:: longtable 17608c2ecf20Sopenharmony_ci 17618c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_h264_scaling_matrix 17628c2ecf20Sopenharmony_ci :header-rows: 0 17638c2ecf20Sopenharmony_ci :stub-columns: 0 17648c2ecf20Sopenharmony_ci :widths: 1 1 2 17658c2ecf20Sopenharmony_ci 17668c2ecf20Sopenharmony_ci * - __u8 17678c2ecf20Sopenharmony_ci - ``scaling_list_4x4[6][16]`` 17688c2ecf20Sopenharmony_ci - Scaling matrix after applying the inverse scanning process. 17698c2ecf20Sopenharmony_ci Expected list order is Intra Y, Intra Cb, Intra Cr, Inter Y, 17708c2ecf20Sopenharmony_ci Inter Cb, Inter Cr. The values on each scaling list are 17718c2ecf20Sopenharmony_ci expected in raster scan order. 17728c2ecf20Sopenharmony_ci * - __u8 17738c2ecf20Sopenharmony_ci - ``scaling_list_8x8[6][64]`` 17748c2ecf20Sopenharmony_ci - Scaling matrix after applying the inverse scanning process. 17758c2ecf20Sopenharmony_ci Expected list order is Intra Y, Inter Y, Intra Cb, Inter Cb, 17768c2ecf20Sopenharmony_ci Intra Cr, Inter Cr. The values on each scaling list are 17778c2ecf20Sopenharmony_ci expected in raster scan order. 17788c2ecf20Sopenharmony_ci 17798c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_SLICE_PARAMS (struct)`` 17808c2ecf20Sopenharmony_ci Specifies the slice parameters (as extracted from the bitstream) 17818c2ecf20Sopenharmony_ci for the associated H264 slice data. This includes the necessary 17828c2ecf20Sopenharmony_ci parameters for configuring a stateless hardware decoding pipeline 17838c2ecf20Sopenharmony_ci for H264. The bitstream parameters are defined according to 17848c2ecf20Sopenharmony_ci :ref:`h264`, section 7.4.3 "Slice Header Semantics". For further 17858c2ecf20Sopenharmony_ci documentation, refer to the above specification, unless there is 17868c2ecf20Sopenharmony_ci an explicit comment stating otherwise. 17878c2ecf20Sopenharmony_ci 17888c2ecf20Sopenharmony_ci .. note:: 17898c2ecf20Sopenharmony_ci 17908c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API 17918c2ecf20Sopenharmony_ci and it is expected to change. 17928c2ecf20Sopenharmony_ci 17938c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_h264_slice_params 17948c2ecf20Sopenharmony_ci 17958c2ecf20Sopenharmony_ci.. cssclass:: longtable 17968c2ecf20Sopenharmony_ci 17978c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_h264_slice_params 17988c2ecf20Sopenharmony_ci :header-rows: 0 17998c2ecf20Sopenharmony_ci :stub-columns: 0 18008c2ecf20Sopenharmony_ci :widths: 1 1 2 18018c2ecf20Sopenharmony_ci 18028c2ecf20Sopenharmony_ci * - __u32 18038c2ecf20Sopenharmony_ci - ``header_bit_size`` 18048c2ecf20Sopenharmony_ci - Offset in bits to slice_data() from the beginning of this slice. 18058c2ecf20Sopenharmony_ci * - __u32 18068c2ecf20Sopenharmony_ci - ``first_mb_in_slice`` 18078c2ecf20Sopenharmony_ci - 18088c2ecf20Sopenharmony_ci * - __u8 18098c2ecf20Sopenharmony_ci - ``slice_type`` 18108c2ecf20Sopenharmony_ci - 18118c2ecf20Sopenharmony_ci * - __u8 18128c2ecf20Sopenharmony_ci - ``colour_plane_id`` 18138c2ecf20Sopenharmony_ci - 18148c2ecf20Sopenharmony_ci * - __u8 18158c2ecf20Sopenharmony_ci - ``redundant_pic_cnt`` 18168c2ecf20Sopenharmony_ci - 18178c2ecf20Sopenharmony_ci * - __u8 18188c2ecf20Sopenharmony_ci - ``cabac_init_idc`` 18198c2ecf20Sopenharmony_ci - 18208c2ecf20Sopenharmony_ci * - __s8 18218c2ecf20Sopenharmony_ci - ``slice_qp_delta`` 18228c2ecf20Sopenharmony_ci - 18238c2ecf20Sopenharmony_ci * - __s8 18248c2ecf20Sopenharmony_ci - ``slice_qs_delta`` 18258c2ecf20Sopenharmony_ci - 18268c2ecf20Sopenharmony_ci * - __u8 18278c2ecf20Sopenharmony_ci - ``disable_deblocking_filter_idc`` 18288c2ecf20Sopenharmony_ci - 18298c2ecf20Sopenharmony_ci * - __s8 18308c2ecf20Sopenharmony_ci - ``slice_alpha_c0_offset_div2`` 18318c2ecf20Sopenharmony_ci - 18328c2ecf20Sopenharmony_ci * - __s8 18338c2ecf20Sopenharmony_ci - ``slice_beta_offset_div2`` 18348c2ecf20Sopenharmony_ci - 18358c2ecf20Sopenharmony_ci * - __u8 18368c2ecf20Sopenharmony_ci - ``num_ref_idx_l0_active_minus1`` 18378c2ecf20Sopenharmony_ci - If num_ref_idx_active_override_flag is not set, this field must be 18388c2ecf20Sopenharmony_ci set to the value of num_ref_idx_l0_default_active_minus1. 18398c2ecf20Sopenharmony_ci * - __u8 18408c2ecf20Sopenharmony_ci - ``num_ref_idx_l1_active_minus1`` 18418c2ecf20Sopenharmony_ci - If num_ref_idx_active_override_flag is not set, this field must be 18428c2ecf20Sopenharmony_ci set to the value of num_ref_idx_l1_default_active_minus1. 18438c2ecf20Sopenharmony_ci * - __u8 18448c2ecf20Sopenharmony_ci - ``reserved`` 18458c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 18468c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_h264_reference` 18478c2ecf20Sopenharmony_ci - ``ref_pic_list0[32]`` 18488c2ecf20Sopenharmony_ci - Reference picture list after applying the per-slice modifications 18498c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_h264_reference` 18508c2ecf20Sopenharmony_ci - ``ref_pic_list1[32]`` 18518c2ecf20Sopenharmony_ci - Reference picture list after applying the per-slice modifications 18528c2ecf20Sopenharmony_ci * - __u32 18538c2ecf20Sopenharmony_ci - ``flags`` 18548c2ecf20Sopenharmony_ci - See :ref:`Slice Parameter Flags <h264_slice_flags>` 18558c2ecf20Sopenharmony_ci 18568c2ecf20Sopenharmony_ci.. _h264_slice_flags: 18578c2ecf20Sopenharmony_ci 18588c2ecf20Sopenharmony_ci``Slice Parameter Set Flags`` 18598c2ecf20Sopenharmony_ci 18608c2ecf20Sopenharmony_ci.. cssclass:: longtable 18618c2ecf20Sopenharmony_ci 18628c2ecf20Sopenharmony_ci.. flat-table:: 18638c2ecf20Sopenharmony_ci :header-rows: 0 18648c2ecf20Sopenharmony_ci :stub-columns: 0 18658c2ecf20Sopenharmony_ci :widths: 1 1 2 18668c2ecf20Sopenharmony_ci 18678c2ecf20Sopenharmony_ci * - ``V4L2_H264_SLICE_FLAG_DIRECT_SPATIAL_MV_PRED`` 18688c2ecf20Sopenharmony_ci - 0x00000001 18698c2ecf20Sopenharmony_ci - 18708c2ecf20Sopenharmony_ci * - ``V4L2_H264_SLICE_FLAG_SP_FOR_SWITCH`` 18718c2ecf20Sopenharmony_ci - 0x00000002 18728c2ecf20Sopenharmony_ci - 18738c2ecf20Sopenharmony_ci 18748c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_PRED_WEIGHTS (struct)`` 18758c2ecf20Sopenharmony_ci Prediction weight table defined according to :ref:`h264`, 18768c2ecf20Sopenharmony_ci section 7.4.3.2 "Prediction Weight Table Semantics". 18778c2ecf20Sopenharmony_ci The prediction weight table must be passed by applications 18788c2ecf20Sopenharmony_ci under the conditions explained in section 7.3.3 "Slice header 18798c2ecf20Sopenharmony_ci syntax". 18808c2ecf20Sopenharmony_ci 18818c2ecf20Sopenharmony_ci .. note:: 18828c2ecf20Sopenharmony_ci 18838c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 18848c2ecf20Sopenharmony_ci it is expected to change. 18858c2ecf20Sopenharmony_ci 18868c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_h264_pred_weights 18878c2ecf20Sopenharmony_ci 18888c2ecf20Sopenharmony_ci.. cssclass:: longtable 18898c2ecf20Sopenharmony_ci 18908c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_h264_pred_weights 18918c2ecf20Sopenharmony_ci :header-rows: 0 18928c2ecf20Sopenharmony_ci :stub-columns: 0 18938c2ecf20Sopenharmony_ci :widths: 1 1 2 18948c2ecf20Sopenharmony_ci 18958c2ecf20Sopenharmony_ci * - __u16 18968c2ecf20Sopenharmony_ci - ``luma_log2_weight_denom`` 18978c2ecf20Sopenharmony_ci - 18988c2ecf20Sopenharmony_ci * - __u16 18998c2ecf20Sopenharmony_ci - ``chroma_log2_weight_denom`` 19008c2ecf20Sopenharmony_ci - 19018c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_h264_weight_factors` 19028c2ecf20Sopenharmony_ci - ``weight_factors[2]`` 19038c2ecf20Sopenharmony_ci - The weight factors at index 0 are the weight factors for the reference 19048c2ecf20Sopenharmony_ci list 0, the one at index 1 for the reference list 1. 19058c2ecf20Sopenharmony_ci 19068c2ecf20Sopenharmony_ci.. c:type:: v4l2_h264_weight_factors 19078c2ecf20Sopenharmony_ci 19088c2ecf20Sopenharmony_ci.. cssclass:: longtable 19098c2ecf20Sopenharmony_ci 19108c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_h264_weight_factors 19118c2ecf20Sopenharmony_ci :header-rows: 0 19128c2ecf20Sopenharmony_ci :stub-columns: 0 19138c2ecf20Sopenharmony_ci :widths: 1 1 2 19148c2ecf20Sopenharmony_ci 19158c2ecf20Sopenharmony_ci * - __s16 19168c2ecf20Sopenharmony_ci - ``luma_weight[32]`` 19178c2ecf20Sopenharmony_ci - 19188c2ecf20Sopenharmony_ci * - __s16 19198c2ecf20Sopenharmony_ci - ``luma_offset[32]`` 19208c2ecf20Sopenharmony_ci - 19218c2ecf20Sopenharmony_ci * - __s16 19228c2ecf20Sopenharmony_ci - ``chroma_weight[32][2]`` 19238c2ecf20Sopenharmony_ci - 19248c2ecf20Sopenharmony_ci * - __s16 19258c2ecf20Sopenharmony_ci - ``chroma_offset[32][2]`` 19268c2ecf20Sopenharmony_ci - 19278c2ecf20Sopenharmony_ci 19288c2ecf20Sopenharmony_ci``Picture Reference`` 19298c2ecf20Sopenharmony_ci 19308c2ecf20Sopenharmony_ci.. c:type:: v4l2_h264_reference 19318c2ecf20Sopenharmony_ci 19328c2ecf20Sopenharmony_ci.. cssclass:: longtable 19338c2ecf20Sopenharmony_ci 19348c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_h264_reference 19358c2ecf20Sopenharmony_ci :header-rows: 0 19368c2ecf20Sopenharmony_ci :stub-columns: 0 19378c2ecf20Sopenharmony_ci :widths: 1 1 2 19388c2ecf20Sopenharmony_ci 19398c2ecf20Sopenharmony_ci * - __u8 19408c2ecf20Sopenharmony_ci - ``fields`` 19418c2ecf20Sopenharmony_ci - Specifies how the picture is referenced. See :ref:`Reference Fields <h264_ref_fields>` 19428c2ecf20Sopenharmony_ci * - __u8 19438c2ecf20Sopenharmony_ci - ``index`` 19448c2ecf20Sopenharmony_ci - Index into the :c:type:`v4l2_ctrl_h264_decode_params`.dpb array. 19458c2ecf20Sopenharmony_ci 19468c2ecf20Sopenharmony_ci.. _h264_ref_fields: 19478c2ecf20Sopenharmony_ci 19488c2ecf20Sopenharmony_ci``Reference Fields`` 19498c2ecf20Sopenharmony_ci 19508c2ecf20Sopenharmony_ci.. cssclass:: longtable 19518c2ecf20Sopenharmony_ci 19528c2ecf20Sopenharmony_ci.. flat-table:: 19538c2ecf20Sopenharmony_ci :header-rows: 0 19548c2ecf20Sopenharmony_ci :stub-columns: 0 19558c2ecf20Sopenharmony_ci :widths: 1 1 2 19568c2ecf20Sopenharmony_ci 19578c2ecf20Sopenharmony_ci * - ``V4L2_H264_TOP_FIELD_REF`` 19588c2ecf20Sopenharmony_ci - 0x1 19598c2ecf20Sopenharmony_ci - The top field in field pair is used for short-term reference. 19608c2ecf20Sopenharmony_ci * - ``V4L2_H264_BOTTOM_FIELD_REF`` 19618c2ecf20Sopenharmony_ci - 0x2 19628c2ecf20Sopenharmony_ci - The bottom field in field pair is used for short-term reference. 19638c2ecf20Sopenharmony_ci * - ``V4L2_H264_FRAME_REF`` 19648c2ecf20Sopenharmony_ci - 0x3 19658c2ecf20Sopenharmony_ci - The frame (or the top/bottom fields, if it's a field pair) 19668c2ecf20Sopenharmony_ci is used for short-term reference. 19678c2ecf20Sopenharmony_ci 19688c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_DECODE_PARAMS (struct)`` 19698c2ecf20Sopenharmony_ci Specifies the decode parameters (as extracted from the bitstream) 19708c2ecf20Sopenharmony_ci for the associated H264 slice data. This includes the necessary 19718c2ecf20Sopenharmony_ci parameters for configuring a stateless hardware decoding pipeline 19728c2ecf20Sopenharmony_ci for H264. The bitstream parameters are defined according to 19738c2ecf20Sopenharmony_ci :ref:`h264`. For further documentation, refer to the above 19748c2ecf20Sopenharmony_ci specification, unless there is an explicit comment stating 19758c2ecf20Sopenharmony_ci otherwise. 19768c2ecf20Sopenharmony_ci 19778c2ecf20Sopenharmony_ci .. note:: 19788c2ecf20Sopenharmony_ci 19798c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 19808c2ecf20Sopenharmony_ci it is expected to change. 19818c2ecf20Sopenharmony_ci 19828c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_h264_decode_params 19838c2ecf20Sopenharmony_ci 19848c2ecf20Sopenharmony_ci.. cssclass:: longtable 19858c2ecf20Sopenharmony_ci 19868c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_h264_decode_params 19878c2ecf20Sopenharmony_ci :header-rows: 0 19888c2ecf20Sopenharmony_ci :stub-columns: 0 19898c2ecf20Sopenharmony_ci :widths: 1 1 2 19908c2ecf20Sopenharmony_ci 19918c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_h264_dpb_entry` 19928c2ecf20Sopenharmony_ci - ``dpb[16]`` 19938c2ecf20Sopenharmony_ci - 19948c2ecf20Sopenharmony_ci * - __u16 19958c2ecf20Sopenharmony_ci - ``nal_ref_idc`` 19968c2ecf20Sopenharmony_ci - NAL reference ID value coming from the NAL Unit header 19978c2ecf20Sopenharmony_ci * - __u16 19988c2ecf20Sopenharmony_ci - ``frame_num`` 19998c2ecf20Sopenharmony_ci - 20008c2ecf20Sopenharmony_ci * - __s32 20018c2ecf20Sopenharmony_ci - ``top_field_order_cnt`` 20028c2ecf20Sopenharmony_ci - Picture Order Count for the coded top field 20038c2ecf20Sopenharmony_ci * - __s32 20048c2ecf20Sopenharmony_ci - ``bottom_field_order_cnt`` 20058c2ecf20Sopenharmony_ci - Picture Order Count for the coded bottom field 20068c2ecf20Sopenharmony_ci * - __u16 20078c2ecf20Sopenharmony_ci - ``idr_pic_id`` 20088c2ecf20Sopenharmony_ci - 20098c2ecf20Sopenharmony_ci * - __u16 20108c2ecf20Sopenharmony_ci - ``pic_order_cnt_lsb`` 20118c2ecf20Sopenharmony_ci - 20128c2ecf20Sopenharmony_ci * - __s32 20138c2ecf20Sopenharmony_ci - ``delta_pic_order_cnt_bottom`` 20148c2ecf20Sopenharmony_ci - 20158c2ecf20Sopenharmony_ci * - __s32 20168c2ecf20Sopenharmony_ci - ``delta_pic_order_cnt0`` 20178c2ecf20Sopenharmony_ci - 20188c2ecf20Sopenharmony_ci * - __s32 20198c2ecf20Sopenharmony_ci - ``delta_pic_order_cnt1`` 20208c2ecf20Sopenharmony_ci - 20218c2ecf20Sopenharmony_ci * - __u32 20228c2ecf20Sopenharmony_ci - ``dec_ref_pic_marking_bit_size`` 20238c2ecf20Sopenharmony_ci - Size in bits of the dec_ref_pic_marking() syntax element. 20248c2ecf20Sopenharmony_ci * - __u32 20258c2ecf20Sopenharmony_ci - ``pic_order_cnt_bit_size`` 20268c2ecf20Sopenharmony_ci - Combined size in bits of the picture order count related syntax 20278c2ecf20Sopenharmony_ci elements: pic_order_cnt_lsb, delta_pic_order_cnt_bottom, 20288c2ecf20Sopenharmony_ci delta_pic_order_cnt0, and delta_pic_order_cnt1. 20298c2ecf20Sopenharmony_ci * - __u32 20308c2ecf20Sopenharmony_ci - ``slice_group_change_cycle`` 20318c2ecf20Sopenharmony_ci - 20328c2ecf20Sopenharmony_ci * - __u32 20338c2ecf20Sopenharmony_ci - ``reserved`` 20348c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 20358c2ecf20Sopenharmony_ci * - __u32 20368c2ecf20Sopenharmony_ci - ``flags`` 20378c2ecf20Sopenharmony_ci - See :ref:`Decode Parameters Flags <h264_decode_params_flags>` 20388c2ecf20Sopenharmony_ci 20398c2ecf20Sopenharmony_ci.. _h264_decode_params_flags: 20408c2ecf20Sopenharmony_ci 20418c2ecf20Sopenharmony_ci``Decode Parameters Flags`` 20428c2ecf20Sopenharmony_ci 20438c2ecf20Sopenharmony_ci.. cssclass:: longtable 20448c2ecf20Sopenharmony_ci 20458c2ecf20Sopenharmony_ci.. flat-table:: 20468c2ecf20Sopenharmony_ci :header-rows: 0 20478c2ecf20Sopenharmony_ci :stub-columns: 0 20488c2ecf20Sopenharmony_ci :widths: 1 1 2 20498c2ecf20Sopenharmony_ci 20508c2ecf20Sopenharmony_ci * - ``V4L2_H264_DECODE_PARAM_FLAG_IDR_PIC`` 20518c2ecf20Sopenharmony_ci - 0x00000001 20528c2ecf20Sopenharmony_ci - That picture is an IDR picture 20538c2ecf20Sopenharmony_ci * - ``V4L2_H264_DECODE_PARAM_FLAG_FIELD_PIC`` 20548c2ecf20Sopenharmony_ci - 0x00000002 20558c2ecf20Sopenharmony_ci - 20568c2ecf20Sopenharmony_ci * - ``V4L2_H264_DECODE_PARAM_FLAG_BOTTOM_FIELD`` 20578c2ecf20Sopenharmony_ci - 0x00000004 20588c2ecf20Sopenharmony_ci - 20598c2ecf20Sopenharmony_ci 20608c2ecf20Sopenharmony_ci.. c:type:: v4l2_h264_dpb_entry 20618c2ecf20Sopenharmony_ci 20628c2ecf20Sopenharmony_ci.. cssclass:: longtable 20638c2ecf20Sopenharmony_ci 20648c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_h264_dpb_entry 20658c2ecf20Sopenharmony_ci :header-rows: 0 20668c2ecf20Sopenharmony_ci :stub-columns: 0 20678c2ecf20Sopenharmony_ci :widths: 1 1 2 20688c2ecf20Sopenharmony_ci 20698c2ecf20Sopenharmony_ci * - __u64 20708c2ecf20Sopenharmony_ci - ``reference_ts`` 20718c2ecf20Sopenharmony_ci - Timestamp of the V4L2 capture buffer to use as reference, used 20728c2ecf20Sopenharmony_ci with B-coded and P-coded frames. The timestamp refers to the 20738c2ecf20Sopenharmony_ci ``timestamp`` field in struct :c:type:`v4l2_buffer`. Use the 20748c2ecf20Sopenharmony_ci :c:func:`v4l2_timeval_to_ns()` function to convert the struct 20758c2ecf20Sopenharmony_ci :c:type:`timeval` in struct :c:type:`v4l2_buffer` to a __u64. 20768c2ecf20Sopenharmony_ci * - __u32 20778c2ecf20Sopenharmony_ci - ``pic_num`` 20788c2ecf20Sopenharmony_ci - 20798c2ecf20Sopenharmony_ci * - __u16 20808c2ecf20Sopenharmony_ci - ``frame_num`` 20818c2ecf20Sopenharmony_ci - 20828c2ecf20Sopenharmony_ci * - __u8 20838c2ecf20Sopenharmony_ci - ``fields`` 20848c2ecf20Sopenharmony_ci - Specifies how the DPB entry is referenced. See :ref:`Reference Fields <h264_ref_fields>` 20858c2ecf20Sopenharmony_ci * - __u8 20868c2ecf20Sopenharmony_ci - ``reserved[5]`` 20878c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 20888c2ecf20Sopenharmony_ci * - __s32 20898c2ecf20Sopenharmony_ci - ``top_field_order_cnt`` 20908c2ecf20Sopenharmony_ci - 20918c2ecf20Sopenharmony_ci * - __s32 20928c2ecf20Sopenharmony_ci - ``bottom_field_order_cnt`` 20938c2ecf20Sopenharmony_ci - 20948c2ecf20Sopenharmony_ci * - __u32 20958c2ecf20Sopenharmony_ci - ``flags`` 20968c2ecf20Sopenharmony_ci - See :ref:`DPB Entry Flags <h264_dpb_flags>` 20978c2ecf20Sopenharmony_ci 20988c2ecf20Sopenharmony_ci.. _h264_dpb_flags: 20998c2ecf20Sopenharmony_ci 21008c2ecf20Sopenharmony_ci``DPB Entries Flags`` 21018c2ecf20Sopenharmony_ci 21028c2ecf20Sopenharmony_ci.. cssclass:: longtable 21038c2ecf20Sopenharmony_ci 21048c2ecf20Sopenharmony_ci.. flat-table:: 21058c2ecf20Sopenharmony_ci :header-rows: 0 21068c2ecf20Sopenharmony_ci :stub-columns: 0 21078c2ecf20Sopenharmony_ci :widths: 1 1 2 21088c2ecf20Sopenharmony_ci 21098c2ecf20Sopenharmony_ci * - ``V4L2_H264_DPB_ENTRY_FLAG_VALID`` 21108c2ecf20Sopenharmony_ci - 0x00000001 21118c2ecf20Sopenharmony_ci - The DPB entry is valid (non-empty) and should be considered. 21128c2ecf20Sopenharmony_ci * - ``V4L2_H264_DPB_ENTRY_FLAG_ACTIVE`` 21138c2ecf20Sopenharmony_ci - 0x00000002 21148c2ecf20Sopenharmony_ci - The DPB entry is used for reference. 21158c2ecf20Sopenharmony_ci * - ``V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM`` 21168c2ecf20Sopenharmony_ci - 0x00000004 21178c2ecf20Sopenharmony_ci - The DPB entry is used for long-term reference. 21188c2ecf20Sopenharmony_ci * - ``V4L2_H264_DPB_ENTRY_FLAG_FIELD`` 21198c2ecf20Sopenharmony_ci - 0x00000008 21208c2ecf20Sopenharmony_ci - The DPB entry is a single field or a complementary field pair. 21218c2ecf20Sopenharmony_ci 21228c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_DECODE_MODE (enum)`` 21238c2ecf20Sopenharmony_ci Specifies the decoding mode to use. Currently exposes slice-based and 21248c2ecf20Sopenharmony_ci frame-based decoding but new modes might be added later on. 21258c2ecf20Sopenharmony_ci This control is used as a modifier for V4L2_PIX_FMT_H264_SLICE 21268c2ecf20Sopenharmony_ci pixel format. Applications that support V4L2_PIX_FMT_H264_SLICE 21278c2ecf20Sopenharmony_ci are required to set this control in order to specify the decoding mode 21288c2ecf20Sopenharmony_ci that is expected for the buffer. 21298c2ecf20Sopenharmony_ci Drivers may expose a single or multiple decoding modes, depending 21308c2ecf20Sopenharmony_ci on what they can support. 21318c2ecf20Sopenharmony_ci 21328c2ecf20Sopenharmony_ci .. note:: 21338c2ecf20Sopenharmony_ci 21348c2ecf20Sopenharmony_ci This menu control is not yet part of the public kernel API and 21358c2ecf20Sopenharmony_ci it is expected to change. 21368c2ecf20Sopenharmony_ci 21378c2ecf20Sopenharmony_ci.. c:type:: v4l2_mpeg_video_h264_decode_mode 21388c2ecf20Sopenharmony_ci 21398c2ecf20Sopenharmony_ci.. cssclass:: longtable 21408c2ecf20Sopenharmony_ci 21418c2ecf20Sopenharmony_ci.. flat-table:: 21428c2ecf20Sopenharmony_ci :header-rows: 0 21438c2ecf20Sopenharmony_ci :stub-columns: 0 21448c2ecf20Sopenharmony_ci :widths: 1 1 2 21458c2ecf20Sopenharmony_ci 21468c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_DECODE_MODE_SLICE_BASED`` 21478c2ecf20Sopenharmony_ci - 0 21488c2ecf20Sopenharmony_ci - Decoding is done at the slice granularity. 21498c2ecf20Sopenharmony_ci The OUTPUT buffer must contain a single slice. 21508c2ecf20Sopenharmony_ci When this mode is selected, the ``V4L2_CID_MPEG_VIDEO_H264_SLICE_PARAMS`` 21518c2ecf20Sopenharmony_ci control shall be set. When multiple slices compose a frame, 21528c2ecf20Sopenharmony_ci use of ``V4L2_BUF_CAP_SUPPORTS_M2M_HOLD_CAPTURE_BUF`` flag 21538c2ecf20Sopenharmony_ci is required. 21548c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_DECODE_MODE_FRAME_BASED`` 21558c2ecf20Sopenharmony_ci - 1 21568c2ecf20Sopenharmony_ci - Decoding is done at the frame granularity, 21578c2ecf20Sopenharmony_ci The OUTPUT buffer must contain all slices needed to decode the 21588c2ecf20Sopenharmony_ci frame. The OUTPUT buffer must also contain both fields. 21598c2ecf20Sopenharmony_ci This mode will be supported by devices that 21608c2ecf20Sopenharmony_ci parse the slice(s) header(s) in hardware. When this mode is 21618c2ecf20Sopenharmony_ci selected, the ``V4L2_CID_MPEG_VIDEO_H264_SLICE_PARAMS`` 21628c2ecf20Sopenharmony_ci control shall not be set. 21638c2ecf20Sopenharmony_ci 21648c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_H264_START_CODE (enum)`` 21658c2ecf20Sopenharmony_ci Specifies the H264 slice start code expected for each slice. 21668c2ecf20Sopenharmony_ci This control is used as a modifier for V4L2_PIX_FMT_H264_SLICE 21678c2ecf20Sopenharmony_ci pixel format. Applications that support V4L2_PIX_FMT_H264_SLICE 21688c2ecf20Sopenharmony_ci are required to set this control in order to specify the start code 21698c2ecf20Sopenharmony_ci that is expected for the buffer. 21708c2ecf20Sopenharmony_ci Drivers may expose a single or multiple start codes, depending 21718c2ecf20Sopenharmony_ci on what they can support. 21728c2ecf20Sopenharmony_ci 21738c2ecf20Sopenharmony_ci .. note:: 21748c2ecf20Sopenharmony_ci 21758c2ecf20Sopenharmony_ci This menu control is not yet part of the public kernel API and 21768c2ecf20Sopenharmony_ci it is expected to change. 21778c2ecf20Sopenharmony_ci 21788c2ecf20Sopenharmony_ci.. c:type:: v4l2_mpeg_video_h264_start_code 21798c2ecf20Sopenharmony_ci 21808c2ecf20Sopenharmony_ci.. cssclass:: longtable 21818c2ecf20Sopenharmony_ci 21828c2ecf20Sopenharmony_ci.. flat-table:: 21838c2ecf20Sopenharmony_ci :header-rows: 0 21848c2ecf20Sopenharmony_ci :stub-columns: 0 21858c2ecf20Sopenharmony_ci :widths: 1 1 2 21868c2ecf20Sopenharmony_ci 21878c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_START_CODE_NONE`` 21888c2ecf20Sopenharmony_ci - 0 21898c2ecf20Sopenharmony_ci - Selecting this value specifies that H264 slices are passed 21908c2ecf20Sopenharmony_ci to the driver without any start code. 21918c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_H264_START_CODE_ANNEX_B`` 21928c2ecf20Sopenharmony_ci - 1 21938c2ecf20Sopenharmony_ci - Selecting this value specifies that H264 slices are expected 21948c2ecf20Sopenharmony_ci to be prefixed by Annex B start codes. According to :ref:`h264` 21958c2ecf20Sopenharmony_ci valid start codes can be 3-bytes 0x000001 or 4-bytes 0x00000001. 21968c2ecf20Sopenharmony_ci 21978c2ecf20Sopenharmony_ci.. _v4l2-mpeg-mpeg2: 21988c2ecf20Sopenharmony_ci 21998c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG2_SLICE_PARAMS (struct)`` 22008c2ecf20Sopenharmony_ci Specifies the slice parameters (as extracted from the bitstream) for the 22018c2ecf20Sopenharmony_ci associated MPEG-2 slice data. This includes the necessary parameters for 22028c2ecf20Sopenharmony_ci configuring a stateless hardware decoding pipeline for MPEG-2. 22038c2ecf20Sopenharmony_ci The bitstream parameters are defined according to :ref:`mpeg2part2`. 22048c2ecf20Sopenharmony_ci 22058c2ecf20Sopenharmony_ci .. note:: 22068c2ecf20Sopenharmony_ci 22078c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 22088c2ecf20Sopenharmony_ci it is expected to change. 22098c2ecf20Sopenharmony_ci 22108c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_mpeg2_slice_params 22118c2ecf20Sopenharmony_ci 22128c2ecf20Sopenharmony_ci.. cssclass:: longtable 22138c2ecf20Sopenharmony_ci 22148c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{5.8cm}|p{4.8cm}|p{6.6cm}| 22158c2ecf20Sopenharmony_ci 22168c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_mpeg2_slice_params 22178c2ecf20Sopenharmony_ci :header-rows: 0 22188c2ecf20Sopenharmony_ci :stub-columns: 0 22198c2ecf20Sopenharmony_ci :widths: 1 1 2 22208c2ecf20Sopenharmony_ci 22218c2ecf20Sopenharmony_ci * - __u32 22228c2ecf20Sopenharmony_ci - ``bit_size`` 22238c2ecf20Sopenharmony_ci - Size (in bits) of the current slice data. 22248c2ecf20Sopenharmony_ci * - __u32 22258c2ecf20Sopenharmony_ci - ``data_bit_offset`` 22268c2ecf20Sopenharmony_ci - Offset (in bits) to the video data in the current slice data. 22278c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_mpeg2_sequence` 22288c2ecf20Sopenharmony_ci - ``sequence`` 22298c2ecf20Sopenharmony_ci - Structure with MPEG-2 sequence metadata, merging relevant fields from 22308c2ecf20Sopenharmony_ci the sequence header and sequence extension parts of the bitstream. 22318c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_mpeg2_picture` 22328c2ecf20Sopenharmony_ci - ``picture`` 22338c2ecf20Sopenharmony_ci - Structure with MPEG-2 picture metadata, merging relevant fields from 22348c2ecf20Sopenharmony_ci the picture header and picture coding extension parts of the bitstream. 22358c2ecf20Sopenharmony_ci * - __u64 22368c2ecf20Sopenharmony_ci - ``backward_ref_ts`` 22378c2ecf20Sopenharmony_ci - Timestamp of the V4L2 capture buffer to use as backward reference, used 22388c2ecf20Sopenharmony_ci with B-coded and P-coded frames. The timestamp refers to the 22398c2ecf20Sopenharmony_ci ``timestamp`` field in struct :c:type:`v4l2_buffer`. Use the 22408c2ecf20Sopenharmony_ci :c:func:`v4l2_timeval_to_ns()` function to convert the struct 22418c2ecf20Sopenharmony_ci :c:type:`timeval` in struct :c:type:`v4l2_buffer` to a __u64. 22428c2ecf20Sopenharmony_ci * - __u64 22438c2ecf20Sopenharmony_ci - ``forward_ref_ts`` 22448c2ecf20Sopenharmony_ci - Timestamp for the V4L2 capture buffer to use as forward reference, used 22458c2ecf20Sopenharmony_ci with B-coded frames. The timestamp refers to the ``timestamp`` field in 22468c2ecf20Sopenharmony_ci struct :c:type:`v4l2_buffer`. Use the :c:func:`v4l2_timeval_to_ns()` 22478c2ecf20Sopenharmony_ci function to convert the struct :c:type:`timeval` in struct 22488c2ecf20Sopenharmony_ci :c:type:`v4l2_buffer` to a __u64. 22498c2ecf20Sopenharmony_ci * - __u32 22508c2ecf20Sopenharmony_ci - ``quantiser_scale_code`` 22518c2ecf20Sopenharmony_ci - Code used to determine the quantization scale to use for the IDCT. 22528c2ecf20Sopenharmony_ci 22538c2ecf20Sopenharmony_ci.. c:type:: v4l2_mpeg2_sequence 22548c2ecf20Sopenharmony_ci 22558c2ecf20Sopenharmony_ci.. cssclass:: longtable 22568c2ecf20Sopenharmony_ci 22578c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 22588c2ecf20Sopenharmony_ci 22598c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_mpeg2_sequence 22608c2ecf20Sopenharmony_ci :header-rows: 0 22618c2ecf20Sopenharmony_ci :stub-columns: 0 22628c2ecf20Sopenharmony_ci :widths: 1 1 2 22638c2ecf20Sopenharmony_ci 22648c2ecf20Sopenharmony_ci * - __u16 22658c2ecf20Sopenharmony_ci - ``horizontal_size`` 22668c2ecf20Sopenharmony_ci - The width of the displayable part of the frame's luminance component. 22678c2ecf20Sopenharmony_ci * - __u16 22688c2ecf20Sopenharmony_ci - ``vertical_size`` 22698c2ecf20Sopenharmony_ci - The height of the displayable part of the frame's luminance component. 22708c2ecf20Sopenharmony_ci * - __u32 22718c2ecf20Sopenharmony_ci - ``vbv_buffer_size`` 22728c2ecf20Sopenharmony_ci - Used to calculate the required size of the video buffering verifier, 22738c2ecf20Sopenharmony_ci defined (in bits) as: 16 * 1024 * vbv_buffer_size. 22748c2ecf20Sopenharmony_ci * - __u16 22758c2ecf20Sopenharmony_ci - ``profile_and_level_indication`` 22768c2ecf20Sopenharmony_ci - The current profile and level indication as extracted from the 22778c2ecf20Sopenharmony_ci bitstream. 22788c2ecf20Sopenharmony_ci * - __u8 22798c2ecf20Sopenharmony_ci - ``progressive_sequence`` 22808c2ecf20Sopenharmony_ci - Indication that all the frames for the sequence are progressive instead 22818c2ecf20Sopenharmony_ci of interlaced. 22828c2ecf20Sopenharmony_ci * - __u8 22838c2ecf20Sopenharmony_ci - ``chroma_format`` 22848c2ecf20Sopenharmony_ci - The chrominance sub-sampling format (1: 4:2:0, 2: 4:2:2, 3: 4:4:4). 22858c2ecf20Sopenharmony_ci 22868c2ecf20Sopenharmony_ci.. c:type:: v4l2_mpeg2_picture 22878c2ecf20Sopenharmony_ci 22888c2ecf20Sopenharmony_ci.. cssclass:: longtable 22898c2ecf20Sopenharmony_ci 22908c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 22918c2ecf20Sopenharmony_ci 22928c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_mpeg2_picture 22938c2ecf20Sopenharmony_ci :header-rows: 0 22948c2ecf20Sopenharmony_ci :stub-columns: 0 22958c2ecf20Sopenharmony_ci :widths: 1 1 2 22968c2ecf20Sopenharmony_ci 22978c2ecf20Sopenharmony_ci * - __u8 22988c2ecf20Sopenharmony_ci - ``picture_coding_type`` 22998c2ecf20Sopenharmony_ci - Picture coding type for the frame covered by the current slice 23008c2ecf20Sopenharmony_ci (V4L2_MPEG2_PICTURE_CODING_TYPE_I, V4L2_MPEG2_PICTURE_CODING_TYPE_P or 23018c2ecf20Sopenharmony_ci V4L2_MPEG2_PICTURE_CODING_TYPE_B). 23028c2ecf20Sopenharmony_ci * - __u8 23038c2ecf20Sopenharmony_ci - ``f_code[2][2]`` 23048c2ecf20Sopenharmony_ci - Motion vector codes. 23058c2ecf20Sopenharmony_ci * - __u8 23068c2ecf20Sopenharmony_ci - ``intra_dc_precision`` 23078c2ecf20Sopenharmony_ci - Precision of Discrete Cosine transform (0: 8 bits precision, 23088c2ecf20Sopenharmony_ci 1: 9 bits precision, 2: 10 bits precision, 3: 11 bits precision). 23098c2ecf20Sopenharmony_ci * - __u8 23108c2ecf20Sopenharmony_ci - ``picture_structure`` 23118c2ecf20Sopenharmony_ci - Picture structure (1: interlaced top field, 2: interlaced bottom field, 23128c2ecf20Sopenharmony_ci 3: progressive frame). 23138c2ecf20Sopenharmony_ci * - __u8 23148c2ecf20Sopenharmony_ci - ``top_field_first`` 23158c2ecf20Sopenharmony_ci - If set to 1 and interlaced stream, top field is output first. 23168c2ecf20Sopenharmony_ci * - __u8 23178c2ecf20Sopenharmony_ci - ``frame_pred_frame_dct`` 23188c2ecf20Sopenharmony_ci - If set to 1, only frame-DCT and frame prediction are used. 23198c2ecf20Sopenharmony_ci * - __u8 23208c2ecf20Sopenharmony_ci - ``concealment_motion_vectors`` 23218c2ecf20Sopenharmony_ci - If set to 1, motion vectors are coded for intra macroblocks. 23228c2ecf20Sopenharmony_ci * - __u8 23238c2ecf20Sopenharmony_ci - ``q_scale_type`` 23248c2ecf20Sopenharmony_ci - This flag affects the inverse quantization process. 23258c2ecf20Sopenharmony_ci * - __u8 23268c2ecf20Sopenharmony_ci - ``intra_vlc_format`` 23278c2ecf20Sopenharmony_ci - This flag affects the decoding of transform coefficient data. 23288c2ecf20Sopenharmony_ci * - __u8 23298c2ecf20Sopenharmony_ci - ``alternate_scan`` 23308c2ecf20Sopenharmony_ci - This flag affects the decoding of transform coefficient data. 23318c2ecf20Sopenharmony_ci * - __u8 23328c2ecf20Sopenharmony_ci - ``repeat_first_field`` 23338c2ecf20Sopenharmony_ci - This flag affects the decoding process of progressive frames. 23348c2ecf20Sopenharmony_ci * - __u16 23358c2ecf20Sopenharmony_ci - ``progressive_frame`` 23368c2ecf20Sopenharmony_ci - Indicates whether the current frame is progressive. 23378c2ecf20Sopenharmony_ci 23388c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_MPEG2_QUANTIZATION (struct)`` 23398c2ecf20Sopenharmony_ci Specifies quantization matrices (as extracted from the bitstream) for the 23408c2ecf20Sopenharmony_ci associated MPEG-2 slice data. 23418c2ecf20Sopenharmony_ci 23428c2ecf20Sopenharmony_ci .. note:: 23438c2ecf20Sopenharmony_ci 23448c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 23458c2ecf20Sopenharmony_ci it is expected to change. 23468c2ecf20Sopenharmony_ci 23478c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_mpeg2_quantization 23488c2ecf20Sopenharmony_ci 23498c2ecf20Sopenharmony_ci.. cssclass:: longtable 23508c2ecf20Sopenharmony_ci 23518c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.2cm}|p{8.0cm}|p{7.4cm}| 23528c2ecf20Sopenharmony_ci 23538c2ecf20Sopenharmony_ci.. raw:: latex 23548c2ecf20Sopenharmony_ci 23558c2ecf20Sopenharmony_ci \small 23568c2ecf20Sopenharmony_ci 23578c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_mpeg2_quantization 23588c2ecf20Sopenharmony_ci :header-rows: 0 23598c2ecf20Sopenharmony_ci :stub-columns: 0 23608c2ecf20Sopenharmony_ci :widths: 1 1 2 23618c2ecf20Sopenharmony_ci 23628c2ecf20Sopenharmony_ci * - __u8 23638c2ecf20Sopenharmony_ci - ``load_intra_quantiser_matrix`` 23648c2ecf20Sopenharmony_ci - One bit to indicate whether to load the ``intra_quantiser_matrix`` data. 23658c2ecf20Sopenharmony_ci * - __u8 23668c2ecf20Sopenharmony_ci - ``load_non_intra_quantiser_matrix`` 23678c2ecf20Sopenharmony_ci - One bit to indicate whether to load the ``non_intra_quantiser_matrix`` 23688c2ecf20Sopenharmony_ci data. 23698c2ecf20Sopenharmony_ci * - __u8 23708c2ecf20Sopenharmony_ci - ``load_chroma_intra_quantiser_matrix`` 23718c2ecf20Sopenharmony_ci - One bit to indicate whether to load the 23728c2ecf20Sopenharmony_ci ``chroma_intra_quantiser_matrix`` data, only relevant for non-4:2:0 YUV 23738c2ecf20Sopenharmony_ci formats. 23748c2ecf20Sopenharmony_ci * - __u8 23758c2ecf20Sopenharmony_ci - ``load_chroma_non_intra_quantiser_matrix`` 23768c2ecf20Sopenharmony_ci - One bit to indicate whether to load the 23778c2ecf20Sopenharmony_ci ``chroma_non_intra_quantiser_matrix`` data, only relevant for non-4:2:0 23788c2ecf20Sopenharmony_ci YUV formats. 23798c2ecf20Sopenharmony_ci * - __u8 23808c2ecf20Sopenharmony_ci - ``intra_quantiser_matrix[64]`` 23818c2ecf20Sopenharmony_ci - The quantization matrix coefficients for intra-coded frames, in zigzag 23828c2ecf20Sopenharmony_ci scanning order. It is relevant for both luma and chroma components, 23838c2ecf20Sopenharmony_ci although it can be superseded by the chroma-specific matrix for 23848c2ecf20Sopenharmony_ci non-4:2:0 YUV formats. 23858c2ecf20Sopenharmony_ci * - __u8 23868c2ecf20Sopenharmony_ci - ``non_intra_quantiser_matrix[64]`` 23878c2ecf20Sopenharmony_ci - The quantization matrix coefficients for non-intra-coded frames, in 23888c2ecf20Sopenharmony_ci zigzag scanning order. It is relevant for both luma and chroma 23898c2ecf20Sopenharmony_ci components, although it can be superseded by the chroma-specific matrix 23908c2ecf20Sopenharmony_ci for non-4:2:0 YUV formats. 23918c2ecf20Sopenharmony_ci * - __u8 23928c2ecf20Sopenharmony_ci - ``chroma_intra_quantiser_matrix[64]`` 23938c2ecf20Sopenharmony_ci - The quantization matrix coefficients for the chominance component of 23948c2ecf20Sopenharmony_ci intra-coded frames, in zigzag scanning order. Only relevant for 23958c2ecf20Sopenharmony_ci non-4:2:0 YUV formats. 23968c2ecf20Sopenharmony_ci * - __u8 23978c2ecf20Sopenharmony_ci - ``chroma_non_intra_quantiser_matrix[64]`` 23988c2ecf20Sopenharmony_ci - The quantization matrix coefficients for the chrominance component of 23998c2ecf20Sopenharmony_ci non-intra-coded frames, in zigzag scanning order. Only relevant for 24008c2ecf20Sopenharmony_ci non-4:2:0 YUV formats. 24018c2ecf20Sopenharmony_ci 24028c2ecf20Sopenharmony_ci``V4L2_CID_FWHT_I_FRAME_QP (integer)`` 24038c2ecf20Sopenharmony_ci Quantization parameter for an I frame for FWHT. Valid range: from 1 24048c2ecf20Sopenharmony_ci to 31. 24058c2ecf20Sopenharmony_ci 24068c2ecf20Sopenharmony_ci``V4L2_CID_FWHT_P_FRAME_QP (integer)`` 24078c2ecf20Sopenharmony_ci Quantization parameter for a P frame for FWHT. Valid range: from 1 24088c2ecf20Sopenharmony_ci to 31. 24098c2ecf20Sopenharmony_ci 24108c2ecf20Sopenharmony_ci.. _v4l2-mpeg-vp8: 24118c2ecf20Sopenharmony_ci 24128c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VP8_FRAME_HEADER (struct)`` 24138c2ecf20Sopenharmony_ci Specifies the frame parameters for the associated VP8 parsed frame data. 24148c2ecf20Sopenharmony_ci This includes the necessary parameters for 24158c2ecf20Sopenharmony_ci configuring a stateless hardware decoding pipeline for VP8. 24168c2ecf20Sopenharmony_ci The bitstream parameters are defined according to :ref:`vp8`. 24178c2ecf20Sopenharmony_ci 24188c2ecf20Sopenharmony_ci .. note:: 24198c2ecf20Sopenharmony_ci 24208c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 24218c2ecf20Sopenharmony_ci it is expected to change. 24228c2ecf20Sopenharmony_ci 24238c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_vp8_frame_header 24248c2ecf20Sopenharmony_ci 24258c2ecf20Sopenharmony_ci.. cssclass:: longtable 24268c2ecf20Sopenharmony_ci 24278c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{5.8cm}|p{4.8cm}|p{6.6cm}| 24288c2ecf20Sopenharmony_ci 24298c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_vp8_frame_header 24308c2ecf20Sopenharmony_ci :header-rows: 0 24318c2ecf20Sopenharmony_ci :stub-columns: 0 24328c2ecf20Sopenharmony_ci :widths: 1 1 2 24338c2ecf20Sopenharmony_ci 24348c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_vp8_segment_header` 24358c2ecf20Sopenharmony_ci - ``segment_header`` 24368c2ecf20Sopenharmony_ci - Structure with segment-based adjustments metadata. 24378c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_vp8_loopfilter_header` 24388c2ecf20Sopenharmony_ci - ``loopfilter_header`` 24398c2ecf20Sopenharmony_ci - Structure with loop filter level adjustments metadata. 24408c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_vp8_quantization_header` 24418c2ecf20Sopenharmony_ci - ``quant_header`` 24428c2ecf20Sopenharmony_ci - Structure with VP8 dequantization indices metadata. 24438c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_vp8_entropy_header` 24448c2ecf20Sopenharmony_ci - ``entropy_header`` 24458c2ecf20Sopenharmony_ci - Structure with VP8 entropy coder probabilities metadata. 24468c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_vp8_entropy_coder_state` 24478c2ecf20Sopenharmony_ci - ``coder_state`` 24488c2ecf20Sopenharmony_ci - Structure with VP8 entropy coder state. 24498c2ecf20Sopenharmony_ci * - __u16 24508c2ecf20Sopenharmony_ci - ``width`` 24518c2ecf20Sopenharmony_ci - The width of the frame. Must be set for all frames. 24528c2ecf20Sopenharmony_ci * - __u16 24538c2ecf20Sopenharmony_ci - ``height`` 24548c2ecf20Sopenharmony_ci - The height of the frame. Must be set for all frames. 24558c2ecf20Sopenharmony_ci * - __u8 24568c2ecf20Sopenharmony_ci - ``horizontal_scale`` 24578c2ecf20Sopenharmony_ci - Horizontal scaling factor. 24588c2ecf20Sopenharmony_ci * - __u8 24598c2ecf20Sopenharmony_ci - ``vertical_scaling factor`` 24608c2ecf20Sopenharmony_ci - Vertical scale. 24618c2ecf20Sopenharmony_ci * - __u8 24628c2ecf20Sopenharmony_ci - ``version`` 24638c2ecf20Sopenharmony_ci - Bitstream version. 24648c2ecf20Sopenharmony_ci * - __u8 24658c2ecf20Sopenharmony_ci - ``prob_skip_false`` 24668c2ecf20Sopenharmony_ci - Indicates the probability that the macroblock is not skipped. 24678c2ecf20Sopenharmony_ci * - __u8 24688c2ecf20Sopenharmony_ci - ``prob_intra`` 24698c2ecf20Sopenharmony_ci - Indicates the probability that a macroblock is intra-predicted. 24708c2ecf20Sopenharmony_ci * - __u8 24718c2ecf20Sopenharmony_ci - ``prob_last`` 24728c2ecf20Sopenharmony_ci - Indicates the probability that the last reference frame is used 24738c2ecf20Sopenharmony_ci for inter-prediction 24748c2ecf20Sopenharmony_ci * - __u8 24758c2ecf20Sopenharmony_ci - ``prob_gf`` 24768c2ecf20Sopenharmony_ci - Indicates the probability that the golden reference frame is used 24778c2ecf20Sopenharmony_ci for inter-prediction 24788c2ecf20Sopenharmony_ci * - __u8 24798c2ecf20Sopenharmony_ci - ``num_dct_parts`` 24808c2ecf20Sopenharmony_ci - Number of DCT coefficients partitions. Must be one of: 1, 2, 4, or 8. 24818c2ecf20Sopenharmony_ci * - __u32 24828c2ecf20Sopenharmony_ci - ``first_part_size`` 24838c2ecf20Sopenharmony_ci - Size of the first partition, i.e. the control partition. 24848c2ecf20Sopenharmony_ci * - __u32 24858c2ecf20Sopenharmony_ci - ``first_part_header_bits`` 24868c2ecf20Sopenharmony_ci - Size in bits of the first partition header portion. 24878c2ecf20Sopenharmony_ci * - __u32 24888c2ecf20Sopenharmony_ci - ``dct_part_sizes[8]`` 24898c2ecf20Sopenharmony_ci - DCT coefficients sizes. 24908c2ecf20Sopenharmony_ci * - __u64 24918c2ecf20Sopenharmony_ci - ``last_frame_ts`` 24928c2ecf20Sopenharmony_ci - Timestamp for the V4L2 capture buffer to use as last reference frame, used 24938c2ecf20Sopenharmony_ci with inter-coded frames. The timestamp refers to the ``timestamp`` field in 24948c2ecf20Sopenharmony_ci struct :c:type:`v4l2_buffer`. Use the :c:func:`v4l2_timeval_to_ns()` 24958c2ecf20Sopenharmony_ci function to convert the struct :c:type:`timeval` in struct 24968c2ecf20Sopenharmony_ci :c:type:`v4l2_buffer` to a __u64. 24978c2ecf20Sopenharmony_ci * - __u64 24988c2ecf20Sopenharmony_ci - ``golden_frame_ts`` 24998c2ecf20Sopenharmony_ci - Timestamp for the V4L2 capture buffer to use as last reference frame, used 25008c2ecf20Sopenharmony_ci with inter-coded frames. The timestamp refers to the ``timestamp`` field in 25018c2ecf20Sopenharmony_ci struct :c:type:`v4l2_buffer`. Use the :c:func:`v4l2_timeval_to_ns()` 25028c2ecf20Sopenharmony_ci function to convert the struct :c:type:`timeval` in struct 25038c2ecf20Sopenharmony_ci :c:type:`v4l2_buffer` to a __u64. 25048c2ecf20Sopenharmony_ci * - __u64 25058c2ecf20Sopenharmony_ci - ``alt_frame_ts`` 25068c2ecf20Sopenharmony_ci - Timestamp for the V4L2 capture buffer to use as alternate reference frame, used 25078c2ecf20Sopenharmony_ci with inter-coded frames. The timestamp refers to the ``timestamp`` field in 25088c2ecf20Sopenharmony_ci struct :c:type:`v4l2_buffer`. Use the :c:func:`v4l2_timeval_to_ns()` 25098c2ecf20Sopenharmony_ci function to convert the struct :c:type:`timeval` in struct 25108c2ecf20Sopenharmony_ci :c:type:`v4l2_buffer` to a __u64. 25118c2ecf20Sopenharmony_ci * - __u64 25128c2ecf20Sopenharmony_ci - ``flags`` 25138c2ecf20Sopenharmony_ci - See :ref:`Frame Header Flags <vp8_frame_header_flags>` 25148c2ecf20Sopenharmony_ci 25158c2ecf20Sopenharmony_ci.. _vp8_frame_header_flags: 25168c2ecf20Sopenharmony_ci 25178c2ecf20Sopenharmony_ci``Frame Header Flags`` 25188c2ecf20Sopenharmony_ci 25198c2ecf20Sopenharmony_ci.. cssclass:: longtable 25208c2ecf20Sopenharmony_ci 25218c2ecf20Sopenharmony_ci.. flat-table:: 25228c2ecf20Sopenharmony_ci :header-rows: 0 25238c2ecf20Sopenharmony_ci :stub-columns: 0 25248c2ecf20Sopenharmony_ci :widths: 1 1 2 25258c2ecf20Sopenharmony_ci 25268c2ecf20Sopenharmony_ci * - ``V4L2_VP8_FRAME_HEADER_FLAG_KEY_FRAME`` 25278c2ecf20Sopenharmony_ci - 0x01 25288c2ecf20Sopenharmony_ci - Indicates if the frame is a key frame. 25298c2ecf20Sopenharmony_ci * - ``V4L2_VP8_FRAME_HEADER_FLAG_EXPERIMENTAL`` 25308c2ecf20Sopenharmony_ci - 0x02 25318c2ecf20Sopenharmony_ci - Experimental bitstream. 25328c2ecf20Sopenharmony_ci * - ``V4L2_VP8_FRAME_HEADER_FLAG_SHOW_FRAME`` 25338c2ecf20Sopenharmony_ci - 0x04 25348c2ecf20Sopenharmony_ci - Show frame flag, indicates if the frame is for display. 25358c2ecf20Sopenharmony_ci * - ``V4L2_VP8_FRAME_HEADER_FLAG_MB_NO_SKIP_COEFF`` 25368c2ecf20Sopenharmony_ci - 0x08 25378c2ecf20Sopenharmony_ci - Enable/disable skipping of macroblocks with no non-zero coefficients. 25388c2ecf20Sopenharmony_ci * - ``V4L2_VP8_FRAME_HEADER_FLAG_SIGN_BIAS_GOLDEN`` 25398c2ecf20Sopenharmony_ci - 0x10 25408c2ecf20Sopenharmony_ci - Sign of motion vectors when the golden frame is referenced. 25418c2ecf20Sopenharmony_ci * - ``V4L2_VP8_FRAME_HEADER_FLAG_SIGN_BIAS_ALT`` 25428c2ecf20Sopenharmony_ci - 0x20 25438c2ecf20Sopenharmony_ci - Sign of motion vectors when the alt frame is referenced. 25448c2ecf20Sopenharmony_ci 25458c2ecf20Sopenharmony_ci.. c:type:: v4l2_vp8_entropy_coder_state 25468c2ecf20Sopenharmony_ci 25478c2ecf20Sopenharmony_ci.. cssclass:: longtable 25488c2ecf20Sopenharmony_ci 25498c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 25508c2ecf20Sopenharmony_ci 25518c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_vp8_entropy_coder_state 25528c2ecf20Sopenharmony_ci :header-rows: 0 25538c2ecf20Sopenharmony_ci :stub-columns: 0 25548c2ecf20Sopenharmony_ci :widths: 1 1 2 25558c2ecf20Sopenharmony_ci 25568c2ecf20Sopenharmony_ci * - __u8 25578c2ecf20Sopenharmony_ci - ``range`` 25588c2ecf20Sopenharmony_ci - 25598c2ecf20Sopenharmony_ci * - __u8 25608c2ecf20Sopenharmony_ci - ``value`` 25618c2ecf20Sopenharmony_ci - 25628c2ecf20Sopenharmony_ci * - __u8 25638c2ecf20Sopenharmony_ci - ``bit_count`` 25648c2ecf20Sopenharmony_ci - 25658c2ecf20Sopenharmony_ci * - __u8 25668c2ecf20Sopenharmony_ci - ``padding`` 25678c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 25688c2ecf20Sopenharmony_ci 25698c2ecf20Sopenharmony_ci.. c:type:: v4l2_vp8_segment_header 25708c2ecf20Sopenharmony_ci 25718c2ecf20Sopenharmony_ci.. cssclass:: longtable 25728c2ecf20Sopenharmony_ci 25738c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 25748c2ecf20Sopenharmony_ci 25758c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_vp8_segment_header 25768c2ecf20Sopenharmony_ci :header-rows: 0 25778c2ecf20Sopenharmony_ci :stub-columns: 0 25788c2ecf20Sopenharmony_ci :widths: 1 1 2 25798c2ecf20Sopenharmony_ci 25808c2ecf20Sopenharmony_ci * - __s8 25818c2ecf20Sopenharmony_ci - ``quant_update[4]`` 25828c2ecf20Sopenharmony_ci - Signed quantizer value update. 25838c2ecf20Sopenharmony_ci * - __s8 25848c2ecf20Sopenharmony_ci - ``lf_update[4]`` 25858c2ecf20Sopenharmony_ci - Signed loop filter level value update. 25868c2ecf20Sopenharmony_ci * - __u8 25878c2ecf20Sopenharmony_ci - ``segment_probs[3]`` 25888c2ecf20Sopenharmony_ci - Segment probabilities. 25898c2ecf20Sopenharmony_ci * - __u8 25908c2ecf20Sopenharmony_ci - ``padding`` 25918c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 25928c2ecf20Sopenharmony_ci * - __u32 25938c2ecf20Sopenharmony_ci - ``flags`` 25948c2ecf20Sopenharmony_ci - See :ref:`Segment Header Flags <vp8_segment_header_flags>` 25958c2ecf20Sopenharmony_ci 25968c2ecf20Sopenharmony_ci.. _vp8_segment_header_flags: 25978c2ecf20Sopenharmony_ci 25988c2ecf20Sopenharmony_ci``Segment Header Flags`` 25998c2ecf20Sopenharmony_ci 26008c2ecf20Sopenharmony_ci.. cssclass:: longtable 26018c2ecf20Sopenharmony_ci 26028c2ecf20Sopenharmony_ci.. flat-table:: 26038c2ecf20Sopenharmony_ci :header-rows: 0 26048c2ecf20Sopenharmony_ci :stub-columns: 0 26058c2ecf20Sopenharmony_ci :widths: 1 1 2 26068c2ecf20Sopenharmony_ci 26078c2ecf20Sopenharmony_ci * - ``V4L2_VP8_SEGMENT_HEADER_FLAG_ENABLED`` 26088c2ecf20Sopenharmony_ci - 0x01 26098c2ecf20Sopenharmony_ci - Enable/disable segment-based adjustments. 26108c2ecf20Sopenharmony_ci * - ``V4L2_VP8_SEGMENT_HEADER_FLAG_UPDATE_MAP`` 26118c2ecf20Sopenharmony_ci - 0x02 26128c2ecf20Sopenharmony_ci - Indicates if the macroblock segmentation map is updated in this frame. 26138c2ecf20Sopenharmony_ci * - ``V4L2_VP8_SEGMENT_HEADER_FLAG_UPDATE_FEATURE_DATA`` 26148c2ecf20Sopenharmony_ci - 0x04 26158c2ecf20Sopenharmony_ci - Indicates if the segment feature data is updated in this frame. 26168c2ecf20Sopenharmony_ci * - ``V4L2_VP8_SEGMENT_HEADER_FLAG_DELTA_VALUE_MODE`` 26178c2ecf20Sopenharmony_ci - 0x08 26188c2ecf20Sopenharmony_ci - If is set, the segment feature data mode is delta-value. 26198c2ecf20Sopenharmony_ci If cleared, it's absolute-value. 26208c2ecf20Sopenharmony_ci 26218c2ecf20Sopenharmony_ci.. c:type:: v4l2_vp8_loopfilter_header 26228c2ecf20Sopenharmony_ci 26238c2ecf20Sopenharmony_ci.. cssclass:: longtable 26248c2ecf20Sopenharmony_ci 26258c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 26268c2ecf20Sopenharmony_ci 26278c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_vp8_loopfilter_header 26288c2ecf20Sopenharmony_ci :header-rows: 0 26298c2ecf20Sopenharmony_ci :stub-columns: 0 26308c2ecf20Sopenharmony_ci :widths: 1 1 2 26318c2ecf20Sopenharmony_ci 26328c2ecf20Sopenharmony_ci * - __s8 26338c2ecf20Sopenharmony_ci - ``ref_frm_delta[4]`` 26348c2ecf20Sopenharmony_ci - Reference adjustment (signed) delta value. 26358c2ecf20Sopenharmony_ci * - __s8 26368c2ecf20Sopenharmony_ci - ``mb_mode_delta[4]`` 26378c2ecf20Sopenharmony_ci - Macroblock prediction mode adjustment (signed) delta value. 26388c2ecf20Sopenharmony_ci * - __u8 26398c2ecf20Sopenharmony_ci - ``sharpness_level`` 26408c2ecf20Sopenharmony_ci - Sharpness level 26418c2ecf20Sopenharmony_ci * - __u8 26428c2ecf20Sopenharmony_ci - ``level`` 26438c2ecf20Sopenharmony_ci - Filter level 26448c2ecf20Sopenharmony_ci * - __u16 26458c2ecf20Sopenharmony_ci - ``padding`` 26468c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 26478c2ecf20Sopenharmony_ci * - __u32 26488c2ecf20Sopenharmony_ci - ``flags`` 26498c2ecf20Sopenharmony_ci - See :ref:`Loopfilter Header Flags <vp8_loopfilter_header_flags>` 26508c2ecf20Sopenharmony_ci 26518c2ecf20Sopenharmony_ci.. _vp8_loopfilter_header_flags: 26528c2ecf20Sopenharmony_ci 26538c2ecf20Sopenharmony_ci``Loopfilter Header Flags`` 26548c2ecf20Sopenharmony_ci 26558c2ecf20Sopenharmony_ci.. cssclass:: longtable 26568c2ecf20Sopenharmony_ci 26578c2ecf20Sopenharmony_ci.. flat-table:: 26588c2ecf20Sopenharmony_ci :header-rows: 0 26598c2ecf20Sopenharmony_ci :stub-columns: 0 26608c2ecf20Sopenharmony_ci :widths: 1 1 2 26618c2ecf20Sopenharmony_ci 26628c2ecf20Sopenharmony_ci * - ``V4L2_VP8_LF_HEADER_ADJ_ENABLE`` 26638c2ecf20Sopenharmony_ci - 0x01 26648c2ecf20Sopenharmony_ci - Enable/disable macroblock-level loop filter adjustment. 26658c2ecf20Sopenharmony_ci * - ``V4L2_VP8_LF_HEADER_DELTA_UPDATE`` 26668c2ecf20Sopenharmony_ci - 0x02 26678c2ecf20Sopenharmony_ci - Indicates if the delta values used in an adjustment are updated. 26688c2ecf20Sopenharmony_ci * - ``V4L2_VP8_LF_FILTER_TYPE_SIMPLE`` 26698c2ecf20Sopenharmony_ci - 0x04 26708c2ecf20Sopenharmony_ci - If set, indicates the filter type is simple. 26718c2ecf20Sopenharmony_ci If cleared, the filter type is normal. 26728c2ecf20Sopenharmony_ci 26738c2ecf20Sopenharmony_ci.. c:type:: v4l2_vp8_quantization_header 26748c2ecf20Sopenharmony_ci 26758c2ecf20Sopenharmony_ci.. cssclass:: longtable 26768c2ecf20Sopenharmony_ci 26778c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 26788c2ecf20Sopenharmony_ci 26798c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_vp8_quantization_header 26808c2ecf20Sopenharmony_ci :header-rows: 0 26818c2ecf20Sopenharmony_ci :stub-columns: 0 26828c2ecf20Sopenharmony_ci :widths: 1 1 2 26838c2ecf20Sopenharmony_ci 26848c2ecf20Sopenharmony_ci * - __u8 26858c2ecf20Sopenharmony_ci - ``y_ac_qi`` 26868c2ecf20Sopenharmony_ci - Luma AC coefficient table index. 26878c2ecf20Sopenharmony_ci * - __s8 26888c2ecf20Sopenharmony_ci - ``y_dc_delta`` 26898c2ecf20Sopenharmony_ci - Luma DC delta vaue. 26908c2ecf20Sopenharmony_ci * - __s8 26918c2ecf20Sopenharmony_ci - ``y2_dc_delta`` 26928c2ecf20Sopenharmony_ci - Y2 block DC delta value. 26938c2ecf20Sopenharmony_ci * - __s8 26948c2ecf20Sopenharmony_ci - ``y2_ac_delta`` 26958c2ecf20Sopenharmony_ci - Y2 block AC delta value. 26968c2ecf20Sopenharmony_ci * - __s8 26978c2ecf20Sopenharmony_ci - ``uv_dc_delta`` 26988c2ecf20Sopenharmony_ci - Chroma DC delta value. 26998c2ecf20Sopenharmony_ci * - __s8 27008c2ecf20Sopenharmony_ci - ``uv_ac_delta`` 27018c2ecf20Sopenharmony_ci - Chroma AC delta value. 27028c2ecf20Sopenharmony_ci * - __u16 27038c2ecf20Sopenharmony_ci - ``padding`` 27048c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 27058c2ecf20Sopenharmony_ci 27068c2ecf20Sopenharmony_ci.. c:type:: v4l2_vp8_entropy_header 27078c2ecf20Sopenharmony_ci 27088c2ecf20Sopenharmony_ci.. cssclass:: longtable 27098c2ecf20Sopenharmony_ci 27108c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.5cm}|p{6.3cm}|p{9.4cm}| 27118c2ecf20Sopenharmony_ci 27128c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_vp8_entropy_header 27138c2ecf20Sopenharmony_ci :header-rows: 0 27148c2ecf20Sopenharmony_ci :stub-columns: 0 27158c2ecf20Sopenharmony_ci :widths: 1 1 2 27168c2ecf20Sopenharmony_ci 27178c2ecf20Sopenharmony_ci * - __u8 27188c2ecf20Sopenharmony_ci - ``coeff_probs[4][8][3][11]`` 27198c2ecf20Sopenharmony_ci - Coefficient update probabilities. 27208c2ecf20Sopenharmony_ci * - __u8 27218c2ecf20Sopenharmony_ci - ``y_mode_probs[4]`` 27228c2ecf20Sopenharmony_ci - Luma mode update probabilities. 27238c2ecf20Sopenharmony_ci * - __u8 27248c2ecf20Sopenharmony_ci - ``uv_mode_probs[3]`` 27258c2ecf20Sopenharmony_ci - Chroma mode update probabilities. 27268c2ecf20Sopenharmony_ci * - __u8 27278c2ecf20Sopenharmony_ci - ``mv_probs[2][19]`` 27288c2ecf20Sopenharmony_ci - MV decoding update probabilities. 27298c2ecf20Sopenharmony_ci * - __u8 27308c2ecf20Sopenharmony_ci - ``padding[3]`` 27318c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 27328c2ecf20Sopenharmony_ci 27338c2ecf20Sopenharmony_ci.. raw:: latex 27348c2ecf20Sopenharmony_ci 27358c2ecf20Sopenharmony_ci \normalsize 27368c2ecf20Sopenharmony_ci 27378c2ecf20Sopenharmony_ci 27388c2ecf20Sopenharmony_ciMFC 5.1 MPEG Controls 27398c2ecf20Sopenharmony_ci===================== 27408c2ecf20Sopenharmony_ci 27418c2ecf20Sopenharmony_ciThe following MPEG class controls deal with MPEG decoding and encoding 27428c2ecf20Sopenharmony_cisettings that are specific to the Multi Format Codec 5.1 device present 27438c2ecf20Sopenharmony_ciin the S5P family of SoCs by Samsung. 27448c2ecf20Sopenharmony_ci 27458c2ecf20Sopenharmony_ci 27468c2ecf20Sopenharmony_ci.. _mfc51-control-id: 27478c2ecf20Sopenharmony_ci 27488c2ecf20Sopenharmony_ciMFC 5.1 Control IDs 27498c2ecf20Sopenharmony_ci------------------- 27508c2ecf20Sopenharmony_ci 27518c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE (boolean)`` 27528c2ecf20Sopenharmony_ci If the display delay is enabled then the decoder is forced to return 27538c2ecf20Sopenharmony_ci a CAPTURE buffer (decoded frame) after processing a certain number 27548c2ecf20Sopenharmony_ci of OUTPUT buffers. The delay can be set through 27558c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY``. This 27568c2ecf20Sopenharmony_ci feature can be used for example for generating thumbnails of videos. 27578c2ecf20Sopenharmony_ci Applicable to the H264 decoder. 27588c2ecf20Sopenharmony_ci 27598c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY (integer)`` 27608c2ecf20Sopenharmony_ci Display delay value for H264 decoder. The decoder is forced to 27618c2ecf20Sopenharmony_ci return a decoded frame after the set 'display delay' number of 27628c2ecf20Sopenharmony_ci frames. If this number is low it may result in frames returned out 27638c2ecf20Sopenharmony_ci of display order, in addition the hardware may still be using the 27648c2ecf20Sopenharmony_ci returned buffer as a reference picture for subsequent frames. 27658c2ecf20Sopenharmony_ci 27668c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P (integer)`` 27678c2ecf20Sopenharmony_ci The number of reference pictures used for encoding a P picture. 27688c2ecf20Sopenharmony_ci Applicable to the H264 encoder. 27698c2ecf20Sopenharmony_ci 27708c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_PADDING (boolean)`` 27718c2ecf20Sopenharmony_ci Padding enable in the encoder - use a color instead of repeating 27728c2ecf20Sopenharmony_ci border pixels. Applicable to encoders. 27738c2ecf20Sopenharmony_ci 27748c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV (integer)`` 27758c2ecf20Sopenharmony_ci Padding color in the encoder. Applicable to encoders. The supplied 27768c2ecf20Sopenharmony_ci 32-bit integer is interpreted as follows (bit 0 = least significant 27778c2ecf20Sopenharmony_ci bit): 27788c2ecf20Sopenharmony_ci 27798c2ecf20Sopenharmony_ci 27808c2ecf20Sopenharmony_ci 27818c2ecf20Sopenharmony_ci.. flat-table:: 27828c2ecf20Sopenharmony_ci :header-rows: 0 27838c2ecf20Sopenharmony_ci :stub-columns: 0 27848c2ecf20Sopenharmony_ci 27858c2ecf20Sopenharmony_ci * - Bit 0:7 27868c2ecf20Sopenharmony_ci - V chrominance information 27878c2ecf20Sopenharmony_ci * - Bit 8:15 27888c2ecf20Sopenharmony_ci - U chrominance information 27898c2ecf20Sopenharmony_ci * - Bit 16:23 27908c2ecf20Sopenharmony_ci - Y luminance information 27918c2ecf20Sopenharmony_ci * - Bit 24:31 27928c2ecf20Sopenharmony_ci - Must be zero. 27938c2ecf20Sopenharmony_ci 27948c2ecf20Sopenharmony_ci 27958c2ecf20Sopenharmony_ci 27968c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF (integer)`` 27978c2ecf20Sopenharmony_ci Reaction coefficient for MFC rate control. Applicable to encoders. 27988c2ecf20Sopenharmony_ci 27998c2ecf20Sopenharmony_ci .. note:: 28008c2ecf20Sopenharmony_ci 28018c2ecf20Sopenharmony_ci #. Valid only when the frame level RC is enabled. 28028c2ecf20Sopenharmony_ci 28038c2ecf20Sopenharmony_ci #. For tight CBR, this field must be small (ex. 2 ~ 10). For 28048c2ecf20Sopenharmony_ci VBR, this field must be large (ex. 100 ~ 1000). 28058c2ecf20Sopenharmony_ci 28068c2ecf20Sopenharmony_ci #. It is not recommended to use the greater number than 28078c2ecf20Sopenharmony_ci FRAME_RATE * (10^9 / BIT_RATE). 28088c2ecf20Sopenharmony_ci 28098c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK (boolean)`` 28108c2ecf20Sopenharmony_ci Adaptive rate control for dark region. Valid only when H.264 and 28118c2ecf20Sopenharmony_ci macroblock level RC is enabled 28128c2ecf20Sopenharmony_ci (``V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE``). Applicable to the H264 28138c2ecf20Sopenharmony_ci encoder. 28148c2ecf20Sopenharmony_ci 28158c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH (boolean)`` 28168c2ecf20Sopenharmony_ci Adaptive rate control for smooth region. Valid only when H.264 and 28178c2ecf20Sopenharmony_ci macroblock level RC is enabled 28188c2ecf20Sopenharmony_ci (``V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE``). Applicable to the H264 28198c2ecf20Sopenharmony_ci encoder. 28208c2ecf20Sopenharmony_ci 28218c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC (boolean)`` 28228c2ecf20Sopenharmony_ci Adaptive rate control for static region. Valid only when H.264 and 28238c2ecf20Sopenharmony_ci macroblock level RC is enabled 28248c2ecf20Sopenharmony_ci (``V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE``). Applicable to the H264 28258c2ecf20Sopenharmony_ci encoder. 28268c2ecf20Sopenharmony_ci 28278c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY (boolean)`` 28288c2ecf20Sopenharmony_ci Adaptive rate control for activity region. Valid only when H.264 and 28298c2ecf20Sopenharmony_ci macroblock level RC is enabled 28308c2ecf20Sopenharmony_ci (``V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE``). Applicable to the H264 28318c2ecf20Sopenharmony_ci encoder. 28328c2ecf20Sopenharmony_ci 28338c2ecf20Sopenharmony_ci.. _v4l2-mpeg-mfc51-video-frame-skip-mode: 28348c2ecf20Sopenharmony_ci 28358c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE`` 28368c2ecf20Sopenharmony_ci (enum) 28378c2ecf20Sopenharmony_ci 28388c2ecf20Sopenharmony_ci .. note:: 28398c2ecf20Sopenharmony_ci 28408c2ecf20Sopenharmony_ci This control is deprecated. Use the standard 28418c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_FRAME_SKIP_MODE`` control instead. 28428c2ecf20Sopenharmony_ci 28438c2ecf20Sopenharmony_cienum v4l2_mpeg_mfc51_video_frame_skip_mode - 28448c2ecf20Sopenharmony_ci Indicates in what conditions the encoder should skip frames. If 28458c2ecf20Sopenharmony_ci encoding a frame would cause the encoded stream to be larger then a 28468c2ecf20Sopenharmony_ci chosen data limit then the frame will be skipped. Possible values 28478c2ecf20Sopenharmony_ci are: 28488c2ecf20Sopenharmony_ci 28498c2ecf20Sopenharmony_ci 28508c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.2cm}|p{8.3cm}| 28518c2ecf20Sopenharmony_ci 28528c2ecf20Sopenharmony_ci.. raw:: latex 28538c2ecf20Sopenharmony_ci 28548c2ecf20Sopenharmony_ci \small 28558c2ecf20Sopenharmony_ci 28568c2ecf20Sopenharmony_ci.. flat-table:: 28578c2ecf20Sopenharmony_ci :header-rows: 0 28588c2ecf20Sopenharmony_ci :stub-columns: 0 28598c2ecf20Sopenharmony_ci 28608c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_MFC51_FRAME_SKIP_MODE_DISABLED`` 28618c2ecf20Sopenharmony_ci - Frame skip mode is disabled. 28628c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_MFC51_FRAME_SKIP_MODE_LEVEL_LIMIT`` 28638c2ecf20Sopenharmony_ci - Frame skip mode enabled and buffer limit is set by the chosen 28648c2ecf20Sopenharmony_ci level and is defined by the standard. 28658c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_MFC51_FRAME_SKIP_MODE_BUF_LIMIT`` 28668c2ecf20Sopenharmony_ci - Frame skip mode enabled and buffer limit is set by the VBV 28678c2ecf20Sopenharmony_ci (MPEG1/2/4) or CPB (H264) buffer size control. 28688c2ecf20Sopenharmony_ci 28698c2ecf20Sopenharmony_ci.. raw:: latex 28708c2ecf20Sopenharmony_ci 28718c2ecf20Sopenharmony_ci \normalsize 28728c2ecf20Sopenharmony_ci 28738c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT (integer)`` 28748c2ecf20Sopenharmony_ci Enable rate-control with fixed target bit. If this setting is 28758c2ecf20Sopenharmony_ci enabled, then the rate control logic of the encoder will calculate 28768c2ecf20Sopenharmony_ci the average bitrate for a GOP and keep it below or equal the set 28778c2ecf20Sopenharmony_ci bitrate target. Otherwise the rate control logic calculates the 28788c2ecf20Sopenharmony_ci overall average bitrate for the stream and keeps it below or equal 28798c2ecf20Sopenharmony_ci to the set bitrate. In the first case the average bitrate for the 28808c2ecf20Sopenharmony_ci whole stream will be smaller then the set bitrate. This is caused 28818c2ecf20Sopenharmony_ci because the average is calculated for smaller number of frames, on 28828c2ecf20Sopenharmony_ci the other hand enabling this setting will ensure that the stream 28838c2ecf20Sopenharmony_ci will meet tight bandwidth constraints. Applicable to encoders. 28848c2ecf20Sopenharmony_ci 28858c2ecf20Sopenharmony_ci.. _v4l2-mpeg-mfc51-video-force-frame-type: 28868c2ecf20Sopenharmony_ci 28878c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE`` 28888c2ecf20Sopenharmony_ci (enum) 28898c2ecf20Sopenharmony_ci 28908c2ecf20Sopenharmony_cienum v4l2_mpeg_mfc51_video_force_frame_type - 28918c2ecf20Sopenharmony_ci Force a frame type for the next queued buffer. Applicable to 28928c2ecf20Sopenharmony_ci encoders. Possible values are: 28938c2ecf20Sopenharmony_ci 28948c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.5cm}|p{8.0cm}| 28958c2ecf20Sopenharmony_ci 28968c2ecf20Sopenharmony_ci.. flat-table:: 28978c2ecf20Sopenharmony_ci :header-rows: 0 28988c2ecf20Sopenharmony_ci :stub-columns: 0 28998c2ecf20Sopenharmony_ci 29008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_DISABLED`` 29018c2ecf20Sopenharmony_ci - Forcing a specific frame type disabled. 29028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_I_FRAME`` 29038c2ecf20Sopenharmony_ci - Force an I-frame. 29048c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_MFC51_FORCE_FRAME_TYPE_NOT_CODED`` 29058c2ecf20Sopenharmony_ci - Force a non-coded frame. 29068c2ecf20Sopenharmony_ci 29078c2ecf20Sopenharmony_ci 29088c2ecf20Sopenharmony_ci.. _v4l2-mpeg-fwht: 29098c2ecf20Sopenharmony_ci 29108c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_FWHT_PARAMS (struct)`` 29118c2ecf20Sopenharmony_ci Specifies the fwht parameters (as extracted from the bitstream) for the 29128c2ecf20Sopenharmony_ci associated FWHT data. This includes the necessary parameters for 29138c2ecf20Sopenharmony_ci configuring a stateless hardware decoding pipeline for FWHT. 29148c2ecf20Sopenharmony_ci 29158c2ecf20Sopenharmony_ci .. note:: 29168c2ecf20Sopenharmony_ci 29178c2ecf20Sopenharmony_ci This compound control is not yet part of the public kernel API and 29188c2ecf20Sopenharmony_ci it is expected to change. 29198c2ecf20Sopenharmony_ci 29208c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_fwht_params 29218c2ecf20Sopenharmony_ci 29228c2ecf20Sopenharmony_ci.. cssclass:: longtable 29238c2ecf20Sopenharmony_ci 29248c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{1.4cm}|p{4.3cm}|p{11.8cm}| 29258c2ecf20Sopenharmony_ci 29268c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_fwht_params 29278c2ecf20Sopenharmony_ci :header-rows: 0 29288c2ecf20Sopenharmony_ci :stub-columns: 0 29298c2ecf20Sopenharmony_ci :widths: 1 1 2 29308c2ecf20Sopenharmony_ci 29318c2ecf20Sopenharmony_ci * - __u64 29328c2ecf20Sopenharmony_ci - ``backward_ref_ts`` 29338c2ecf20Sopenharmony_ci - Timestamp of the V4L2 capture buffer to use as backward reference, used 29348c2ecf20Sopenharmony_ci with P-coded frames. The timestamp refers to the 29358c2ecf20Sopenharmony_ci ``timestamp`` field in struct :c:type:`v4l2_buffer`. Use the 29368c2ecf20Sopenharmony_ci :c:func:`v4l2_timeval_to_ns()` function to convert the struct 29378c2ecf20Sopenharmony_ci :c:type:`timeval` in struct :c:type:`v4l2_buffer` to a __u64. 29388c2ecf20Sopenharmony_ci * - __u32 29398c2ecf20Sopenharmony_ci - ``version`` 29408c2ecf20Sopenharmony_ci - The version of the codec 29418c2ecf20Sopenharmony_ci * - __u32 29428c2ecf20Sopenharmony_ci - ``width`` 29438c2ecf20Sopenharmony_ci - The width of the frame 29448c2ecf20Sopenharmony_ci * - __u32 29458c2ecf20Sopenharmony_ci - ``height`` 29468c2ecf20Sopenharmony_ci - The height of the frame 29478c2ecf20Sopenharmony_ci * - __u32 29488c2ecf20Sopenharmony_ci - ``flags`` 29498c2ecf20Sopenharmony_ci - The flags of the frame, see :ref:`fwht-flags`. 29508c2ecf20Sopenharmony_ci * - __u32 29518c2ecf20Sopenharmony_ci - ``colorspace`` 29528c2ecf20Sopenharmony_ci - The colorspace of the frame, from enum :c:type:`v4l2_colorspace`. 29538c2ecf20Sopenharmony_ci * - __u32 29548c2ecf20Sopenharmony_ci - ``xfer_func`` 29558c2ecf20Sopenharmony_ci - The transfer function, from enum :c:type:`v4l2_xfer_func`. 29568c2ecf20Sopenharmony_ci * - __u32 29578c2ecf20Sopenharmony_ci - ``ycbcr_enc`` 29588c2ecf20Sopenharmony_ci - The Y'CbCr encoding, from enum :c:type:`v4l2_ycbcr_encoding`. 29598c2ecf20Sopenharmony_ci * - __u32 29608c2ecf20Sopenharmony_ci - ``quantization`` 29618c2ecf20Sopenharmony_ci - The quantization range, from enum :c:type:`v4l2_quantization`. 29628c2ecf20Sopenharmony_ci 29638c2ecf20Sopenharmony_ci 29648c2ecf20Sopenharmony_ci 29658c2ecf20Sopenharmony_ci.. _fwht-flags: 29668c2ecf20Sopenharmony_ci 29678c2ecf20Sopenharmony_ciFWHT Flags 29688c2ecf20Sopenharmony_ci============ 29698c2ecf20Sopenharmony_ci 29708c2ecf20Sopenharmony_ci.. cssclass:: longtable 29718c2ecf20Sopenharmony_ci 29728c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{6.8cm}|p{2.4cm}|p{8.3cm}| 29738c2ecf20Sopenharmony_ci 29748c2ecf20Sopenharmony_ci.. flat-table:: 29758c2ecf20Sopenharmony_ci :header-rows: 0 29768c2ecf20Sopenharmony_ci :stub-columns: 0 29778c2ecf20Sopenharmony_ci :widths: 3 1 4 29788c2ecf20Sopenharmony_ci 29798c2ecf20Sopenharmony_ci * - ``FWHT_FL_IS_INTERLACED`` 29808c2ecf20Sopenharmony_ci - 0x00000001 29818c2ecf20Sopenharmony_ci - Set if this is an interlaced format 29828c2ecf20Sopenharmony_ci * - ``FWHT_FL_IS_BOTTOM_FIRST`` 29838c2ecf20Sopenharmony_ci - 0x00000002 29848c2ecf20Sopenharmony_ci - Set if this is a bottom-first (NTSC) interlaced format 29858c2ecf20Sopenharmony_ci * - ``FWHT_FL_IS_ALTERNATE`` 29868c2ecf20Sopenharmony_ci - 0x00000004 29878c2ecf20Sopenharmony_ci - Set if each 'frame' contains just one field 29888c2ecf20Sopenharmony_ci * - ``FWHT_FL_IS_BOTTOM_FIELD`` 29898c2ecf20Sopenharmony_ci - 0x00000008 29908c2ecf20Sopenharmony_ci - If FWHT_FL_IS_ALTERNATE was set, then this is set if this 'frame' is the 29918c2ecf20Sopenharmony_ci bottom field, else it is the top field. 29928c2ecf20Sopenharmony_ci * - ``FWHT_FL_LUMA_IS_UNCOMPRESSED`` 29938c2ecf20Sopenharmony_ci - 0x00000010 29948c2ecf20Sopenharmony_ci - Set if the luma plane is uncompressed 29958c2ecf20Sopenharmony_ci * - ``FWHT_FL_CB_IS_UNCOMPRESSED`` 29968c2ecf20Sopenharmony_ci - 0x00000020 29978c2ecf20Sopenharmony_ci - Set if the cb plane is uncompressed 29988c2ecf20Sopenharmony_ci * - ``FWHT_FL_CR_IS_UNCOMPRESSED`` 29998c2ecf20Sopenharmony_ci - 0x00000040 30008c2ecf20Sopenharmony_ci - Set if the cr plane is uncompressed 30018c2ecf20Sopenharmony_ci * - ``FWHT_FL_CHROMA_FULL_HEIGHT`` 30028c2ecf20Sopenharmony_ci - 0x00000080 30038c2ecf20Sopenharmony_ci - Set if the chroma plane has the same height as the luma plane, 30048c2ecf20Sopenharmony_ci else the chroma plane is half the height of the luma plane 30058c2ecf20Sopenharmony_ci * - ``FWHT_FL_CHROMA_FULL_WIDTH`` 30068c2ecf20Sopenharmony_ci - 0x00000100 30078c2ecf20Sopenharmony_ci - Set if the chroma plane has the same width as the luma plane, 30088c2ecf20Sopenharmony_ci else the chroma plane is half the width of the luma plane 30098c2ecf20Sopenharmony_ci * - ``FWHT_FL_ALPHA_IS_UNCOMPRESSED`` 30108c2ecf20Sopenharmony_ci - 0x00000200 30118c2ecf20Sopenharmony_ci - Set if the alpha plane is uncompressed 30128c2ecf20Sopenharmony_ci * - ``FWHT_FL_I_FRAME`` 30138c2ecf20Sopenharmony_ci - 0x00000400 30148c2ecf20Sopenharmony_ci - Set if this is an I-frame 30158c2ecf20Sopenharmony_ci * - ``FWHT_FL_COMPONENTS_NUM_MSK`` 30168c2ecf20Sopenharmony_ci - 0x00070000 30178c2ecf20Sopenharmony_ci - A 4-values flag - the number of components - 1 30188c2ecf20Sopenharmony_ci * - ``FWHT_FL_PIXENC_YUV`` 30198c2ecf20Sopenharmony_ci - 0x00080000 30208c2ecf20Sopenharmony_ci - Set if the pixel encoding is YUV 30218c2ecf20Sopenharmony_ci * - ``FWHT_FL_PIXENC_RGB`` 30228c2ecf20Sopenharmony_ci - 0x00100000 30238c2ecf20Sopenharmony_ci - Set if the pixel encoding is RGB 30248c2ecf20Sopenharmony_ci * - ``FWHT_FL_PIXENC_HSV`` 30258c2ecf20Sopenharmony_ci - 0x00180000 30268c2ecf20Sopenharmony_ci - Set if the pixel encoding is HSV 30278c2ecf20Sopenharmony_ci 30288c2ecf20Sopenharmony_ci 30298c2ecf20Sopenharmony_ciCX2341x MPEG Controls 30308c2ecf20Sopenharmony_ci===================== 30318c2ecf20Sopenharmony_ci 30328c2ecf20Sopenharmony_ciThe following MPEG class controls deal with MPEG encoding settings that 30338c2ecf20Sopenharmony_ciare specific to the Conexant CX23415 and CX23416 MPEG encoding chips. 30348c2ecf20Sopenharmony_ci 30358c2ecf20Sopenharmony_ci 30368c2ecf20Sopenharmony_ci.. _cx2341x-control-id: 30378c2ecf20Sopenharmony_ci 30388c2ecf20Sopenharmony_ciCX2341x Control IDs 30398c2ecf20Sopenharmony_ci------------------- 30408c2ecf20Sopenharmony_ci 30418c2ecf20Sopenharmony_ci.. _v4l2-mpeg-cx2341x-video-spatial-filter-mode: 30428c2ecf20Sopenharmony_ci 30438c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE`` 30448c2ecf20Sopenharmony_ci (enum) 30458c2ecf20Sopenharmony_ci 30468c2ecf20Sopenharmony_cienum v4l2_mpeg_cx2341x_video_spatial_filter_mode - 30478c2ecf20Sopenharmony_ci Sets the Spatial Filter mode (default ``MANUAL``). Possible values 30488c2ecf20Sopenharmony_ci are: 30498c2ecf20Sopenharmony_ci 30508c2ecf20Sopenharmony_ci 30518c2ecf20Sopenharmony_ci 30528c2ecf20Sopenharmony_ci.. flat-table:: 30538c2ecf20Sopenharmony_ci :header-rows: 0 30548c2ecf20Sopenharmony_ci :stub-columns: 0 30558c2ecf20Sopenharmony_ci 30568c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL`` 30578c2ecf20Sopenharmony_ci - Choose the filter manually 30588c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO`` 30598c2ecf20Sopenharmony_ci - Choose the filter automatically 30608c2ecf20Sopenharmony_ci 30618c2ecf20Sopenharmony_ci 30628c2ecf20Sopenharmony_ci 30638c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (integer (0-15))`` 30648c2ecf20Sopenharmony_ci The setting for the Spatial Filter. 0 = off, 15 = maximum. (Default 30658c2ecf20Sopenharmony_ci is 0.) 30668c2ecf20Sopenharmony_ci 30678c2ecf20Sopenharmony_ci.. _luma-spatial-filter-type: 30688c2ecf20Sopenharmony_ci 30698c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE`` 30708c2ecf20Sopenharmony_ci (enum) 30718c2ecf20Sopenharmony_ci 30728c2ecf20Sopenharmony_cienum v4l2_mpeg_cx2341x_video_luma_spatial_filter_type - 30738c2ecf20Sopenharmony_ci Select the algorithm to use for the Luma Spatial Filter (default 30748c2ecf20Sopenharmony_ci ``1D_HOR``). Possible values: 30758c2ecf20Sopenharmony_ci 30768c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{14.5cm}|p{3.0cm}| 30778c2ecf20Sopenharmony_ci 30788c2ecf20Sopenharmony_ci.. raw:: latex 30798c2ecf20Sopenharmony_ci 30808c2ecf20Sopenharmony_ci \small 30818c2ecf20Sopenharmony_ci 30828c2ecf20Sopenharmony_ci.. flat-table:: 30838c2ecf20Sopenharmony_ci :header-rows: 0 30848c2ecf20Sopenharmony_ci :stub-columns: 0 30858c2ecf20Sopenharmony_ci 30868c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF`` 30878c2ecf20Sopenharmony_ci - No filter 30888c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR`` 30898c2ecf20Sopenharmony_ci - One-dimensional horizontal 30908c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT`` 30918c2ecf20Sopenharmony_ci - One-dimensional vertical 30928c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE`` 30938c2ecf20Sopenharmony_ci - Two-dimensional separable 30948c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE`` 30958c2ecf20Sopenharmony_ci - Two-dimensional symmetrical non-separable 30968c2ecf20Sopenharmony_ci 30978c2ecf20Sopenharmony_ci.. raw:: latex 30988c2ecf20Sopenharmony_ci 30998c2ecf20Sopenharmony_ci \normalsize 31008c2ecf20Sopenharmony_ci 31018c2ecf20Sopenharmony_ci 31028c2ecf20Sopenharmony_ci 31038c2ecf20Sopenharmony_ci.. _chroma-spatial-filter-type: 31048c2ecf20Sopenharmony_ci 31058c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE`` 31068c2ecf20Sopenharmony_ci (enum) 31078c2ecf20Sopenharmony_ci 31088c2ecf20Sopenharmony_cienum v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type - 31098c2ecf20Sopenharmony_ci Select the algorithm for the Chroma Spatial Filter (default 31108c2ecf20Sopenharmony_ci ``1D_HOR``). Possible values are: 31118c2ecf20Sopenharmony_ci 31128c2ecf20Sopenharmony_ci 31138c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{14.0cm}|p{3.5cm}| 31148c2ecf20Sopenharmony_ci 31158c2ecf20Sopenharmony_ci.. flat-table:: 31168c2ecf20Sopenharmony_ci :header-rows: 0 31178c2ecf20Sopenharmony_ci :stub-columns: 0 31188c2ecf20Sopenharmony_ci 31198c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF`` 31208c2ecf20Sopenharmony_ci - No filter 31218c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR`` 31228c2ecf20Sopenharmony_ci - One-dimensional horizontal 31238c2ecf20Sopenharmony_ci 31248c2ecf20Sopenharmony_ci 31258c2ecf20Sopenharmony_ci 31268c2ecf20Sopenharmony_ci.. _v4l2-mpeg-cx2341x-video-temporal-filter-mode: 31278c2ecf20Sopenharmony_ci 31288c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE`` 31298c2ecf20Sopenharmony_ci (enum) 31308c2ecf20Sopenharmony_ci 31318c2ecf20Sopenharmony_cienum v4l2_mpeg_cx2341x_video_temporal_filter_mode - 31328c2ecf20Sopenharmony_ci Sets the Temporal Filter mode (default ``MANUAL``). Possible values 31338c2ecf20Sopenharmony_ci are: 31348c2ecf20Sopenharmony_ci 31358c2ecf20Sopenharmony_ci 31368c2ecf20Sopenharmony_ci 31378c2ecf20Sopenharmony_ci.. flat-table:: 31388c2ecf20Sopenharmony_ci :header-rows: 0 31398c2ecf20Sopenharmony_ci :stub-columns: 0 31408c2ecf20Sopenharmony_ci 31418c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL`` 31428c2ecf20Sopenharmony_ci - Choose the filter manually 31438c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO`` 31448c2ecf20Sopenharmony_ci - Choose the filter automatically 31458c2ecf20Sopenharmony_ci 31468c2ecf20Sopenharmony_ci 31478c2ecf20Sopenharmony_ci 31488c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (integer (0-31))`` 31498c2ecf20Sopenharmony_ci The setting for the Temporal Filter. 0 = off, 31 = maximum. (Default 31508c2ecf20Sopenharmony_ci is 8 for full-scale capturing and 0 for scaled capturing.) 31518c2ecf20Sopenharmony_ci 31528c2ecf20Sopenharmony_ci.. _v4l2-mpeg-cx2341x-video-median-filter-type: 31538c2ecf20Sopenharmony_ci 31548c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE`` 31558c2ecf20Sopenharmony_ci (enum) 31568c2ecf20Sopenharmony_ci 31578c2ecf20Sopenharmony_cienum v4l2_mpeg_cx2341x_video_median_filter_type - 31588c2ecf20Sopenharmony_ci Median Filter Type (default ``OFF``). Possible values are: 31598c2ecf20Sopenharmony_ci 31608c2ecf20Sopenharmony_ci 31618c2ecf20Sopenharmony_ci 31628c2ecf20Sopenharmony_ci.. flat-table:: 31638c2ecf20Sopenharmony_ci :header-rows: 0 31648c2ecf20Sopenharmony_ci :stub-columns: 0 31658c2ecf20Sopenharmony_ci 31668c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF`` 31678c2ecf20Sopenharmony_ci - No filter 31688c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR`` 31698c2ecf20Sopenharmony_ci - Horizontal filter 31708c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT`` 31718c2ecf20Sopenharmony_ci - Vertical filter 31728c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT`` 31738c2ecf20Sopenharmony_ci - Horizontal and vertical filter 31748c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG`` 31758c2ecf20Sopenharmony_ci - Diagonal filter 31768c2ecf20Sopenharmony_ci 31778c2ecf20Sopenharmony_ci 31788c2ecf20Sopenharmony_ci 31798c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (integer (0-255))`` 31808c2ecf20Sopenharmony_ci Threshold above which the luminance median filter is enabled 31818c2ecf20Sopenharmony_ci (default 0) 31828c2ecf20Sopenharmony_ci 31838c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (integer (0-255))`` 31848c2ecf20Sopenharmony_ci Threshold below which the luminance median filter is enabled 31858c2ecf20Sopenharmony_ci (default 255) 31868c2ecf20Sopenharmony_ci 31878c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM (integer (0-255))`` 31888c2ecf20Sopenharmony_ci Threshold above which the chroma median filter is enabled (default 31898c2ecf20Sopenharmony_ci 0) 31908c2ecf20Sopenharmony_ci 31918c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP (integer (0-255))`` 31928c2ecf20Sopenharmony_ci Threshold below which the chroma median filter is enabled (default 31938c2ecf20Sopenharmony_ci 255) 31948c2ecf20Sopenharmony_ci 31958c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS (boolean)`` 31968c2ecf20Sopenharmony_ci The CX2341X MPEG encoder can insert one empty MPEG-2 PES packet into 31978c2ecf20Sopenharmony_ci the stream between every four video frames. The packet size is 2048 31988c2ecf20Sopenharmony_ci bytes, including the packet_start_code_prefix and stream_id 31998c2ecf20Sopenharmony_ci fields. The stream_id is 0xBF (private stream 2). The payload 32008c2ecf20Sopenharmony_ci consists of 0x00 bytes, to be filled in by the application. 0 = do 32018c2ecf20Sopenharmony_ci not insert, 1 = insert packets. 32028c2ecf20Sopenharmony_ci 32038c2ecf20Sopenharmony_ci 32048c2ecf20Sopenharmony_ciVPX Control Reference 32058c2ecf20Sopenharmony_ci===================== 32068c2ecf20Sopenharmony_ci 32078c2ecf20Sopenharmony_ciThe VPX controls include controls for encoding parameters of VPx video 32088c2ecf20Sopenharmony_cicodec. 32098c2ecf20Sopenharmony_ci 32108c2ecf20Sopenharmony_ci 32118c2ecf20Sopenharmony_ci.. _vpx-control-id: 32128c2ecf20Sopenharmony_ci 32138c2ecf20Sopenharmony_ciVPX Control IDs 32148c2ecf20Sopenharmony_ci--------------- 32158c2ecf20Sopenharmony_ci 32168c2ecf20Sopenharmony_ci.. _v4l2-vpx-num-partitions: 32178c2ecf20Sopenharmony_ci 32188c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS`` 32198c2ecf20Sopenharmony_ci (enum) 32208c2ecf20Sopenharmony_ci 32218c2ecf20Sopenharmony_cienum v4l2_vp8_num_partitions - 32228c2ecf20Sopenharmony_ci The number of token partitions to use in VP8 encoder. Possible 32238c2ecf20Sopenharmony_ci values are: 32248c2ecf20Sopenharmony_ci 32258c2ecf20Sopenharmony_ci 32268c2ecf20Sopenharmony_ci 32278c2ecf20Sopenharmony_ci.. flat-table:: 32288c2ecf20Sopenharmony_ci :header-rows: 0 32298c2ecf20Sopenharmony_ci :stub-columns: 0 32308c2ecf20Sopenharmony_ci 32318c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION`` 32328c2ecf20Sopenharmony_ci - 1 coefficient partition 32338c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS`` 32348c2ecf20Sopenharmony_ci - 2 coefficient partitions 32358c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS`` 32368c2ecf20Sopenharmony_ci - 4 coefficient partitions 32378c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS`` 32388c2ecf20Sopenharmony_ci - 8 coefficient partitions 32398c2ecf20Sopenharmony_ci 32408c2ecf20Sopenharmony_ci 32418c2ecf20Sopenharmony_ci 32428c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4 (boolean)`` 32438c2ecf20Sopenharmony_ci Setting this prevents intra 4x4 mode in the intra mode decision. 32448c2ecf20Sopenharmony_ci 32458c2ecf20Sopenharmony_ci.. _v4l2-vpx-num-ref-frames: 32468c2ecf20Sopenharmony_ci 32478c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES`` 32488c2ecf20Sopenharmony_ci (enum) 32498c2ecf20Sopenharmony_ci 32508c2ecf20Sopenharmony_cienum v4l2_vp8_num_ref_frames - 32518c2ecf20Sopenharmony_ci The number of reference pictures for encoding P frames. Possible 32528c2ecf20Sopenharmony_ci values are: 32538c2ecf20Sopenharmony_ci 32548c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{7.9cm}|p{9.6cm}| 32558c2ecf20Sopenharmony_ci 32568c2ecf20Sopenharmony_ci.. raw:: latex 32578c2ecf20Sopenharmony_ci 32588c2ecf20Sopenharmony_ci \small 32598c2ecf20Sopenharmony_ci 32608c2ecf20Sopenharmony_ci.. flat-table:: 32618c2ecf20Sopenharmony_ci :header-rows: 0 32628c2ecf20Sopenharmony_ci :stub-columns: 0 32638c2ecf20Sopenharmony_ci 32648c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME`` 32658c2ecf20Sopenharmony_ci - Last encoded frame will be searched 32668c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME`` 32678c2ecf20Sopenharmony_ci - Two frames will be searched among the last encoded frame, the 32688c2ecf20Sopenharmony_ci golden frame and the alternate reference (altref) frame. The 32698c2ecf20Sopenharmony_ci encoder implementation will decide which two are chosen. 32708c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME`` 32718c2ecf20Sopenharmony_ci - The last encoded frame, the golden frame and the altref frame will 32728c2ecf20Sopenharmony_ci be searched. 32738c2ecf20Sopenharmony_ci 32748c2ecf20Sopenharmony_ci.. raw:: latex 32758c2ecf20Sopenharmony_ci 32768c2ecf20Sopenharmony_ci \normalsize 32778c2ecf20Sopenharmony_ci 32788c2ecf20Sopenharmony_ci 32798c2ecf20Sopenharmony_ci 32808c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL (integer)`` 32818c2ecf20Sopenharmony_ci Indicates the loop filter level. The adjustment of the loop filter 32828c2ecf20Sopenharmony_ci level is done via a delta value against a baseline loop filter 32838c2ecf20Sopenharmony_ci value. 32848c2ecf20Sopenharmony_ci 32858c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS (integer)`` 32868c2ecf20Sopenharmony_ci This parameter affects the loop filter. Anything above zero weakens 32878c2ecf20Sopenharmony_ci the deblocking effect on the loop filter. 32888c2ecf20Sopenharmony_ci 32898c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD (integer)`` 32908c2ecf20Sopenharmony_ci Sets the refresh period for the golden frame. The period is defined 32918c2ecf20Sopenharmony_ci in number of frames. For a value of 'n', every nth frame starting 32928c2ecf20Sopenharmony_ci from the first key frame will be taken as a golden frame. For eg. 32938c2ecf20Sopenharmony_ci for encoding sequence of 0, 1, 2, 3, 4, 5, 6, 7 where the golden 32948c2ecf20Sopenharmony_ci frame refresh period is set as 4, the frames 0, 4, 8 etc will be 32958c2ecf20Sopenharmony_ci taken as the golden frames as frame 0 is always a key frame. 32968c2ecf20Sopenharmony_ci 32978c2ecf20Sopenharmony_ci.. _v4l2-vpx-golden-frame-sel: 32988c2ecf20Sopenharmony_ci 32998c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL`` 33008c2ecf20Sopenharmony_ci (enum) 33018c2ecf20Sopenharmony_ci 33028c2ecf20Sopenharmony_cienum v4l2_vp8_golden_frame_sel - 33038c2ecf20Sopenharmony_ci Selects the golden frame for encoding. Possible values are: 33048c2ecf20Sopenharmony_ci 33058c2ecf20Sopenharmony_ci.. raw:: latex 33068c2ecf20Sopenharmony_ci 33078c2ecf20Sopenharmony_ci \scriptsize 33088c2ecf20Sopenharmony_ci 33098c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.0cm}|p{8.0cm}| 33108c2ecf20Sopenharmony_ci 33118c2ecf20Sopenharmony_ci.. flat-table:: 33128c2ecf20Sopenharmony_ci :header-rows: 0 33138c2ecf20Sopenharmony_ci :stub-columns: 0 33148c2ecf20Sopenharmony_ci 33158c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV`` 33168c2ecf20Sopenharmony_ci - Use the (n-2)th frame as a golden frame, current frame index being 33178c2ecf20Sopenharmony_ci 'n'. 33188c2ecf20Sopenharmony_ci * - ``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD`` 33198c2ecf20Sopenharmony_ci - Use the previous specific frame indicated by 33208c2ecf20Sopenharmony_ci ``V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD`` as a 33218c2ecf20Sopenharmony_ci golden frame. 33228c2ecf20Sopenharmony_ci 33238c2ecf20Sopenharmony_ci.. raw:: latex 33248c2ecf20Sopenharmony_ci 33258c2ecf20Sopenharmony_ci \normalsize 33268c2ecf20Sopenharmony_ci 33278c2ecf20Sopenharmony_ci 33288c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_MIN_QP (integer)`` 33298c2ecf20Sopenharmony_ci Minimum quantization parameter for VP8. 33308c2ecf20Sopenharmony_ci 33318c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_MAX_QP (integer)`` 33328c2ecf20Sopenharmony_ci Maximum quantization parameter for VP8. 33338c2ecf20Sopenharmony_ci 33348c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP (integer)`` 33358c2ecf20Sopenharmony_ci Quantization parameter for an I frame for VP8. 33368c2ecf20Sopenharmony_ci 33378c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP (integer)`` 33388c2ecf20Sopenharmony_ci Quantization parameter for a P frame for VP8. 33398c2ecf20Sopenharmony_ci 33408c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-vp8-profile: 33418c2ecf20Sopenharmony_ci 33428c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VP8_PROFILE`` 33438c2ecf20Sopenharmony_ci (enum) 33448c2ecf20Sopenharmony_ci 33458c2ecf20Sopenharmony_cienum v4l2_mpeg_video_vp8_profile - 33468c2ecf20Sopenharmony_ci This control allows selecting the profile for VP8 encoder. 33478c2ecf20Sopenharmony_ci This is also used to enumerate supported profiles by VP8 encoder or decoder. 33488c2ecf20Sopenharmony_ci Possible values are: 33498c2ecf20Sopenharmony_ci 33508c2ecf20Sopenharmony_ci.. flat-table:: 33518c2ecf20Sopenharmony_ci :header-rows: 0 33528c2ecf20Sopenharmony_ci :stub-columns: 0 33538c2ecf20Sopenharmony_ci 33548c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_0`` 33558c2ecf20Sopenharmony_ci - Profile 0 33568c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_1`` 33578c2ecf20Sopenharmony_ci - Profile 1 33588c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_2`` 33598c2ecf20Sopenharmony_ci - Profile 2 33608c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP8_PROFILE_3`` 33618c2ecf20Sopenharmony_ci - Profile 3 33628c2ecf20Sopenharmony_ci 33638c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-vp9-profile: 33648c2ecf20Sopenharmony_ci 33658c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VP9_PROFILE`` 33668c2ecf20Sopenharmony_ci (enum) 33678c2ecf20Sopenharmony_ci 33688c2ecf20Sopenharmony_cienum v4l2_mpeg_video_vp9_profile - 33698c2ecf20Sopenharmony_ci This control allows selecting the profile for VP9 encoder. 33708c2ecf20Sopenharmony_ci This is also used to enumerate supported profiles by VP9 encoder or decoder. 33718c2ecf20Sopenharmony_ci Possible values are: 33728c2ecf20Sopenharmony_ci 33738c2ecf20Sopenharmony_ci.. flat-table:: 33748c2ecf20Sopenharmony_ci :header-rows: 0 33758c2ecf20Sopenharmony_ci :stub-columns: 0 33768c2ecf20Sopenharmony_ci 33778c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_0`` 33788c2ecf20Sopenharmony_ci - Profile 0 33798c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_1`` 33808c2ecf20Sopenharmony_ci - Profile 1 33818c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_2`` 33828c2ecf20Sopenharmony_ci - Profile 2 33838c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_PROFILE_3`` 33848c2ecf20Sopenharmony_ci - Profile 3 33858c2ecf20Sopenharmony_ci 33868c2ecf20Sopenharmony_ci.. _v4l2-mpeg-video-vp9-level: 33878c2ecf20Sopenharmony_ci 33888c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_VP9_LEVEL (enum)`` 33898c2ecf20Sopenharmony_ci 33908c2ecf20Sopenharmony_cienum v4l2_mpeg_video_vp9_level - 33918c2ecf20Sopenharmony_ci This control allows selecting the level for VP9 encoder. 33928c2ecf20Sopenharmony_ci This is also used to enumerate supported levels by VP9 encoder or decoder. 33938c2ecf20Sopenharmony_ci More information can be found at 33948c2ecf20Sopenharmony_ci `webmproject <https://www.webmproject.org/vp9/levels/>`__. Possible values are: 33958c2ecf20Sopenharmony_ci 33968c2ecf20Sopenharmony_ci.. flat-table:: 33978c2ecf20Sopenharmony_ci :header-rows: 0 33988c2ecf20Sopenharmony_ci :stub-columns: 0 33998c2ecf20Sopenharmony_ci 34008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_1_0`` 34018c2ecf20Sopenharmony_ci - Level 1 34028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_1_1`` 34038c2ecf20Sopenharmony_ci - Level 1.1 34048c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_2_0`` 34058c2ecf20Sopenharmony_ci - Level 2 34068c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_2_1`` 34078c2ecf20Sopenharmony_ci - Level 2.1 34088c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_3_0`` 34098c2ecf20Sopenharmony_ci - Level 3 34108c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_3_1`` 34118c2ecf20Sopenharmony_ci - Level 3.1 34128c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_4_0`` 34138c2ecf20Sopenharmony_ci - Level 4 34148c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_4_1`` 34158c2ecf20Sopenharmony_ci - Level 4.1 34168c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_5_0`` 34178c2ecf20Sopenharmony_ci - Level 5 34188c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_5_1`` 34198c2ecf20Sopenharmony_ci - Level 5.1 34208c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_5_2`` 34218c2ecf20Sopenharmony_ci - Level 5.2 34228c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_6_0`` 34238c2ecf20Sopenharmony_ci - Level 6 34248c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_6_1`` 34258c2ecf20Sopenharmony_ci - Level 6.1 34268c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_VP9_LEVEL_6_2`` 34278c2ecf20Sopenharmony_ci - Level 6.2 34288c2ecf20Sopenharmony_ci 34298c2ecf20Sopenharmony_ci 34308c2ecf20Sopenharmony_ciHigh Efficiency Video Coding (HEVC/H.265) Control Reference 34318c2ecf20Sopenharmony_ci=========================================================== 34328c2ecf20Sopenharmony_ci 34338c2ecf20Sopenharmony_ciThe HEVC/H.265 controls include controls for encoding parameters of HEVC/H.265 34348c2ecf20Sopenharmony_civideo codec. 34358c2ecf20Sopenharmony_ci 34368c2ecf20Sopenharmony_ci 34378c2ecf20Sopenharmony_ci.. _hevc-control-id: 34388c2ecf20Sopenharmony_ci 34398c2ecf20Sopenharmony_ciHEVC/H.265 Control IDs 34408c2ecf20Sopenharmony_ci---------------------- 34418c2ecf20Sopenharmony_ci 34428c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP (integer)`` 34438c2ecf20Sopenharmony_ci Minimum quantization parameter for HEVC. 34448c2ecf20Sopenharmony_ci Valid range: from 0 to 51. 34458c2ecf20Sopenharmony_ci 34468c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP (integer)`` 34478c2ecf20Sopenharmony_ci Maximum quantization parameter for HEVC. 34488c2ecf20Sopenharmony_ci Valid range: from 0 to 51. 34498c2ecf20Sopenharmony_ci 34508c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_I_FRAME_QP (integer)`` 34518c2ecf20Sopenharmony_ci Quantization parameter for an I frame for HEVC. 34528c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 34538c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 34548c2ecf20Sopenharmony_ci 34558c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_P_FRAME_QP (integer)`` 34568c2ecf20Sopenharmony_ci Quantization parameter for a P frame for HEVC. 34578c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 34588c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 34598c2ecf20Sopenharmony_ci 34608c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_QP (integer)`` 34618c2ecf20Sopenharmony_ci Quantization parameter for a B frame for HEVC. 34628c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 34638c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 34648c2ecf20Sopenharmony_ci 34658c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_QP (boolean)`` 34668c2ecf20Sopenharmony_ci HIERARCHICAL_QP allows the host to specify the quantization parameter 34678c2ecf20Sopenharmony_ci values for each temporal layer through HIERARCHICAL_QP_LAYER. This is 34688c2ecf20Sopenharmony_ci valid only if HIERARCHICAL_CODING_LAYER is greater than 1. Setting the 34698c2ecf20Sopenharmony_ci control value to 1 enables setting of the QP values for the layers. 34708c2ecf20Sopenharmony_ci 34718c2ecf20Sopenharmony_ci.. _v4l2-hevc-hier-coding-type: 34728c2ecf20Sopenharmony_ci 34738c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_TYPE`` 34748c2ecf20Sopenharmony_ci (enum) 34758c2ecf20Sopenharmony_ci 34768c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_hier_coding_type - 34778c2ecf20Sopenharmony_ci Selects the hierarchical coding type for encoding. Possible values are: 34788c2ecf20Sopenharmony_ci 34798c2ecf20Sopenharmony_ci.. raw:: latex 34808c2ecf20Sopenharmony_ci 34818c2ecf20Sopenharmony_ci \footnotesize 34828c2ecf20Sopenharmony_ci 34838c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.0cm}|p{8.0cm}| 34848c2ecf20Sopenharmony_ci 34858c2ecf20Sopenharmony_ci.. flat-table:: 34868c2ecf20Sopenharmony_ci :header-rows: 0 34878c2ecf20Sopenharmony_ci :stub-columns: 0 34888c2ecf20Sopenharmony_ci 34898c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_B`` 34908c2ecf20Sopenharmony_ci - Use the B frame for hierarchical coding. 34918c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_P`` 34928c2ecf20Sopenharmony_ci - Use the P frame for hierarchical coding. 34938c2ecf20Sopenharmony_ci 34948c2ecf20Sopenharmony_ci.. raw:: latex 34958c2ecf20Sopenharmony_ci 34968c2ecf20Sopenharmony_ci \normalsize 34978c2ecf20Sopenharmony_ci 34988c2ecf20Sopenharmony_ci 34998c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_LAYER (integer)`` 35008c2ecf20Sopenharmony_ci Selects the hierarchical coding layer. In normal encoding 35018c2ecf20Sopenharmony_ci (non-hierarchial coding), it should be zero. Possible values are [0, 6]. 35028c2ecf20Sopenharmony_ci 0 indicates HIERARCHICAL CODING LAYER 0, 1 indicates HIERARCHICAL CODING 35038c2ecf20Sopenharmony_ci LAYER 1 and so on. 35048c2ecf20Sopenharmony_ci 35058c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L0_QP (integer)`` 35068c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 0. 35078c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35088c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35098c2ecf20Sopenharmony_ci 35108c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L1_QP (integer)`` 35118c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 1. 35128c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35138c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35148c2ecf20Sopenharmony_ci 35158c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L2_QP (integer)`` 35168c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 2. 35178c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35188c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35198c2ecf20Sopenharmony_ci 35208c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L3_QP (integer)`` 35218c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 3. 35228c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35238c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35248c2ecf20Sopenharmony_ci 35258c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L4_QP (integer)`` 35268c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 4. 35278c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35288c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35298c2ecf20Sopenharmony_ci 35308c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L5_QP (integer)`` 35318c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 5. 35328c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35338c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35348c2ecf20Sopenharmony_ci 35358c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L6_QP (integer)`` 35368c2ecf20Sopenharmony_ci Indicates quantization parameter for hierarchical coding layer 6. 35378c2ecf20Sopenharmony_ci Valid range: [V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP, 35388c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP]. 35398c2ecf20Sopenharmony_ci 35408c2ecf20Sopenharmony_ci.. _v4l2-hevc-profile: 35418c2ecf20Sopenharmony_ci 35428c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_PROFILE`` 35438c2ecf20Sopenharmony_ci (enum) 35448c2ecf20Sopenharmony_ci 35458c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_profile - 35468c2ecf20Sopenharmony_ci Select the desired profile for HEVC encoder. 35478c2ecf20Sopenharmony_ci 35488c2ecf20Sopenharmony_ci.. raw:: latex 35498c2ecf20Sopenharmony_ci 35508c2ecf20Sopenharmony_ci \footnotesize 35518c2ecf20Sopenharmony_ci 35528c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.0cm}|p{8.0cm}| 35538c2ecf20Sopenharmony_ci 35548c2ecf20Sopenharmony_ci.. flat-table:: 35558c2ecf20Sopenharmony_ci :header-rows: 0 35568c2ecf20Sopenharmony_ci :stub-columns: 0 35578c2ecf20Sopenharmony_ci 35588c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN`` 35598c2ecf20Sopenharmony_ci - Main profile. 35608c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE`` 35618c2ecf20Sopenharmony_ci - Main still picture profile. 35628c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10`` 35638c2ecf20Sopenharmony_ci - Main 10 profile. 35648c2ecf20Sopenharmony_ci 35658c2ecf20Sopenharmony_ci.. raw:: latex 35668c2ecf20Sopenharmony_ci 35678c2ecf20Sopenharmony_ci \normalsize 35688c2ecf20Sopenharmony_ci 35698c2ecf20Sopenharmony_ci 35708c2ecf20Sopenharmony_ci.. _v4l2-hevc-level: 35718c2ecf20Sopenharmony_ci 35728c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_LEVEL`` 35738c2ecf20Sopenharmony_ci (enum) 35748c2ecf20Sopenharmony_ci 35758c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_level - 35768c2ecf20Sopenharmony_ci Selects the desired level for HEVC encoder. 35778c2ecf20Sopenharmony_ci 35788c2ecf20Sopenharmony_ci.. raw:: latex 35798c2ecf20Sopenharmony_ci 35808c2ecf20Sopenharmony_ci \footnotesize 35818c2ecf20Sopenharmony_ci 35828c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.0cm}|p{8.0cm}| 35838c2ecf20Sopenharmony_ci 35848c2ecf20Sopenharmony_ci.. flat-table:: 35858c2ecf20Sopenharmony_ci :header-rows: 0 35868c2ecf20Sopenharmony_ci :stub-columns: 0 35878c2ecf20Sopenharmony_ci 35888c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_1`` 35898c2ecf20Sopenharmony_ci - Level 1.0 35908c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_2`` 35918c2ecf20Sopenharmony_ci - Level 2.0 35928c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_2_1`` 35938c2ecf20Sopenharmony_ci - Level 2.1 35948c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_3`` 35958c2ecf20Sopenharmony_ci - Level 3.0 35968c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_3_1`` 35978c2ecf20Sopenharmony_ci - Level 3.1 35988c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_4`` 35998c2ecf20Sopenharmony_ci - Level 4.0 36008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1`` 36018c2ecf20Sopenharmony_ci - Level 4.1 36028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_5`` 36038c2ecf20Sopenharmony_ci - Level 5.0 36048c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_5_1`` 36058c2ecf20Sopenharmony_ci - Level 5.1 36068c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_5_2`` 36078c2ecf20Sopenharmony_ci - Level 5.2 36088c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_6`` 36098c2ecf20Sopenharmony_ci - Level 6.0 36108c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_6_1`` 36118c2ecf20Sopenharmony_ci - Level 6.1 36128c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LEVEL_6_2`` 36138c2ecf20Sopenharmony_ci - Level 6.2 36148c2ecf20Sopenharmony_ci 36158c2ecf20Sopenharmony_ci.. raw:: latex 36168c2ecf20Sopenharmony_ci 36178c2ecf20Sopenharmony_ci \normalsize 36188c2ecf20Sopenharmony_ci 36198c2ecf20Sopenharmony_ci 36208c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_FRAME_RATE_RESOLUTION (integer)`` 36218c2ecf20Sopenharmony_ci Indicates the number of evenly spaced subintervals, called ticks, within 36228c2ecf20Sopenharmony_ci one second. This is a 16 bit unsigned integer and has a maximum value up to 36238c2ecf20Sopenharmony_ci 0xffff and a minimum value of 1. 36248c2ecf20Sopenharmony_ci 36258c2ecf20Sopenharmony_ci.. _v4l2-hevc-tier: 36268c2ecf20Sopenharmony_ci 36278c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_TIER`` 36288c2ecf20Sopenharmony_ci (enum) 36298c2ecf20Sopenharmony_ci 36308c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_tier - 36318c2ecf20Sopenharmony_ci TIER_FLAG specifies tiers information of the HEVC encoded picture. Tier 36328c2ecf20Sopenharmony_ci were made to deal with applications that differ in terms of maximum bit 36338c2ecf20Sopenharmony_ci rate. Setting the flag to 0 selects HEVC tier as Main tier and setting 36348c2ecf20Sopenharmony_ci this flag to 1 indicates High tier. High tier is for applications requiring 36358c2ecf20Sopenharmony_ci high bit rates. 36368c2ecf20Sopenharmony_ci 36378c2ecf20Sopenharmony_ci.. raw:: latex 36388c2ecf20Sopenharmony_ci 36398c2ecf20Sopenharmony_ci \footnotesize 36408c2ecf20Sopenharmony_ci 36418c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{9.0cm}|p{8.0cm}| 36428c2ecf20Sopenharmony_ci 36438c2ecf20Sopenharmony_ci.. flat-table:: 36448c2ecf20Sopenharmony_ci :header-rows: 0 36458c2ecf20Sopenharmony_ci :stub-columns: 0 36468c2ecf20Sopenharmony_ci 36478c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_TIER_MAIN`` 36488c2ecf20Sopenharmony_ci - Main tier. 36498c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_TIER_HIGH`` 36508c2ecf20Sopenharmony_ci - High tier. 36518c2ecf20Sopenharmony_ci 36528c2ecf20Sopenharmony_ci.. raw:: latex 36538c2ecf20Sopenharmony_ci 36548c2ecf20Sopenharmony_ci \normalsize 36558c2ecf20Sopenharmony_ci 36568c2ecf20Sopenharmony_ci 36578c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_MAX_PARTITION_DEPTH (integer)`` 36588c2ecf20Sopenharmony_ci Selects HEVC maximum coding unit depth. 36598c2ecf20Sopenharmony_ci 36608c2ecf20Sopenharmony_ci.. _v4l2-hevc-loop-filter-mode: 36618c2ecf20Sopenharmony_ci 36628c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE`` 36638c2ecf20Sopenharmony_ci (enum) 36648c2ecf20Sopenharmony_ci 36658c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_loop_filter_mode - 36668c2ecf20Sopenharmony_ci Loop filter mode for HEVC encoder. Possible values are: 36678c2ecf20Sopenharmony_ci 36688c2ecf20Sopenharmony_ci.. raw:: latex 36698c2ecf20Sopenharmony_ci 36708c2ecf20Sopenharmony_ci \footnotesize 36718c2ecf20Sopenharmony_ci 36728c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{12.1cm}|p{5.4cm}| 36738c2ecf20Sopenharmony_ci 36748c2ecf20Sopenharmony_ci.. flat-table:: 36758c2ecf20Sopenharmony_ci :header-rows: 0 36768c2ecf20Sopenharmony_ci :stub-columns: 0 36778c2ecf20Sopenharmony_ci 36788c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_DISABLED`` 36798c2ecf20Sopenharmony_ci - Loop filter is disabled. 36808c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_ENABLED`` 36818c2ecf20Sopenharmony_ci - Loop filter is enabled. 36828c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY`` 36838c2ecf20Sopenharmony_ci - Loop filter is disabled at the slice boundary. 36848c2ecf20Sopenharmony_ci 36858c2ecf20Sopenharmony_ci.. raw:: latex 36868c2ecf20Sopenharmony_ci 36878c2ecf20Sopenharmony_ci \normalsize 36888c2ecf20Sopenharmony_ci 36898c2ecf20Sopenharmony_ci 36908c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_LF_BETA_OFFSET_DIV2 (integer)`` 36918c2ecf20Sopenharmony_ci Selects HEVC loop filter beta offset. The valid range is [-6, +6]. 36928c2ecf20Sopenharmony_ci 36938c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_LF_TC_OFFSET_DIV2 (integer)`` 36948c2ecf20Sopenharmony_ci Selects HEVC loop filter tc offset. The valid range is [-6, +6]. 36958c2ecf20Sopenharmony_ci 36968c2ecf20Sopenharmony_ci.. _v4l2-hevc-refresh-type: 36978c2ecf20Sopenharmony_ci 36988c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_REFRESH_TYPE`` 36998c2ecf20Sopenharmony_ci (enum) 37008c2ecf20Sopenharmony_ci 37018c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_hier_refresh_type - 37028c2ecf20Sopenharmony_ci Selects refresh type for HEVC encoder. 37038c2ecf20Sopenharmony_ci Host has to specify the period into 37048c2ecf20Sopenharmony_ci V4L2_CID_MPEG_VIDEO_HEVC_REFRESH_PERIOD. 37058c2ecf20Sopenharmony_ci 37068c2ecf20Sopenharmony_ci.. raw:: latex 37078c2ecf20Sopenharmony_ci 37088c2ecf20Sopenharmony_ci \footnotesize 37098c2ecf20Sopenharmony_ci 37108c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{8.0cm}|p{9.0cm}| 37118c2ecf20Sopenharmony_ci 37128c2ecf20Sopenharmony_ci.. flat-table:: 37138c2ecf20Sopenharmony_ci :header-rows: 0 37148c2ecf20Sopenharmony_ci :stub-columns: 0 37158c2ecf20Sopenharmony_ci 37168c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_REFRESH_NONE`` 37178c2ecf20Sopenharmony_ci - Use the B frame for hierarchical coding. 37188c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_REFRESH_CRA`` 37198c2ecf20Sopenharmony_ci - Use CRA (Clean Random Access Unit) picture encoding. 37208c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_REFRESH_IDR`` 37218c2ecf20Sopenharmony_ci - Use IDR (Instantaneous Decoding Refresh) picture encoding. 37228c2ecf20Sopenharmony_ci 37238c2ecf20Sopenharmony_ci.. raw:: latex 37248c2ecf20Sopenharmony_ci 37258c2ecf20Sopenharmony_ci \normalsize 37268c2ecf20Sopenharmony_ci 37278c2ecf20Sopenharmony_ci 37288c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_REFRESH_PERIOD (integer)`` 37298c2ecf20Sopenharmony_ci Selects the refresh period for HEVC encoder. 37308c2ecf20Sopenharmony_ci This specifies the number of I pictures between two CRA/IDR pictures. 37318c2ecf20Sopenharmony_ci This is valid only if REFRESH_TYPE is not 0. 37328c2ecf20Sopenharmony_ci 37338c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_LOSSLESS_CU (boolean)`` 37348c2ecf20Sopenharmony_ci Indicates HEVC lossless encoding. Setting it to 0 disables lossless 37358c2ecf20Sopenharmony_ci encoding. Setting it to 1 enables lossless encoding. 37368c2ecf20Sopenharmony_ci 37378c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_CONST_INTRA_PRED (boolean)`` 37388c2ecf20Sopenharmony_ci Indicates constant intra prediction for HEVC encoder. Specifies the 37398c2ecf20Sopenharmony_ci constrained intra prediction in which intra largest coding unit (LCU) 37408c2ecf20Sopenharmony_ci prediction is performed by using residual data and decoded samples of 37418c2ecf20Sopenharmony_ci neighboring intra LCU only. Setting the value to 1 enables constant intra 37428c2ecf20Sopenharmony_ci prediction and setting the value to 0 disables constant intra prediction. 37438c2ecf20Sopenharmony_ci 37448c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_WAVEFRONT (boolean)`` 37458c2ecf20Sopenharmony_ci Indicates wavefront parallel processing for HEVC encoder. Setting it to 0 37468c2ecf20Sopenharmony_ci disables the feature and setting it to 1 enables the wavefront parallel 37478c2ecf20Sopenharmony_ci processing. 37488c2ecf20Sopenharmony_ci 37498c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_GENERAL_PB (boolean)`` 37508c2ecf20Sopenharmony_ci Setting the value to 1 enables combination of P and B frame for HEVC 37518c2ecf20Sopenharmony_ci encoder. 37528c2ecf20Sopenharmony_ci 37538c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_TEMPORAL_ID (boolean)`` 37548c2ecf20Sopenharmony_ci Indicates temporal identifier for HEVC encoder which is enabled by 37558c2ecf20Sopenharmony_ci setting the value to 1. 37568c2ecf20Sopenharmony_ci 37578c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_STRONG_SMOOTHING (boolean)`` 37588c2ecf20Sopenharmony_ci Indicates bi-linear interpolation is conditionally used in the intra 37598c2ecf20Sopenharmony_ci prediction filtering process in the CVS when set to 1. Indicates bi-linear 37608c2ecf20Sopenharmony_ci interpolation is not used in the CVS when set to 0. 37618c2ecf20Sopenharmony_ci 37628c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_MAX_NUM_MERGE_MV_MINUS1 (integer)`` 37638c2ecf20Sopenharmony_ci Indicates maximum number of merge candidate motion vectors. 37648c2ecf20Sopenharmony_ci Values are from 0 to 4. 37658c2ecf20Sopenharmony_ci 37668c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_TMV_PREDICTION (boolean)`` 37678c2ecf20Sopenharmony_ci Indicates temporal motion vector prediction for HEVC encoder. Setting it to 37688c2ecf20Sopenharmony_ci 1 enables the prediction. Setting it to 0 disables the prediction. 37698c2ecf20Sopenharmony_ci 37708c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_WITHOUT_STARTCODE (boolean)`` 37718c2ecf20Sopenharmony_ci Specifies if HEVC generates a stream with a size of the length field 37728c2ecf20Sopenharmony_ci instead of start code pattern. The size of the length field is configurable 37738c2ecf20Sopenharmony_ci through the V4L2_CID_MPEG_VIDEO_HEVC_SIZE_OF_LENGTH_FIELD control. Setting 37748c2ecf20Sopenharmony_ci the value to 0 disables encoding without startcode pattern. Setting the 37758c2ecf20Sopenharmony_ci value to 1 will enables encoding without startcode pattern. 37768c2ecf20Sopenharmony_ci 37778c2ecf20Sopenharmony_ci.. _v4l2-hevc-size-of-length-field: 37788c2ecf20Sopenharmony_ci 37798c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_SIZE_OF_LENGTH_FIELD`` 37808c2ecf20Sopenharmony_ci(enum) 37818c2ecf20Sopenharmony_ci 37828c2ecf20Sopenharmony_cienum v4l2_mpeg_video_hevc_size_of_length_field - 37838c2ecf20Sopenharmony_ci Indicates the size of length field. 37848c2ecf20Sopenharmony_ci This is valid when encoding WITHOUT_STARTCODE_ENABLE is enabled. 37858c2ecf20Sopenharmony_ci 37868c2ecf20Sopenharmony_ci.. raw:: latex 37878c2ecf20Sopenharmony_ci 37888c2ecf20Sopenharmony_ci \footnotesize 37898c2ecf20Sopenharmony_ci 37908c2ecf20Sopenharmony_ci.. tabularcolumns:: |p{6.0cm}|p{11.0cm}| 37918c2ecf20Sopenharmony_ci 37928c2ecf20Sopenharmony_ci.. flat-table:: 37938c2ecf20Sopenharmony_ci :header-rows: 0 37948c2ecf20Sopenharmony_ci :stub-columns: 0 37958c2ecf20Sopenharmony_ci 37968c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_0`` 37978c2ecf20Sopenharmony_ci - Generate start code pattern (Normal). 37988c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_1`` 37998c2ecf20Sopenharmony_ci - Generate size of length field instead of start code pattern and length is 1. 38008c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_2`` 38018c2ecf20Sopenharmony_ci - Generate size of length field instead of start code pattern and length is 2. 38028c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_SIZE_4`` 38038c2ecf20Sopenharmony_ci - Generate size of length field instead of start code pattern and length is 4. 38048c2ecf20Sopenharmony_ci 38058c2ecf20Sopenharmony_ci.. raw:: latex 38068c2ecf20Sopenharmony_ci 38078c2ecf20Sopenharmony_ci \normalsize 38088c2ecf20Sopenharmony_ci 38098c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L0_BR (integer)`` 38108c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 0 for HEVC encoder. 38118c2ecf20Sopenharmony_ci 38128c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L1_BR (integer)`` 38138c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 1 for HEVC encoder. 38148c2ecf20Sopenharmony_ci 38158c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L2_BR (integer)`` 38168c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 2 for HEVC encoder. 38178c2ecf20Sopenharmony_ci 38188c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L3_BR (integer)`` 38198c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 3 for HEVC encoder. 38208c2ecf20Sopenharmony_ci 38218c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L4_BR (integer)`` 38228c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 4 for HEVC encoder. 38238c2ecf20Sopenharmony_ci 38248c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L5_BR (integer)`` 38258c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 5 for HEVC encoder. 38268c2ecf20Sopenharmony_ci 38278c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L6_BR (integer)`` 38288c2ecf20Sopenharmony_ci Indicates bit rate for hierarchical coding layer 6 for HEVC encoder. 38298c2ecf20Sopenharmony_ci 38308c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_REF_NUMBER_FOR_PFRAMES (integer)`` 38318c2ecf20Sopenharmony_ci Selects number of P reference pictures required for HEVC encoder. 38328c2ecf20Sopenharmony_ci P-Frame can use 1 or 2 frames for reference. 38338c2ecf20Sopenharmony_ci 38348c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_PREPEND_SPSPPS_TO_IDR (integer)`` 38358c2ecf20Sopenharmony_ci Indicates whether to generate SPS and PPS at every IDR. Setting it to 0 38368c2ecf20Sopenharmony_ci disables generating SPS and PPS at every IDR. Setting it to one enables 38378c2ecf20Sopenharmony_ci generating SPS and PPS at every IDR. 38388c2ecf20Sopenharmony_ci 38398c2ecf20Sopenharmony_ci.. _v4l2-mpeg-hevc: 38408c2ecf20Sopenharmony_ci 38418c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_SPS (struct)`` 38428c2ecf20Sopenharmony_ci Specifies the Sequence Parameter Set fields (as extracted from the 38438c2ecf20Sopenharmony_ci bitstream) for the associated HEVC slice data. 38448c2ecf20Sopenharmony_ci These bitstream parameters are defined according to :ref:`hevc`. 38458c2ecf20Sopenharmony_ci They are described in section 7.4.3.2 "Sequence parameter set RBSP 38468c2ecf20Sopenharmony_ci semantics" of the specification. 38478c2ecf20Sopenharmony_ci 38488c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_hevc_sps 38498c2ecf20Sopenharmony_ci 38508c2ecf20Sopenharmony_ci.. cssclass:: longtable 38518c2ecf20Sopenharmony_ci 38528c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_hevc_sps 38538c2ecf20Sopenharmony_ci :header-rows: 0 38548c2ecf20Sopenharmony_ci :stub-columns: 0 38558c2ecf20Sopenharmony_ci :widths: 1 1 2 38568c2ecf20Sopenharmony_ci 38578c2ecf20Sopenharmony_ci * - __u16 38588c2ecf20Sopenharmony_ci - ``pic_width_in_luma_samples`` 38598c2ecf20Sopenharmony_ci - 38608c2ecf20Sopenharmony_ci * - __u16 38618c2ecf20Sopenharmony_ci - ``pic_height_in_luma_samples`` 38628c2ecf20Sopenharmony_ci - 38638c2ecf20Sopenharmony_ci * - __u8 38648c2ecf20Sopenharmony_ci - ``bit_depth_luma_minus8`` 38658c2ecf20Sopenharmony_ci - 38668c2ecf20Sopenharmony_ci * - __u8 38678c2ecf20Sopenharmony_ci - ``bit_depth_chroma_minus8`` 38688c2ecf20Sopenharmony_ci - 38698c2ecf20Sopenharmony_ci * - __u8 38708c2ecf20Sopenharmony_ci - ``log2_max_pic_order_cnt_lsb_minus4`` 38718c2ecf20Sopenharmony_ci - 38728c2ecf20Sopenharmony_ci * - __u8 38738c2ecf20Sopenharmony_ci - ``sps_max_dec_pic_buffering_minus1`` 38748c2ecf20Sopenharmony_ci - 38758c2ecf20Sopenharmony_ci * - __u8 38768c2ecf20Sopenharmony_ci - ``sps_max_num_reorder_pics`` 38778c2ecf20Sopenharmony_ci - 38788c2ecf20Sopenharmony_ci * - __u8 38798c2ecf20Sopenharmony_ci - ``sps_max_latency_increase_plus1`` 38808c2ecf20Sopenharmony_ci - 38818c2ecf20Sopenharmony_ci * - __u8 38828c2ecf20Sopenharmony_ci - ``log2_min_luma_coding_block_size_minus3`` 38838c2ecf20Sopenharmony_ci - 38848c2ecf20Sopenharmony_ci * - __u8 38858c2ecf20Sopenharmony_ci - ``log2_diff_max_min_luma_coding_block_size`` 38868c2ecf20Sopenharmony_ci - 38878c2ecf20Sopenharmony_ci * - __u8 38888c2ecf20Sopenharmony_ci - ``log2_min_luma_transform_block_size_minus2`` 38898c2ecf20Sopenharmony_ci - 38908c2ecf20Sopenharmony_ci * - __u8 38918c2ecf20Sopenharmony_ci - ``log2_diff_max_min_luma_transform_block_size`` 38928c2ecf20Sopenharmony_ci - 38938c2ecf20Sopenharmony_ci * - __u8 38948c2ecf20Sopenharmony_ci - ``max_transform_hierarchy_depth_inter`` 38958c2ecf20Sopenharmony_ci - 38968c2ecf20Sopenharmony_ci * - __u8 38978c2ecf20Sopenharmony_ci - ``max_transform_hierarchy_depth_intra`` 38988c2ecf20Sopenharmony_ci - 38998c2ecf20Sopenharmony_ci * - __u8 39008c2ecf20Sopenharmony_ci - ``pcm_sample_bit_depth_luma_minus1`` 39018c2ecf20Sopenharmony_ci - 39028c2ecf20Sopenharmony_ci * - __u8 39038c2ecf20Sopenharmony_ci - ``pcm_sample_bit_depth_chroma_minus1`` 39048c2ecf20Sopenharmony_ci - 39058c2ecf20Sopenharmony_ci * - __u8 39068c2ecf20Sopenharmony_ci - ``log2_min_pcm_luma_coding_block_size_minus3`` 39078c2ecf20Sopenharmony_ci - 39088c2ecf20Sopenharmony_ci * - __u8 39098c2ecf20Sopenharmony_ci - ``log2_diff_max_min_pcm_luma_coding_block_size`` 39108c2ecf20Sopenharmony_ci - 39118c2ecf20Sopenharmony_ci * - __u8 39128c2ecf20Sopenharmony_ci - ``num_short_term_ref_pic_sets`` 39138c2ecf20Sopenharmony_ci - 39148c2ecf20Sopenharmony_ci * - __u8 39158c2ecf20Sopenharmony_ci - ``num_long_term_ref_pics_sps`` 39168c2ecf20Sopenharmony_ci - 39178c2ecf20Sopenharmony_ci * - __u8 39188c2ecf20Sopenharmony_ci - ``chroma_format_idc`` 39198c2ecf20Sopenharmony_ci - 39208c2ecf20Sopenharmony_ci * - __u64 39218c2ecf20Sopenharmony_ci - ``flags`` 39228c2ecf20Sopenharmony_ci - See :ref:`Sequence Parameter Set Flags <hevc_sps_flags>` 39238c2ecf20Sopenharmony_ci 39248c2ecf20Sopenharmony_ci.. _hevc_sps_flags: 39258c2ecf20Sopenharmony_ci 39268c2ecf20Sopenharmony_ci``Sequence Parameter Set Flags`` 39278c2ecf20Sopenharmony_ci 39288c2ecf20Sopenharmony_ci.. cssclass:: longtable 39298c2ecf20Sopenharmony_ci 39308c2ecf20Sopenharmony_ci.. flat-table:: 39318c2ecf20Sopenharmony_ci :header-rows: 0 39328c2ecf20Sopenharmony_ci :stub-columns: 0 39338c2ecf20Sopenharmony_ci :widths: 1 1 2 39348c2ecf20Sopenharmony_ci 39358c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_SEPARATE_COLOUR_PLANE`` 39368c2ecf20Sopenharmony_ci - 0x00000001 39378c2ecf20Sopenharmony_ci - 39388c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_SCALING_LIST_ENABLED`` 39398c2ecf20Sopenharmony_ci - 0x00000002 39408c2ecf20Sopenharmony_ci - 39418c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_AMP_ENABLED`` 39428c2ecf20Sopenharmony_ci - 0x00000004 39438c2ecf20Sopenharmony_ci - 39448c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_SAMPLE_ADAPTIVE_OFFSET`` 39458c2ecf20Sopenharmony_ci - 0x00000008 39468c2ecf20Sopenharmony_ci - 39478c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_PCM_ENABLED`` 39488c2ecf20Sopenharmony_ci - 0x00000010 39498c2ecf20Sopenharmony_ci - 39508c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_PCM_LOOP_FILTER_DISABLED`` 39518c2ecf20Sopenharmony_ci - 0x00000020 39528c2ecf20Sopenharmony_ci - 39538c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_LONG_TERM_REF_PICS_PRESENT`` 39548c2ecf20Sopenharmony_ci - 0x00000040 39558c2ecf20Sopenharmony_ci - 39568c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_SPS_TEMPORAL_MVP_ENABLED`` 39578c2ecf20Sopenharmony_ci - 0x00000080 39588c2ecf20Sopenharmony_ci - 39598c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SPS_FLAG_STRONG_INTRA_SMOOTHING_ENABLED`` 39608c2ecf20Sopenharmony_ci - 0x00000100 39618c2ecf20Sopenharmony_ci - 39628c2ecf20Sopenharmony_ci 39638c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_PPS (struct)`` 39648c2ecf20Sopenharmony_ci Specifies the Picture Parameter Set fields (as extracted from the 39658c2ecf20Sopenharmony_ci bitstream) for the associated HEVC slice data. 39668c2ecf20Sopenharmony_ci These bitstream parameters are defined according to :ref:`hevc`. 39678c2ecf20Sopenharmony_ci They are described in section 7.4.3.3 "Picture parameter set RBSP 39688c2ecf20Sopenharmony_ci semantics" of the specification. 39698c2ecf20Sopenharmony_ci 39708c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_hevc_pps 39718c2ecf20Sopenharmony_ci 39728c2ecf20Sopenharmony_ci.. cssclass:: longtable 39738c2ecf20Sopenharmony_ci 39748c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_hevc_pps 39758c2ecf20Sopenharmony_ci :header-rows: 0 39768c2ecf20Sopenharmony_ci :stub-columns: 0 39778c2ecf20Sopenharmony_ci :widths: 1 1 2 39788c2ecf20Sopenharmony_ci 39798c2ecf20Sopenharmony_ci * - __u8 39808c2ecf20Sopenharmony_ci - ``num_extra_slice_header_bits`` 39818c2ecf20Sopenharmony_ci - 39828c2ecf20Sopenharmony_ci * - __s8 39838c2ecf20Sopenharmony_ci - ``init_qp_minus26`` 39848c2ecf20Sopenharmony_ci - 39858c2ecf20Sopenharmony_ci * - __u8 39868c2ecf20Sopenharmony_ci - ``diff_cu_qp_delta_depth`` 39878c2ecf20Sopenharmony_ci - 39888c2ecf20Sopenharmony_ci * - __s8 39898c2ecf20Sopenharmony_ci - ``pps_cb_qp_offset`` 39908c2ecf20Sopenharmony_ci - 39918c2ecf20Sopenharmony_ci * - __s8 39928c2ecf20Sopenharmony_ci - ``pps_cr_qp_offset`` 39938c2ecf20Sopenharmony_ci - 39948c2ecf20Sopenharmony_ci * - __u8 39958c2ecf20Sopenharmony_ci - ``num_tile_columns_minus1`` 39968c2ecf20Sopenharmony_ci - 39978c2ecf20Sopenharmony_ci * - __u8 39988c2ecf20Sopenharmony_ci - ``num_tile_rows_minus1`` 39998c2ecf20Sopenharmony_ci - 40008c2ecf20Sopenharmony_ci * - __u8 40018c2ecf20Sopenharmony_ci - ``column_width_minus1[20]`` 40028c2ecf20Sopenharmony_ci - 40038c2ecf20Sopenharmony_ci * - __u8 40048c2ecf20Sopenharmony_ci - ``row_height_minus1[22]`` 40058c2ecf20Sopenharmony_ci - 40068c2ecf20Sopenharmony_ci * - __s8 40078c2ecf20Sopenharmony_ci - ``pps_beta_offset_div2`` 40088c2ecf20Sopenharmony_ci - 40098c2ecf20Sopenharmony_ci * - __s8 40108c2ecf20Sopenharmony_ci - ``pps_tc_offset_div2`` 40118c2ecf20Sopenharmony_ci - 40128c2ecf20Sopenharmony_ci * - __u8 40138c2ecf20Sopenharmony_ci - ``log2_parallel_merge_level_minus2`` 40148c2ecf20Sopenharmony_ci - 40158c2ecf20Sopenharmony_ci * - __u8 40168c2ecf20Sopenharmony_ci - ``padding[4]`` 40178c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 40188c2ecf20Sopenharmony_ci * - __u64 40198c2ecf20Sopenharmony_ci - ``flags`` 40208c2ecf20Sopenharmony_ci - See :ref:`Picture Parameter Set Flags <hevc_pps_flags>` 40218c2ecf20Sopenharmony_ci 40228c2ecf20Sopenharmony_ci.. _hevc_pps_flags: 40238c2ecf20Sopenharmony_ci 40248c2ecf20Sopenharmony_ci``Picture Parameter Set Flags`` 40258c2ecf20Sopenharmony_ci 40268c2ecf20Sopenharmony_ci.. cssclass:: longtable 40278c2ecf20Sopenharmony_ci 40288c2ecf20Sopenharmony_ci.. flat-table:: 40298c2ecf20Sopenharmony_ci :header-rows: 0 40308c2ecf20Sopenharmony_ci :stub-columns: 0 40318c2ecf20Sopenharmony_ci :widths: 1 1 2 40328c2ecf20Sopenharmony_ci 40338c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_DEPENDENT_SLICE_SEGMENT_ENABLED`` 40348c2ecf20Sopenharmony_ci - 0x00000001 40358c2ecf20Sopenharmony_ci - 40368c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_OUTPUT_FLAG_PRESENT`` 40378c2ecf20Sopenharmony_ci - 0x00000002 40388c2ecf20Sopenharmony_ci - 40398c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_SIGN_DATA_HIDING_ENABLED`` 40408c2ecf20Sopenharmony_ci - 0x00000004 40418c2ecf20Sopenharmony_ci - 40428c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_CABAC_INIT_PRESENT`` 40438c2ecf20Sopenharmony_ci - 0x00000008 40448c2ecf20Sopenharmony_ci - 40458c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_CONSTRAINED_INTRA_PRED`` 40468c2ecf20Sopenharmony_ci - 0x00000010 40478c2ecf20Sopenharmony_ci - 40488c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_TRANSFORM_SKIP_ENABLED`` 40498c2ecf20Sopenharmony_ci - 0x00000020 40508c2ecf20Sopenharmony_ci - 40518c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_CU_QP_DELTA_ENABLED`` 40528c2ecf20Sopenharmony_ci - 0x00000040 40538c2ecf20Sopenharmony_ci - 40548c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT`` 40558c2ecf20Sopenharmony_ci - 0x00000080 40568c2ecf20Sopenharmony_ci - 40578c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_WEIGHTED_PRED`` 40588c2ecf20Sopenharmony_ci - 0x00000100 40598c2ecf20Sopenharmony_ci - 40608c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_WEIGHTED_BIPRED`` 40618c2ecf20Sopenharmony_ci - 0x00000200 40628c2ecf20Sopenharmony_ci - 40638c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_TRANSQUANT_BYPASS_ENABLED`` 40648c2ecf20Sopenharmony_ci - 0x00000400 40658c2ecf20Sopenharmony_ci - 40668c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_TILES_ENABLED`` 40678c2ecf20Sopenharmony_ci - 0x00000800 40688c2ecf20Sopenharmony_ci - 40698c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_ENTROPY_CODING_SYNC_ENABLED`` 40708c2ecf20Sopenharmony_ci - 0x00001000 40718c2ecf20Sopenharmony_ci - 40728c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_LOOP_FILTER_ACROSS_TILES_ENABLED`` 40738c2ecf20Sopenharmony_ci - 0x00002000 40748c2ecf20Sopenharmony_ci - 40758c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_PPS_LOOP_FILTER_ACROSS_SLICES_ENABLED`` 40768c2ecf20Sopenharmony_ci - 0x00004000 40778c2ecf20Sopenharmony_ci - 40788c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_OVERRIDE_ENABLED`` 40798c2ecf20Sopenharmony_ci - 0x00008000 40808c2ecf20Sopenharmony_ci - 40818c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_PPS_DISABLE_DEBLOCKING_FILTER`` 40828c2ecf20Sopenharmony_ci - 0x00010000 40838c2ecf20Sopenharmony_ci - 40848c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_LISTS_MODIFICATION_PRESENT`` 40858c2ecf20Sopenharmony_ci - 0x00020000 40868c2ecf20Sopenharmony_ci - 40878c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_PPS_FLAG_SLICE_SEGMENT_HEADER_EXTENSION_PRESENT`` 40888c2ecf20Sopenharmony_ci - 0x00040000 40898c2ecf20Sopenharmony_ci - 40908c2ecf20Sopenharmony_ci 40918c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS (struct)`` 40928c2ecf20Sopenharmony_ci Specifies various slice-specific parameters, especially from the NAL unit 40938c2ecf20Sopenharmony_ci header, general slice segment header and weighted prediction parameter 40948c2ecf20Sopenharmony_ci parts of the bitstream. 40958c2ecf20Sopenharmony_ci These bitstream parameters are defined according to :ref:`hevc`. 40968c2ecf20Sopenharmony_ci They are described in section 7.4.7 "General slice segment header 40978c2ecf20Sopenharmony_ci semantics" of the specification. 40988c2ecf20Sopenharmony_ci 40998c2ecf20Sopenharmony_ci.. c:type:: v4l2_ctrl_hevc_slice_params 41008c2ecf20Sopenharmony_ci 41018c2ecf20Sopenharmony_ci.. cssclass:: longtable 41028c2ecf20Sopenharmony_ci 41038c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_ctrl_hevc_slice_params 41048c2ecf20Sopenharmony_ci :header-rows: 0 41058c2ecf20Sopenharmony_ci :stub-columns: 0 41068c2ecf20Sopenharmony_ci :widths: 1 1 2 41078c2ecf20Sopenharmony_ci 41088c2ecf20Sopenharmony_ci * - __u32 41098c2ecf20Sopenharmony_ci - ``bit_size`` 41108c2ecf20Sopenharmony_ci - Size (in bits) of the current slice data. 41118c2ecf20Sopenharmony_ci * - __u32 41128c2ecf20Sopenharmony_ci - ``data_bit_offset`` 41138c2ecf20Sopenharmony_ci - Offset (in bits) to the video data in the current slice data. 41148c2ecf20Sopenharmony_ci * - __u8 41158c2ecf20Sopenharmony_ci - ``nal_unit_type`` 41168c2ecf20Sopenharmony_ci - 41178c2ecf20Sopenharmony_ci * - __u8 41188c2ecf20Sopenharmony_ci - ``nuh_temporal_id_plus1`` 41198c2ecf20Sopenharmony_ci - 41208c2ecf20Sopenharmony_ci * - __u8 41218c2ecf20Sopenharmony_ci - ``slice_type`` 41228c2ecf20Sopenharmony_ci - 41238c2ecf20Sopenharmony_ci (V4L2_HEVC_SLICE_TYPE_I, V4L2_HEVC_SLICE_TYPE_P or 41248c2ecf20Sopenharmony_ci V4L2_HEVC_SLICE_TYPE_B). 41258c2ecf20Sopenharmony_ci * - __u8 41268c2ecf20Sopenharmony_ci - ``colour_plane_id`` 41278c2ecf20Sopenharmony_ci - 41288c2ecf20Sopenharmony_ci * - __u16 41298c2ecf20Sopenharmony_ci - ``slice_pic_order_cnt`` 41308c2ecf20Sopenharmony_ci - 41318c2ecf20Sopenharmony_ci * - __u8 41328c2ecf20Sopenharmony_ci - ``num_ref_idx_l0_active_minus1`` 41338c2ecf20Sopenharmony_ci - 41348c2ecf20Sopenharmony_ci * - __u8 41358c2ecf20Sopenharmony_ci - ``num_ref_idx_l1_active_minus1`` 41368c2ecf20Sopenharmony_ci - 41378c2ecf20Sopenharmony_ci * - __u8 41388c2ecf20Sopenharmony_ci - ``collocated_ref_idx`` 41398c2ecf20Sopenharmony_ci - 41408c2ecf20Sopenharmony_ci * - __u8 41418c2ecf20Sopenharmony_ci - ``five_minus_max_num_merge_cand`` 41428c2ecf20Sopenharmony_ci - 41438c2ecf20Sopenharmony_ci * - __s8 41448c2ecf20Sopenharmony_ci - ``slice_qp_delta`` 41458c2ecf20Sopenharmony_ci - 41468c2ecf20Sopenharmony_ci * - __s8 41478c2ecf20Sopenharmony_ci - ``slice_cb_qp_offset`` 41488c2ecf20Sopenharmony_ci - 41498c2ecf20Sopenharmony_ci * - __s8 41508c2ecf20Sopenharmony_ci - ``slice_cr_qp_offset`` 41518c2ecf20Sopenharmony_ci - 41528c2ecf20Sopenharmony_ci * - __s8 41538c2ecf20Sopenharmony_ci - ``slice_act_y_qp_offset`` 41548c2ecf20Sopenharmony_ci - 41558c2ecf20Sopenharmony_ci * - __s8 41568c2ecf20Sopenharmony_ci - ``slice_act_cb_qp_offset`` 41578c2ecf20Sopenharmony_ci - 41588c2ecf20Sopenharmony_ci * - __s8 41598c2ecf20Sopenharmony_ci - ``slice_act_cr_qp_offset`` 41608c2ecf20Sopenharmony_ci - 41618c2ecf20Sopenharmony_ci * - __s8 41628c2ecf20Sopenharmony_ci - ``slice_beta_offset_div2`` 41638c2ecf20Sopenharmony_ci - 41648c2ecf20Sopenharmony_ci * - __s8 41658c2ecf20Sopenharmony_ci - ``slice_tc_offset_div2`` 41668c2ecf20Sopenharmony_ci - 41678c2ecf20Sopenharmony_ci * - __u8 41688c2ecf20Sopenharmony_ci - ``pic_struct`` 41698c2ecf20Sopenharmony_ci - 41708c2ecf20Sopenharmony_ci * - __u8 41718c2ecf20Sopenharmony_ci - ``num_active_dpb_entries`` 41728c2ecf20Sopenharmony_ci - The number of entries in ``dpb``. 41738c2ecf20Sopenharmony_ci * - __u8 41748c2ecf20Sopenharmony_ci - ``ref_idx_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 41758c2ecf20Sopenharmony_ci - The list of L0 reference elements as indices in the DPB. 41768c2ecf20Sopenharmony_ci * - __u8 41778c2ecf20Sopenharmony_ci - ``ref_idx_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 41788c2ecf20Sopenharmony_ci - The list of L1 reference elements as indices in the DPB. 41798c2ecf20Sopenharmony_ci * - __u8 41808c2ecf20Sopenharmony_ci - ``num_rps_poc_st_curr_before`` 41818c2ecf20Sopenharmony_ci - The number of reference pictures in the short-term set that come before 41828c2ecf20Sopenharmony_ci the current frame. 41838c2ecf20Sopenharmony_ci * - __u8 41848c2ecf20Sopenharmony_ci - ``num_rps_poc_st_curr_after`` 41858c2ecf20Sopenharmony_ci - The number of reference pictures in the short-term set that come after 41868c2ecf20Sopenharmony_ci the current frame. 41878c2ecf20Sopenharmony_ci * - __u8 41888c2ecf20Sopenharmony_ci - ``num_rps_poc_lt_curr`` 41898c2ecf20Sopenharmony_ci - The number of reference pictures in the long-term set. 41908c2ecf20Sopenharmony_ci * - __u8 41918c2ecf20Sopenharmony_ci - ``padding[7]`` 41928c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 41938c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_hevc_dpb_entry` 41948c2ecf20Sopenharmony_ci - ``dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 41958c2ecf20Sopenharmony_ci - The decoded picture buffer, for meta-data about reference frames. 41968c2ecf20Sopenharmony_ci * - struct :c:type:`v4l2_hevc_pred_weight_table` 41978c2ecf20Sopenharmony_ci - ``pred_weight_table`` 41988c2ecf20Sopenharmony_ci - The prediction weight coefficients for inter-picture prediction. 41998c2ecf20Sopenharmony_ci * - __u64 42008c2ecf20Sopenharmony_ci - ``flags`` 42018c2ecf20Sopenharmony_ci - See :ref:`Slice Parameters Flags <hevc_slice_params_flags>` 42028c2ecf20Sopenharmony_ci 42038c2ecf20Sopenharmony_ci.. _hevc_slice_params_flags: 42048c2ecf20Sopenharmony_ci 42058c2ecf20Sopenharmony_ci``Slice Parameters Flags`` 42068c2ecf20Sopenharmony_ci 42078c2ecf20Sopenharmony_ci.. cssclass:: longtable 42088c2ecf20Sopenharmony_ci 42098c2ecf20Sopenharmony_ci.. flat-table:: 42108c2ecf20Sopenharmony_ci :header-rows: 0 42118c2ecf20Sopenharmony_ci :stub-columns: 0 42128c2ecf20Sopenharmony_ci :widths: 1 1 2 42138c2ecf20Sopenharmony_ci 42148c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_LUMA`` 42158c2ecf20Sopenharmony_ci - 0x00000001 42168c2ecf20Sopenharmony_ci - 42178c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_CHROMA`` 42188c2ecf20Sopenharmony_ci - 0x00000002 42198c2ecf20Sopenharmony_ci - 42208c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_TEMPORAL_MVP_ENABLED`` 42218c2ecf20Sopenharmony_ci - 0x00000004 42228c2ecf20Sopenharmony_ci - 42238c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_MVD_L1_ZERO`` 42248c2ecf20Sopenharmony_ci - 0x00000008 42258c2ecf20Sopenharmony_ci - 42268c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_CABAC_INIT`` 42278c2ecf20Sopenharmony_ci - 0x00000010 42288c2ecf20Sopenharmony_ci - 42298c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_COLLOCATED_FROM_L0`` 42308c2ecf20Sopenharmony_ci - 0x00000020 42318c2ecf20Sopenharmony_ci - 42328c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_USE_INTEGER_MV`` 42338c2ecf20Sopenharmony_ci - 0x00000040 42348c2ecf20Sopenharmony_ci - 42358c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_DEBLOCKING_FILTER_DISABLED`` 42368c2ecf20Sopenharmony_ci - 0x00000080 42378c2ecf20Sopenharmony_ci - 42388c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_LOOP_FILTER_ACROSS_SLICES_ENABLED`` 42398c2ecf20Sopenharmony_ci - 0x00000100 42408c2ecf20Sopenharmony_ci - 42418c2ecf20Sopenharmony_ci * - ``V4L2_HEVC_SLICE_PARAMS_FLAG_DEPENDENT_SLICE_SEGMENT`` 42428c2ecf20Sopenharmony_ci - 0x00000200 42438c2ecf20Sopenharmony_ci - 42448c2ecf20Sopenharmony_ci 42458c2ecf20Sopenharmony_ci.. c:type:: v4l2_hevc_dpb_entry 42468c2ecf20Sopenharmony_ci 42478c2ecf20Sopenharmony_ci.. cssclass:: longtable 42488c2ecf20Sopenharmony_ci 42498c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_hevc_dpb_entry 42508c2ecf20Sopenharmony_ci :header-rows: 0 42518c2ecf20Sopenharmony_ci :stub-columns: 0 42528c2ecf20Sopenharmony_ci :widths: 1 1 2 42538c2ecf20Sopenharmony_ci 42548c2ecf20Sopenharmony_ci * - __u64 42558c2ecf20Sopenharmony_ci - ``timestamp`` 42568c2ecf20Sopenharmony_ci - Timestamp of the V4L2 capture buffer to use as reference, used 42578c2ecf20Sopenharmony_ci with B-coded and P-coded frames. The timestamp refers to the 42588c2ecf20Sopenharmony_ci ``timestamp`` field in struct :c:type:`v4l2_buffer`. Use the 42598c2ecf20Sopenharmony_ci :c:func:`v4l2_timeval_to_ns()` function to convert the struct 42608c2ecf20Sopenharmony_ci :c:type:`timeval` in struct :c:type:`v4l2_buffer` to a __u64. 42618c2ecf20Sopenharmony_ci * - __u8 42628c2ecf20Sopenharmony_ci - ``rps`` 42638c2ecf20Sopenharmony_ci - The reference set for the reference frame 42648c2ecf20Sopenharmony_ci (V4L2_HEVC_DPB_ENTRY_RPS_ST_CURR_BEFORE, 42658c2ecf20Sopenharmony_ci V4L2_HEVC_DPB_ENTRY_RPS_ST_CURR_AFTER or 42668c2ecf20Sopenharmony_ci V4L2_HEVC_DPB_ENTRY_RPS_LT_CURR) 42678c2ecf20Sopenharmony_ci * - __u8 42688c2ecf20Sopenharmony_ci - ``field_pic`` 42698c2ecf20Sopenharmony_ci - Whether the reference is a field picture or a frame. 42708c2ecf20Sopenharmony_ci * - __u16 42718c2ecf20Sopenharmony_ci - ``pic_order_cnt[2]`` 42728c2ecf20Sopenharmony_ci - The picture order count of the reference. Only the first element of the 42738c2ecf20Sopenharmony_ci array is used for frame pictures, while the first element identifies the 42748c2ecf20Sopenharmony_ci top field and the second the bottom field in field-coded pictures. 42758c2ecf20Sopenharmony_ci * - __u8 42768c2ecf20Sopenharmony_ci - ``padding[2]`` 42778c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 42788c2ecf20Sopenharmony_ci 42798c2ecf20Sopenharmony_ci.. c:type:: v4l2_hevc_pred_weight_table 42808c2ecf20Sopenharmony_ci 42818c2ecf20Sopenharmony_ci.. cssclass:: longtable 42828c2ecf20Sopenharmony_ci 42838c2ecf20Sopenharmony_ci.. flat-table:: struct v4l2_hevc_pred_weight_table 42848c2ecf20Sopenharmony_ci :header-rows: 0 42858c2ecf20Sopenharmony_ci :stub-columns: 0 42868c2ecf20Sopenharmony_ci :widths: 1 1 2 42878c2ecf20Sopenharmony_ci 42888c2ecf20Sopenharmony_ci * - __u8 42898c2ecf20Sopenharmony_ci - ``luma_log2_weight_denom`` 42908c2ecf20Sopenharmony_ci - 42918c2ecf20Sopenharmony_ci * - __s8 42928c2ecf20Sopenharmony_ci - ``delta_chroma_log2_weight_denom`` 42938c2ecf20Sopenharmony_ci - 42948c2ecf20Sopenharmony_ci * - __s8 42958c2ecf20Sopenharmony_ci - ``delta_luma_weight_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 42968c2ecf20Sopenharmony_ci - 42978c2ecf20Sopenharmony_ci * - __s8 42988c2ecf20Sopenharmony_ci - ``luma_offset_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 42998c2ecf20Sopenharmony_ci - 43008c2ecf20Sopenharmony_ci * - __s8 43018c2ecf20Sopenharmony_ci - ``delta_chroma_weight_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]`` 43028c2ecf20Sopenharmony_ci - 43038c2ecf20Sopenharmony_ci * - __s8 43048c2ecf20Sopenharmony_ci - ``chroma_offset_l0[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]`` 43058c2ecf20Sopenharmony_ci - 43068c2ecf20Sopenharmony_ci * - __s8 43078c2ecf20Sopenharmony_ci - ``delta_luma_weight_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 43088c2ecf20Sopenharmony_ci - 43098c2ecf20Sopenharmony_ci * - __s8 43108c2ecf20Sopenharmony_ci - ``luma_offset_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]`` 43118c2ecf20Sopenharmony_ci - 43128c2ecf20Sopenharmony_ci * - __s8 43138c2ecf20Sopenharmony_ci - ``delta_chroma_weight_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]`` 43148c2ecf20Sopenharmony_ci - 43158c2ecf20Sopenharmony_ci * - __s8 43168c2ecf20Sopenharmony_ci - ``chroma_offset_l1[V4L2_HEVC_DPB_ENTRIES_NUM_MAX][2]`` 43178c2ecf20Sopenharmony_ci - 43188c2ecf20Sopenharmony_ci * - __u8 43198c2ecf20Sopenharmony_ci - ``padding[6]`` 43208c2ecf20Sopenharmony_ci - Applications and drivers must set this to zero. 43218c2ecf20Sopenharmony_ci 43228c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE (enum)`` 43238c2ecf20Sopenharmony_ci Specifies the decoding mode to use. Currently exposes slice-based and 43248c2ecf20Sopenharmony_ci frame-based decoding but new modes might be added later on. 43258c2ecf20Sopenharmony_ci This control is used as a modifier for V4L2_PIX_FMT_HEVC_SLICE 43268c2ecf20Sopenharmony_ci pixel format. Applications that support V4L2_PIX_FMT_HEVC_SLICE 43278c2ecf20Sopenharmony_ci are required to set this control in order to specify the decoding mode 43288c2ecf20Sopenharmony_ci that is expected for the buffer. 43298c2ecf20Sopenharmony_ci Drivers may expose a single or multiple decoding modes, depending 43308c2ecf20Sopenharmony_ci on what they can support. 43318c2ecf20Sopenharmony_ci 43328c2ecf20Sopenharmony_ci .. note:: 43338c2ecf20Sopenharmony_ci 43348c2ecf20Sopenharmony_ci This menu control is not yet part of the public kernel API and 43358c2ecf20Sopenharmony_ci it is expected to change. 43368c2ecf20Sopenharmony_ci 43378c2ecf20Sopenharmony_ci.. c:type:: v4l2_mpeg_video_hevc_decode_mode 43388c2ecf20Sopenharmony_ci 43398c2ecf20Sopenharmony_ci.. cssclass:: longtable 43408c2ecf20Sopenharmony_ci 43418c2ecf20Sopenharmony_ci.. flat-table:: 43428c2ecf20Sopenharmony_ci :header-rows: 0 43438c2ecf20Sopenharmony_ci :stub-columns: 0 43448c2ecf20Sopenharmony_ci :widths: 1 1 2 43458c2ecf20Sopenharmony_ci 43468c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_DECODE_MODE_SLICE_BASED`` 43478c2ecf20Sopenharmony_ci - 0 43488c2ecf20Sopenharmony_ci - Decoding is done at the slice granularity. 43498c2ecf20Sopenharmony_ci The OUTPUT buffer must contain a single slice. 43508c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_DECODE_MODE_FRAME_BASED`` 43518c2ecf20Sopenharmony_ci - 1 43528c2ecf20Sopenharmony_ci - Decoding is done at the frame granularity. 43538c2ecf20Sopenharmony_ci The OUTPUT buffer must contain all slices needed to decode the 43548c2ecf20Sopenharmony_ci frame. The OUTPUT buffer must also contain both fields. 43558c2ecf20Sopenharmony_ci 43568c2ecf20Sopenharmony_ci``V4L2_CID_MPEG_VIDEO_HEVC_START_CODE (enum)`` 43578c2ecf20Sopenharmony_ci Specifies the HEVC slice start code expected for each slice. 43588c2ecf20Sopenharmony_ci This control is used as a modifier for V4L2_PIX_FMT_HEVC_SLICE 43598c2ecf20Sopenharmony_ci pixel format. Applications that support V4L2_PIX_FMT_HEVC_SLICE 43608c2ecf20Sopenharmony_ci are required to set this control in order to specify the start code 43618c2ecf20Sopenharmony_ci that is expected for the buffer. 43628c2ecf20Sopenharmony_ci Drivers may expose a single or multiple start codes, depending 43638c2ecf20Sopenharmony_ci on what they can support. 43648c2ecf20Sopenharmony_ci 43658c2ecf20Sopenharmony_ci .. note:: 43668c2ecf20Sopenharmony_ci 43678c2ecf20Sopenharmony_ci This menu control is not yet part of the public kernel API and 43688c2ecf20Sopenharmony_ci it is expected to change. 43698c2ecf20Sopenharmony_ci 43708c2ecf20Sopenharmony_ci.. c:type:: v4l2_mpeg_video_hevc_start_code 43718c2ecf20Sopenharmony_ci 43728c2ecf20Sopenharmony_ci.. cssclass:: longtable 43738c2ecf20Sopenharmony_ci 43748c2ecf20Sopenharmony_ci.. flat-table:: 43758c2ecf20Sopenharmony_ci :header-rows: 0 43768c2ecf20Sopenharmony_ci :stub-columns: 0 43778c2ecf20Sopenharmony_ci :widths: 1 1 2 43788c2ecf20Sopenharmony_ci 43798c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_START_CODE_NONE`` 43808c2ecf20Sopenharmony_ci - 0 43818c2ecf20Sopenharmony_ci - Selecting this value specifies that HEVC slices are passed 43828c2ecf20Sopenharmony_ci to the driver without any start code. 43838c2ecf20Sopenharmony_ci * - ``V4L2_MPEG_VIDEO_HEVC_START_CODE_ANNEX_B`` 43848c2ecf20Sopenharmony_ci - 1 43858c2ecf20Sopenharmony_ci - Selecting this value specifies that HEVC slices are expected 43868c2ecf20Sopenharmony_ci to be prefixed by Annex B start codes. According to :ref:`hevc` 43878c2ecf20Sopenharmony_ci valid start codes can be 3-bytes 0x000001 or 4-bytes 0x00000001. 4388