1 .. -*- coding: utf-8; mode: rst -*-
3 ******************************
4 Multi-planar format structures
5 ******************************
7 The struct :c:type:`v4l2_plane_pix_format` structures define size
8 and layout for each of the planes in a multi-planar format. The
9 struct :c:type:`v4l2_pix_format_mplane` structure contains
10 information common to all planes (such as image width and height) and an
11 array of struct :c:type:`v4l2_plane_pix_format` structures,
12 describing all planes of that format.
15 .. tabularcolumns:: |p{4.4cm}|p{4.4cm}|p{8.7cm}|
17 .. c:type:: v4l2_plane_pix_format
19 .. flat-table:: struct v4l2_plane_pix_format
26 - Maximum size in bytes required for image data in this plane.
29 - Distance in bytes between the leftmost pixels in two adjacent
30 lines. See struct :c:type:`v4l2_pix_format`.
33 - Reserved for future extensions. Should be zeroed by drivers and
37 .. tabularcolumns:: |p{4.4cm}|p{5.6cm}|p{7.5cm}|
39 .. c:type:: v4l2_pix_format_mplane
41 .. flat-table:: struct v4l2_pix_format_mplane
48 - Image width in pixels. See struct
49 :c:type:`v4l2_pix_format`.
52 - Image height in pixels. See struct
53 :c:type:`v4l2_pix_format`.
56 - The pixel format. Both single- and multi-planar four character
58 * - enum :c:type:`v4l2_field`
60 - See struct :c:type:`v4l2_pix_format`.
61 * - enum :c:type:`v4l2_colorspace`
63 - See struct :c:type:`v4l2_pix_format`.
64 * - struct :c:type:`v4l2_plane_pix_format`
65 - ``plane_fmt[VIDEO_MAX_PLANES]``
66 - An array of structures describing format of each plane this pixel
67 format consists of. The number of valid entries in this array has
68 to be put in the ``num_planes`` field.
71 - Number of planes (i.e. separate memory buffers) for this format
72 and the number of valid entries in the ``plane_fmt`` array.
75 - Flags set by the application or driver, see :ref:`format-flags`.
76 * - enum :c:type:`v4l2_ycbcr_encoding`
78 - This information supplements the ``colorspace`` and must be set by
79 the driver for capture streams and by the application for output
80 streams, see :ref:`colorspaces`.
81 * - enum :c:type:`v4l2_quantization`
83 - This information supplements the ``colorspace`` and must be set by
84 the driver for capture streams and by the application for output
85 streams, see :ref:`colorspaces`.
86 * - enum :c:type:`v4l2_xfer_func`
88 - This information supplements the ``colorspace`` and must be set by
89 the driver for capture streams and by the application for output
90 streams, see :ref:`colorspaces`.
93 - Reserved for future extensions. Should be zeroed by drivers and