media: pixfmt: Document the HEVC slice pixel format
authorPaul Kocialkowski <paul.kocialkowski@bootlin.com>
Tue, 22 Oct 2019 15:26:53 +0000 (12:26 -0300)
committerpopcornmix <popcornmix@gmail.com>
Wed, 1 Jul 2020 15:33:31 +0000 (16:33 +0100)
Commit de06f289283298e2938445019999cec46435375c upstream.

Document the current state of the HEVC slice pixel format.
The format will need to evolve in the future, which is why it is
not part of the public API.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Documentation/media/uapi/v4l/pixfmt-compressed.rst

index 292fdc1..7e9b2b9 100644 (file)
@@ -188,6 +188,29 @@ Compressed Formats
        If :ref:`VIDIOC_ENUM_FMT` reports ``V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM``
        then the decoder has no requirements since it can parse all the
        information from the raw bytestream.
+    * .. _V4L2-PIX-FMT-HEVC-SLICE:
+
+      - ``V4L2_PIX_FMT_HEVC_SLICE``
+      - 'S265'
+      - HEVC parsed slice data, as extracted from the HEVC bitstream.
+       This format is adapted for stateless video decoders that implement a
+       HEVC pipeline (using the :ref:`mem2mem` and :ref:`media-request-api`).
+       This pixelformat has two modifiers that must be set at least once
+       through the ``V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE``
+        and ``V4L2_CID_MPEG_VIDEO_HEVC_START_CODE`` controls.
+       Metadata associated with the frame to decode is required to be passed
+       through the following controls :
+        * ``V4L2_CID_MPEG_VIDEO_HEVC_SPS``
+        * ``V4L2_CID_MPEG_VIDEO_HEVC_PPS``
+        * ``V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS``
+       See the :ref:`associated Codec Control IDs <v4l2-mpeg-hevc>`.
+       Buffers associated with this pixel format must contain the appropriate
+       number of macroblocks to decode a full corresponding frame.
+
+       .. note::
+
+          This format is not yet part of the public kernel API and it
+          is expected to change.
     * .. _V4L2-PIX-FMT-FWHT:
 
       - ``V4L2_PIX_FMT_FWHT``