From: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
To: Ezequiel Garcia <ezequiel@collabora.com>
Cc: linux-media@vger.kernel.org, kernel@collabora.com,
Nicolas Dufresne <nicolas.dufresne@collabora.com>,
Tomasz Figa <tfiga@chromium.org>,
linux-rockchip@lists.infradead.org,
Heiko Stuebner <heiko@sntech.de>, Jonas Karlman <jonas@kwiboo.se>,
Philipp Zabel <p.zabel@pengutronix.de>,
Boris Brezillon <boris.brezillon@collabora.com>,
Alexandre Courbot <acourbot@chromium.org>,
fbuergisser@chromium.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v7 02/11] media: uapi: h264: Rename pixel format
Date: Mon, 19 Aug 2019 14:41:10 +0200 [thread overview]
Message-ID: <20190819124110.GB32182@aptenodytes> (raw)
In-Reply-To: <20190816160132.7352-3-ezequiel@collabora.com>
[-- Attachment #1: Type: text/plain, Size: 6269 bytes --]
Hi,
On Fri 16 Aug 19, 13:01, Ezequiel Garcia wrote:
> The V4L2_PIX_FMT_H264_SLICE_RAW name was originally suggested
> because the pixel format would represent H264 slices without any
> start code.
>
> However, as we will now introduce a start code menu control,
> give the pixel format a more meaningful name, while it's
> still early enough to do so.
I definitely agree that SLICE_RAW is not the suffix we are looking for, but I'm
not sure that _SLICE is self-describing given that we can operate either
per-frame or per-slice, and _SLICE sort of implies the latter. Also, VP8 uses
_FRAME to clearly indicate that it operates per-frame.
In addition, the _SLICE suffix is used by MPEG-2 in the stable API. Since we
certainly want MPEG-2 to allow per-slice and per-frame decoding as well as
H.264 and that the _SLICE format is specified to be the broken "concatenated
slices" that cedrus expects, we probably want to use another suffix. This way,
we could deprecated MPEG2_SLICE and introduce a new format for MPEG-2 that would
have consistent naming with the other mpeg formats.
One suggestion I had was to call it H264_PARSED (and apply this to MPEG-2 and
HEVC when similar controls to H.264 are set in place for them). I think Hans had
another suggestion for the name but I don't recall what it was at this point.
Either way, if this has to be some debate, we could perhaps take it off your
series and stay with SLICE_RAW for now, as long as we do rename it before making
the API stable.
What do you think?
Cheers,
Paul
> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
> Tested-by: Philipp Zabel <p.zabel@pengutronix.de>
> ---
> Changes in v7:
> * None.
> Changes in v6:
> * None.
> Changes in v5:
> * None.
> Changes in v4:
> * New patch.
> ---
> Documentation/media/uapi/v4l/pixfmt-compressed.rst | 4 ++--
> drivers/media/v4l2-core/v4l2-ioctl.c | 2 +-
> drivers/staging/media/sunxi/cedrus/cedrus_dec.c | 2 +-
> drivers/staging/media/sunxi/cedrus/cedrus_video.c | 6 +++---
> include/media/h264-ctrls.h | 2 +-
> 5 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/media/uapi/v4l/pixfmt-compressed.rst b/Documentation/media/uapi/v4l/pixfmt-compressed.rst
> index f52a7b67023d..9b65473a2288 100644
> --- a/Documentation/media/uapi/v4l/pixfmt-compressed.rst
> +++ b/Documentation/media/uapi/v4l/pixfmt-compressed.rst
> @@ -52,9 +52,9 @@ Compressed Formats
> - ``V4L2_PIX_FMT_H264_MVC``
> - 'M264'
> - H264 MVC video elementary stream.
> - * .. _V4L2-PIX-FMT-H264-SLICE-RAW:
> + * .. _V4L2-PIX-FMT-H264-SLICE:
>
> - - ``V4L2_PIX_FMT_H264_SLICE_RAW``
> + - ``V4L2_PIX_FMT_H264_SLICE``
> - 'S264'
> - H264 parsed slice data, without the start code and as
> extracted from the H264 bitstream. This format is adapted for
> diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
> index bb5b4926538a..39f10621c91b 100644
> --- a/drivers/media/v4l2-core/v4l2-ioctl.c
> +++ b/drivers/media/v4l2-core/v4l2-ioctl.c
> @@ -1343,7 +1343,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
> case V4L2_PIX_FMT_H264: descr = "H.264"; break;
> case V4L2_PIX_FMT_H264_NO_SC: descr = "H.264 (No Start Codes)"; break;
> case V4L2_PIX_FMT_H264_MVC: descr = "H.264 MVC"; break;
> - case V4L2_PIX_FMT_H264_SLICE_RAW: descr = "H.264 Parsed Slice Data"; break;
> + case V4L2_PIX_FMT_H264_SLICE: descr = "H.264 Parsed Slice Data"; break;
> case V4L2_PIX_FMT_H263: descr = "H.263"; break;
> case V4L2_PIX_FMT_MPEG1: descr = "MPEG-1 ES"; break;
> case V4L2_PIX_FMT_MPEG2: descr = "MPEG-2 ES"; break;
> diff --git a/drivers/staging/media/sunxi/cedrus/cedrus_dec.c b/drivers/staging/media/sunxi/cedrus/cedrus_dec.c
> index bdad87eb9d79..56ca4c9ad01c 100644
> --- a/drivers/staging/media/sunxi/cedrus/cedrus_dec.c
> +++ b/drivers/staging/media/sunxi/cedrus/cedrus_dec.c
> @@ -46,7 +46,7 @@ void cedrus_device_run(void *priv)
> V4L2_CID_MPEG_VIDEO_MPEG2_QUANTIZATION);
> break;
>
> - case V4L2_PIX_FMT_H264_SLICE_RAW:
> + case V4L2_PIX_FMT_H264_SLICE:
> run.h264.decode_params = cedrus_find_control_data(ctx,
> V4L2_CID_MPEG_VIDEO_H264_DECODE_PARAMS);
> run.h264.pps = cedrus_find_control_data(ctx,
> diff --git a/drivers/staging/media/sunxi/cedrus/cedrus_video.c b/drivers/staging/media/sunxi/cedrus/cedrus_video.c
> index 681dfe3367a6..eeee3efd247b 100644
> --- a/drivers/staging/media/sunxi/cedrus/cedrus_video.c
> +++ b/drivers/staging/media/sunxi/cedrus/cedrus_video.c
> @@ -38,7 +38,7 @@ static struct cedrus_format cedrus_formats[] = {
> .directions = CEDRUS_DECODE_SRC,
> },
> {
> - .pixelformat = V4L2_PIX_FMT_H264_SLICE_RAW,
> + .pixelformat = V4L2_PIX_FMT_H264_SLICE,
> .directions = CEDRUS_DECODE_SRC,
> },
> {
> @@ -104,7 +104,7 @@ static void cedrus_prepare_format(struct v4l2_pix_format *pix_fmt)
>
> switch (pix_fmt->pixelformat) {
> case V4L2_PIX_FMT_MPEG2_SLICE:
> - case V4L2_PIX_FMT_H264_SLICE_RAW:
> + case V4L2_PIX_FMT_H264_SLICE:
> /* Zero bytes per line for encoded source. */
> bytesperline = 0;
>
> @@ -449,7 +449,7 @@ static int cedrus_start_streaming(struct vb2_queue *vq, unsigned int count)
> ctx->current_codec = CEDRUS_CODEC_MPEG2;
> break;
>
> - case V4L2_PIX_FMT_H264_SLICE_RAW:
> + case V4L2_PIX_FMT_H264_SLICE:
> ctx->current_codec = CEDRUS_CODEC_H264;
> break;
>
> diff --git a/include/media/h264-ctrls.h b/include/media/h264-ctrls.h
> index e1404d78d6ff..6160a69c0143 100644
> --- a/include/media/h264-ctrls.h
> +++ b/include/media/h264-ctrls.h
> @@ -14,7 +14,7 @@
> #include <linux/videodev2.h>
>
> /* Our pixel format isn't stable at the moment */
> -#define V4L2_PIX_FMT_H264_SLICE_RAW v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */
> +#define V4L2_PIX_FMT_H264_SLICE v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */
>
> /*
> * This is put insanely high to avoid conflicting with controls that
> --
> 2.22.0
>
--
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2019-08-19 12:41 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-16 16:01 [PATCH v7 00/11] media: hantro: Add support for H264 decoding Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 01/11] lib/sort.c: implement sort() variant taking context argument Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 02/11] media: uapi: h264: Rename pixel format Ezequiel Garcia
2019-08-19 12:41 ` Paul Kocialkowski [this message]
2019-08-19 14:38 ` Ezequiel Garcia
2019-08-19 15:53 ` Hans Verkuil
2019-08-22 11:54 ` Paul Kocialkowski
2019-08-22 13:47 ` Hans Verkuil
2019-08-22 14:38 ` Ezequiel Garcia
2019-08-22 14:42 ` Paul Kocialkowski
2019-08-16 16:01 ` [PATCH v7 03/11] media: uapi: h264: Add the concept of decoding mode Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 04/11] media: uapi: h264: Add the concept of start code Ezequiel Garcia
2019-08-19 12:14 ` Paul Kocialkowski
2020-02-09 20:08 ` Nicolas Dufresne
2019-08-16 16:01 ` [PATCH v7 05/11] media: uapi: h264: Get rid of the p0/b0/b1 ref-lists Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 06/11] media: cedrus: Cleanup control initialization Ezequiel Garcia
2019-08-19 12:31 ` Paul Kocialkowski
2019-08-16 16:01 ` [PATCH v7 07/11] media: cedrus: Specify H264 startcode and decoding mode Ezequiel Garcia
2019-08-22 12:31 ` Paul Kocialkowski
2019-08-16 16:01 ` [PATCH v7 08/11] media: hantro: Move copy_metadata() before doing a decode operation Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 09/11] media: hantro: Add core bits to support H264 decoding Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 10/11] media: hantro: Add support for H264 decoding on G1 Ezequiel Garcia
2019-08-16 16:01 ` [PATCH v7 11/11] media: hantro: Enable H264 decoding on rk3288 Ezequiel Garcia
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=20190819124110.GB32182@aptenodytes \
--to=paul.kocialkowski@bootlin.com \
--cc=acourbot@chromium.org \
--cc=boris.brezillon@collabora.com \
--cc=ezequiel@collabora.com \
--cc=fbuergisser@chromium.org \
--cc=heiko@sntech.de \
--cc=jonas@kwiboo.se \
--cc=kernel@collabora.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=nicolas.dufresne@collabora.com \
--cc=p.zabel@pengutronix.de \
--cc=tfiga@chromium.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