From: Dafna Hirschfeld <dafna3@gmail.com>
To: linux-media@vger.kernel.org
Cc: hverkuil@xs4all.nl, helen.koike@collabora.com,
Dafna Hirschfeld <dafna3@gmail.com>
Subject: [PATCH v5 17/21] media: vicodec: add documentation to V4L2_CID_MPEG_VIDEO_FWHT_PARAMS
Date: Tue, 26 Feb 2019 09:05:10 -0800 [thread overview]
Message-ID: <20190226170514.86127-18-dafna3@gmail.com> (raw)
In-Reply-To: <20190226170514.86127-1-dafna3@gmail.com>
add documentation to V4L2_CID_MPEG_VIDEO_FWHT_PARAMS
control and its related 'v4l2_ctrl_fwht_params' struct
Signed-off-by: Dafna Hirschfeld <dafna3@gmail.com>
---
.../media/uapi/v4l/ext-ctrls-codec.rst | 119 ++++++++++++++++++
1 file changed, 119 insertions(+)
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-codec.rst b/Documentation/media/uapi/v4l/ext-ctrls-codec.rst
index 088d25a670cc..05232cd71c3a 100644
--- a/Documentation/media/uapi/v4l/ext-ctrls-codec.rst
+++ b/Documentation/media/uapi/v4l/ext-ctrls-codec.rst
@@ -1538,6 +1538,125 @@ enum v4l2_mpeg_video_h264_hierarchical_coding_type -
non-4:2:0 YUV formats.
+.. _v4l2-mpeg-fwht:
+
+``V4L2_CID_MPEG_VIDEO_FWHT_PARAMS (struct)``
+ Specifies the fwht parameters (as extracted from the bitstream) for the
+ associated FWHT data. This includes the necessary parameters for
+ configuring a stateless hardware decoding pipeline for FWHT.
+
+ .. note::
+
+ This compound control is not yet part of the public kernel API and
+ it is expected to change.
+
+.. c:type:: v4l2_ctrl_fwht_params
+
+.. cssclass:: longtable
+
+.. flat-table:: struct v4l2_ctrl_fwht_params
+ :header-rows: 0
+ :stub-columns: 0
+ :widths: 1 1 2
+
+ * - __u64
+ - ``backward_ref_ts``
+ - Timestamp of the V4L2 capture buffer to use as backward reference, used
+ with P-coded frames. The timestamp refers to the
+ ``timestamp`` field in struct :c:type:`v4l2_buffer`. Use the
+ :c:func:`v4l2_timeval_to_ns()` function to convert the struct
+ :c:type:`timeval` in struct :c:type:`v4l2_buffer` to a __u64.
+ * - __u32
+ - ``version``
+ - The version of the codec
+ * - __u32
+ - ``width``
+ - The width of the frame
+ * - __u32
+ - ``height``
+ - The height of the frame
+ * - __u32
+ - ``flags``
+ - The flags of the frame, see :ref:`fwht-flags`.
+ * - __u32
+ - ``colorspace``
+ - The colorspace of the frame, from enum :c:type:`v4l2_colorspace`.
+ * - __u32
+ - ``xfer_func``
+ - The transfer function, from enum :c:type:`v4l2_xfer_func`.
+ * - __u32
+ - ``ycbcr_enc``
+ - The Y'CbCr encoding, from enum :c:type:`v4l2_ycbcr_encoding`.
+ * - __u32
+ - ``quantization``
+ - The quantization range, from enum :c:type:`v4l2_quantization`.
+
+
+
+.. _fwht-flags:
+
+FWHT Flags
+============
+.. tabularcolumns:: |p{7.0cm}|p{2.2cm}|p{8.3cm}|
+
+.. cssclass:: longtable
+
+.. flat-table::
+ :header-rows: 0
+ :stub-columns: 0
+ :widths: 3 1 4
+
+
+ * - ``FWHT_FL_IS_INTERLACED``
+ - 0x00000001
+ - Set if this is an interlaced format
+ * - ``FWHT_FL_IS_BOTTOM_FIRST``
+ - 0x00000002
+ - Set if this is a bottom-first (NTSC) interlaced format
+ * - ``FWHT_FL_IS_ALTERNATE``
+ - 0x00000004
+ - Set if each 'frame' contains just one field
+ * - ``FWHT_FL_IS_BOTTOM_FIELD``
+ - 0x00000008
+ - If FWHT_FL_IS_ALTERNATE was set, then this is set if this 'frame' is the
+ bottom field, else it is the top field.
+ * - ``FWHT_FL_LUMA_IS_UNCOMPRESSED``
+ - 0x00000010
+ - Set if the luma plane is uncompressed
+ * - ``FWHT_FL_CB_IS_UNCOMPRESSED``
+ - 0x00000020
+ - Set if the cb plane is uncompressed
+ * - ``FWHT_FL_CR_IS_UNCOMPRESSED``
+ - 0x00000040
+ - Set if the cr plane is uncompressed
+ * - ``FWHT_FL_CHROMA_FULL_HEIGHT``
+ - 0x00000080
+ - Set if the chroma plane has the same height as the luma plane,
+ else the chroma plane is half the height of the luma plane
+ * - ``FWHT_FL_CHROMA_FULL_WIDTH``
+ - 0x00000100
+ - Set if the chroma plane has the same width as the luma plane,
+ else the chroma plane is half the width of the luma plane
+ * - ``FWHT_FL_ALPHA_IS_UNCOMPRESSED``
+ - 0x00000200
+ - Set if the alpha plane is uncompressed
+ * - ``FWHT_FL_I_FRAME``
+ - 0x00000400
+ - Set if this is an I-frame
+ * - ``FWHT_FL_COMPONENTS_NUM_MSK``
+ - 0x00070000
+ - A 4-values flag - the number of components - 1
+ * - ``FWHT_FL_PIXENC_YUV``
+ - 0x00080000
+ - Set if the pixel encoding is YUV
+ * - ``FWHT_FL_PIXENC_RGB``
+ - 0x00100000
+ - Set if the pixel encoding is RGB
+ * - ``FWHT_FL_PIXENC_HSV``
+ - 0x00180000
+ - Set if the pixel encoding is HSV
+
+
``V4L2_CID_FWHT_I_FRAME_QP (integer)``
--
2.17.1
next prev parent reply other threads:[~2019-02-26 17:05 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-26 17:04 [PATCH v5 00/21] add support to stateless decoder Dafna Hirschfeld
2019-02-26 17:04 ` [PATCH v5 01/21] vb2: add requires_requests bit for stateless codecs Dafna Hirschfeld
2019-02-26 17:04 ` [PATCH v5 02/21] videodev2.h: add V4L2_BUF_CAP_REQUIRES_REQUESTS Dafna Hirschfeld
2019-02-26 17:04 ` [PATCH v5 03/21] cedrus: set requires_requests Dafna Hirschfeld
2019-02-26 17:04 ` [PATCH v5 04/21] media: vicodec: selection api should only check single buffer types Dafna Hirschfeld
2019-02-26 17:04 ` [PATCH v5 05/21] media: vicodec: upon release, call m2m release before freeing ctrl handler Dafna Hirschfeld
2019-02-26 17:04 ` [PATCH v5 06/21] media: v4l2-ctrl: v4l2_ctrl_request_setup returns with error upon failure Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 07/21] media: vicodec: change variable name for the return value of v4l2_fwht_encode Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 08/21] media: vicodec: bugfix - call v4l2_m2m_buf_copy_metadata also if decoding fails Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 09/21] media: vicodec: bugfix: free compressed_frame upon device release Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 10/21] media: vicodec: Move raw frame preparation code to a function Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 11/21] media: vicodec: add field 'buf' to fwht_raw_frame Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 12/21] media: vicodec: keep the ref frame according to the format in decoder Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 13/21] media: vicodec: Validate version dependent header values in a separate function Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 14/21] media: vicodec: rename v4l2_fwht_default_fmt to v4l2_fwht_find_nth_fmt Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 15/21] media: vicodec: add struct for encoder/decoder instance Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 16/21] media: vicodec: add documentation to V4L2_CID_FWHT_I/P_FRAME_QP Dafna Hirschfeld
2019-02-26 17:05 ` Dafna Hirschfeld [this message]
2019-02-26 17:05 ` [PATCH v5 18/21] media: vicodec: add documentation to V4L2_PIX_FMT_FWHT_STATELESS Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 19/21] media: vicodec: Introducing stateless fwht defs and structs Dafna Hirschfeld
2019-02-27 16:21 ` kbuild test robot
2019-02-26 17:05 ` [PATCH v5 20/21] media: vicodec: Register another node for stateless decoder Dafna Hirschfeld
2019-02-26 17:05 ` [PATCH v5 21/21] media: vicodec: Add support " Dafna Hirschfeld
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190226170514.86127-18-dafna3@gmail.com \
--to=dafna3@gmail.com \
--cc=helen.koike@collabora.com \
--cc=hverkuil@xs4all.nl \
--cc=linux-media@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox