summaryrefslogblamecommitdiff
path: root/Documentation/linux_tv/media/v4l/pixfmt-003.rst
blob: 6ee05ff1dbb5559eb5ee1a8752b16f177f298012 (plain) (tree)
















































































































































































                                                                                 
.. -*- coding: utf-8; mode: rst -*-

******************************
Multi-planar format structures
******************************

The :c:type:`struct v4l2_plane_pix_format` structures define size
and layout for each of the planes in a multi-planar format. The
:c:type:`struct v4l2_pix_format_mplane` structure contains
information common to all planes (such as image width and height) and an
array of :c:type:`struct 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.




.. ------------------------------------------------------------------------------
.. This file was automatically converted from DocBook-XML with the dbxml
.. library (https://github.com/return42/sphkerneldoc). The origin XML comes
.. from the linux kernel, refer to:
..
.. * https://github.com/torvalds/linux/tree/master/Documentation/DocBook
.. ------------------------------------------------------------------------------