Commit 81c6892d authored by Ezequiel Garcia's avatar Ezequiel Garcia Committed by Mauro Carvalho Chehab

media: docs: Move the H264 stateless codec uAPI

Now that we've destaged the H264 stateless codec controls,
and with all the pieces in place, update the documentation
and move it to its own section.
Signed-off-by: default avatarEzequiel Garcia <ezequiel@collabora.com>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 46a309d2
......@@ -44,6 +44,7 @@ applicable to all devices.
ext-ctrls-image-source
ext-ctrls-image-process
ext-ctrls-codec
ext-ctrls-codec-stateless
ext-ctrls-jpeg
ext-ctrls-dv
ext-ctrls-rf-tuner
......
......@@ -57,18 +57,18 @@ Compressed Formats
- H264 parsed slice data, including slice headers, either with or
without the start code, as extracted from the H264 bitstream.
This format is adapted for stateless video decoders that implement an
H264 pipeline (using the :ref:`mem2mem` and :ref:`media-request-api`).
H264 pipeline with the :ref:`stateless_decoder`.
This pixelformat has two modifiers that must be set at least once
through the ``V4L2_CID_MPEG_VIDEO_H264_DECODE_MODE``
and ``V4L2_CID_MPEG_VIDEO_H264_START_CODE`` controls.
through the ``V4L2_CID_STATELESS_H264_DECODE_MODE``
and ``V4L2_CID_STATELESS_H264_START_CODE`` controls.
In addition, metadata associated with the frame to decode are
required to be passed through the ``V4L2_CID_MPEG_VIDEO_H264_SPS``,
``V4L2_CID_MPEG_VIDEO_H264_PPS``,
``V4L2_CID_MPEG_VIDEO_H264_SCALING_MATRIX``,
``V4L2_CID_MPEG_VIDEO_H264_SLICE_PARAMS`` and
``V4L2_CID_MPEG_VIDEO_H264_DECODE_PARAMS`` controls. See the
:ref:`associated Codec Control IDs <v4l2-mpeg-h264>`. Exactly
one output and one capture buffer must be provided for use
required to be passed through the ``V4L2_CID_STATELESS_H264_SPS``,
``V4L2_CID_STATELESS_H264_PPS``,
``V4L2_CID_STATELESS_H264_SCALING_MATRIX``,
``V4L2_CID_STATELESS_H264_SLICE_PARAMS`` and
``V4L2_CID_STATELESS_H264_DECODE_PARAMS`` controls. See the
:ref:`associated Codec Control IDs <v4l2-codec-stateless-h264>`.
Exactly one output and one capture buffer must be provided for use
with this pixel format. The output buffer must contain the
appropriate number of macroblocks to decode a full
corresponding frame to the matching capture buffer.
......@@ -77,11 +77,6 @@ Compressed Formats
7.3.2.8 "Slice layer without partitioning RBSP syntax" and the following
sections.
.. note::
This format is not yet part of the public kernel API and it
is expected to change.
* .. _V4L2-PIX-FMT-H263:
- ``V4L2_PIX_FMT_H263``
......
......@@ -184,6 +184,30 @@ still cause this situation.
- ``p_area``
- A pointer to a struct :c:type:`v4l2_area`. Valid if this control is
of type ``V4L2_CTRL_TYPE_AREA``.
* - :c:type:`v4l2_ctrl_h264_sps` *
- ``p_h264_sps``
- A pointer to a struct :c:type:`v4l2_ctrl_h264_sps`. Valid if this control is
of type ``V4L2_CTRL_TYPE_H264_SPS``.
* - :c:type:`v4l2_ctrl_h264_pps` *
- ``p_h264_pps``
- A pointer to a struct :c:type:`v4l2_ctrl_h264_pps`. Valid if this control is
of type ``V4L2_CTRL_TYPE_H264_PPS``.
* - :c:type:`v4l2_ctrl_h264_scaling_matrix` *
- ``p_h264_scaling_matrix``
- A pointer to a struct :c:type:`v4l2_ctrl_h264_scaling_matrix`. Valid if this control is
of type ``V4L2_CTRL_TYPE_H264_SCALING_MATRIX``.
* - :c:type:`v4l2_ctrl_h264_pred_weights` *
- ``p_h264_pred_weights``
- A pointer to a struct :c:type:`v4l2_ctrl_h264_pred_weights`. Valid if this control is
of type ``V4L2_CTRL_TYPE_H264_PRED_WEIGHTS``.
* - :c:type:`v4l2_ctrl_h264_slice_params` *
- ``p_h264_slice_params``
- A pointer to a struct :c:type:`v4l2_ctrl_h264_slice_params`. Valid if this control is
of type ``V4L2_CTRL_TYPE_H264_SLICE_PARAMS``.
* - :c:type:`v4l2_ctrl_h264_decode_params` *
- ``p_h264_decode_params``
- A pointer to a struct :c:type:`v4l2_ctrl_h264_decode_params`. Valid if this control is
of type ``V4L2_CTRL_TYPE_H264_DECODE_PARAMS``.
* - void *
- ``ptr``
- A pointer to a compound type which can be an N-dimensional array
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment