linux/Documentation/media/uapi/v4l/pixfmt-003.rst

167 lines
3.7 KiB
ReStructuredText
Raw Normal View History

.. -*- coding: utf-8; mode: rst -*-
******************************
Multi-planar format structures
******************************
The :ref:`struct v4l2_plane_pix_format <v4l2-plane-pix-format>` structures define size
and layout for each of the planes in a multi-planar format. The
:ref:`struct v4l2_pix_format_mplane <v4l2-pix-format-mplane>` structure contains
information common to all planes (such as image width and height) and an
array of :ref:`struct v4l2_plane_pix_format <v4l2-plane-pix-format>` structures,
describing all planes of that format.
.. _v4l2-plane-pix-format:
.. flat-table:: struct v4l2_plane_pix_format
:header-rows: 0
:stub-columns: 0
:widths: 1 1 2
- .. row 1
- __u32
- ``sizeimage``
- Maximum size in bytes required for image data in this plane.
- .. row 2
- __u32
- ``bytesperline``
- Distance in bytes between the leftmost pixels in two adjacent
lines. See struct :ref:`v4l2_pix_format <v4l2-pix-format>`.
- .. row 3
- __u16
- ``reserved[6]``
- Reserved for future extensions. Should be zeroed by drivers and
applications.
.. _v4l2-pix-format-mplane:
.. flat-table:: struct v4l2_pix_format_mplane
:header-rows: 0
:stub-columns: 0
:widths: 1 1 2
- .. row 1
- __u32
- ``width``
- Image width in pixels. See struct
:ref:`v4l2_pix_format <v4l2-pix-format>`.
- .. row 2
- __u32
- ``height``
- Image height in pixels. See struct
:ref:`v4l2_pix_format <v4l2-pix-format>`.
- .. row 3
- __u32
- ``pixelformat``
- The pixel format. Both single- and multi-planar four character
codes can be used.
- .. row 4
- enum :ref:`v4l2_field <v4l2-field>`
- ``field``
- See struct :ref:`v4l2_pix_format <v4l2-pix-format>`.
- .. row 5
- enum :ref:`v4l2_colorspace <v4l2-colorspace>`
- ``colorspace``
- See struct :ref:`v4l2_pix_format <v4l2-pix-format>`.
- .. row 6
- struct :ref:`v4l2_plane_pix_format <v4l2-plane-pix-format>`
- ``plane_fmt[VIDEO_MAX_PLANES]``
- An array of structures describing format of each plane this pixel
format consists of. The number of valid entries in this array has
to be put in the ``num_planes`` field.
- .. row 7
- __u8
- ``num_planes``
- Number of planes (i.e. separate memory buffers) for this format
and the number of valid entries in the ``plane_fmt`` array.
- .. row 8
- __u8
- ``flags``
- Flags set by the application or driver, see :ref:`format-flags`.
- .. row 9
- enum :ref:`v4l2_ycbcr_encoding <v4l2-ycbcr-encoding>`
- ``ycbcr_enc``
- This information supplements the ``colorspace`` and must be set by
the driver for capture streams and by the application for output
streams, see :ref:`colorspaces`.
- .. row 10
- enum :ref:`v4l2_quantization <v4l2-quantization>`
- ``quantization``
- This information supplements the ``colorspace`` and must be set by
the driver for capture streams and by the application for output
streams, see :ref:`colorspaces`.
- .. row 11
- enum :ref:`v4l2_xfer_func <v4l2-xfer-func>`
- ``xfer_func``
- This information supplements the ``colorspace`` and must be set by
the driver for capture streams and by the application for output
streams, see :ref:`colorspaces`.
- .. row 12
- __u8
- ``reserved[7]``
- Reserved for future extensions. Should be zeroed by drivers and
applications.