Lines Matching +full:capture +full:- +full:only

1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
13 VIDIOC_ENUM_FMT - Enumerate image formats
41 (that is, with lower ``index`` value) less-preferred formats.
43 Depending on the ``V4L2_CAP_IO_MC`` :ref:`capability <device-capabilities>`,
46 1) ``V4L2_CAP_IO_MC`` is not set (also known as a 'video-node-centric' driver)
58 2) ``V4L2_CAP_IO_MC`` is set (also known as an 'MC-centric' driver)
63 If the ``mbus_code`` field is initialized to a valid (non-zero)
64 :ref:`media bus format code <v4l2-mbus-pixelcode>`, then drivers
65 shall restrict enumeration to only the image formats that can produce
66 (for video output devices) or be produced from (for video capture
80 .. flat-table:: struct v4l2_fmtdesc
81 :header-rows: 0
82 :stub-columns: 0
85 * - __u32
86 - ``index``
87 - Number of the format in the enumeration, set by the application.
97 ``V4L2_FMTDESC_FLAG_ENUM_ALL`` should only be used by drivers that
99 * - __u32
100 - ``type``
101 - Type of the data stream, set by the application. Only these types
112 * - __u32
113 - ``flags``
114 - See :ref:`fmtdesc-flags`
115 * - __u8
116 - ``description``\ [32]
117 - Description of the format, a NUL-terminated ASCII string. This
119 * - __u32
120 - ``pixelformat``
121 - The image format identifier. This is a four character code as
123 * - :cspan:`2`
125 .. _v4l2-fourcc:
138 * - __u32
139 - ``mbus_code``
140 - Media bus code restricting the enumerated formats, set by the
141 application. Only applicable to drivers that advertise the
142 ``V4L2_CAP_IO_MC`` :ref:`capability <device-capabilities>`, shall be 0
144 * - __u32
145 - ``reserved``\ [3]
146 - Reserved for future extensions. Drivers must set the array to
154 .. _fmtdesc-flags:
156 .. flat-table:: Image Format Description Flags
157 :header-rows: 0
158 :stub-columns: 0
161 * - ``V4L2_FMT_FLAG_COMPRESSED``
162 - 0x0001
163 - This is a compressed format.
164 * - ``V4L2_FMT_FLAG_EMULATED``
165 - 0x0002
166 - This format is not native to the device but emulated through
169 * - ``V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM``
170 - 0x0004
171 - The hardware decoder for this compressed bytestream format (aka coded
176 This flag can only be used in combination with the
178 formats only. This flag is valid for stateful decoders only.
179 * - ``V4L2_FMT_FLAG_DYN_RESOLUTION``
180 - 0x0008
181 - Dynamic resolution switching is supported by the device for this
186 This flag can only be used in combination with the
188 compressed formats only. This flag is valid for stateful codecs only.
189 * - ``V4L2_FMT_FLAG_ENC_CAP_FRAME_INTERVAL``
190 - 0x0010
191 - The hardware encoder supports setting the ``CAPTURE`` coded frame
194 also sets the ``CAPTURE`` coded frame interval to the same value.
195 If this flag is set, then the ``CAPTURE`` coded frame interval can be
198 a hint for reserving hardware encoder resources and the ``CAPTURE`` coded
202 This flag can only be used in combination with the
204 compressed formats only. This flag is valid for stateful encoders only.
205 * - ``V4L2_FMT_FLAG_CSC_COLORSPACE``
206 - 0x0020
207 - The driver allows the application to try to change the default
208 colorspace. This flag is relevant only for capture devices.
209 The application can ask to configure the colorspace of the capture device
211 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
212 * - ``V4L2_FMT_FLAG_CSC_XFER_FUNC``
213 - 0x0040
214 - The driver allows the application to try to change the default
215 transfer function. This flag is relevant only for capture devices.
216 The application can ask to configure the transfer function of the capture
218 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
219 * - ``V4L2_FMT_FLAG_CSC_YCBCR_ENC``
220 - 0x0080
221 - The driver allows the application to try to change the default
222 Y'CbCr encoding. This flag is relevant only for capture devices.
223 The application can ask to configure the Y'CbCr encoding of the capture device
225 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
226 * - ``V4L2_FMT_FLAG_CSC_HSV_ENC``
227 - 0x0080
228 - The driver allows the application to try to change the default
229 HSV encoding. This flag is relevant only for capture devices.
230 The application can ask to configure the HSV encoding of the capture device
232 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
233 * - ``V4L2_FMT_FLAG_CSC_QUANTIZATION``
234 - 0x0100
235 - The driver allows the application to try to change the default
236 quantization. This flag is relevant only for capture devices.
237 The application can ask to configure the quantization of the capture
239 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
240 * - ``V4L2_FMT_FLAG_META_LINE_BASED``
241 - 0x0200
242 - The metadata format is line-based. In this case the ``width``,
247 * - ``V4L2_FMTDESC_FLAG_ENUM_ALL``
248 - 0x80000000
249 - When the applications ORs ``index`` with ``V4L2_FMTDESC_FLAG_ENUM_ALL`` flag
257 On success 0 is returned, on error -1 and the ``errno`` variable is set
259 :ref:`Generic Error Codes <gen-errors>` chapter.