From: Nicolas Dufresne <nicolas.dufresne@collabora.com>
To: Philipp Zabel <p.zabel@pengutronix.de>,
Ezequiel Garcia <ezequiel@collabora.com>,
linux-media@vger.kernel.org
Cc: Hans Verkuil <hverkuil@xs4all.nl>,
Robert Beckett <bob.beckett@collabora.com>,
kernel@collabora.com, stable@vger.kernel.org
Subject: Re: [PATCH 1/2] media: coda: Fix reported H264 profile
Date: Mon, 20 Jul 2020 12:13:00 -0400 [thread overview]
Message-ID: <77cc8d67c6016c6cefb3d2b93ae212cc02bac064.camel@collabora.com> (raw)
In-Reply-To: <51175cb496644aaa5d5004630925ead4c6f0ddc7.camel@pengutronix.de>
[-- Attachment #1: Type: text/plain, Size: 3203 bytes --]
Le vendredi 17 juillet 2020 à 10:14 +0200, Philipp Zabel a écrit :
> On Fri, 2020-07-17 at 00:49 -0300, Ezequiel Garcia wrote:
> > From: Nicolas Dufresne <nicolas.dufresne@collabora.com>
> >
> > The CODA960 manual states that ASO/FMO features of baseline are not
> > supported, so for this reason this driver should only report
> > constrained baseline support.
>
> I know the encoder doesn't support this, but is this also true of the
> decoder? The i.MX6DQ Reference Manual explicitly lists H.264/AVC decoder
> support for both baseline profile and constrained base line profile.
>
> > This fixes negotiation issue with constrained baseline content
> > on GStreamer 1.17.1.
> >
> > Cc: stable@vger.kernel.org
> > Fixes: 42a68012e67c2 ("media: coda: add read-only h.264 decoder profile/level controls")
> > Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
> > Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
> > ---
> > drivers/media/platform/coda/coda-common.c | 6 +++---
> > 1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/media/platform/coda/coda-common.c b/drivers/media/platform/coda/coda-common.c
> > index 3ab3d976d8ca..c641d1608825 100644
> > --- a/drivers/media/platform/coda/coda-common.c
> > +++ b/drivers/media/platform/coda/coda-common.c
> > @@ -2335,8 +2335,8 @@ static void coda_encode_ctrls(struct coda_ctx *ctx)
> > V4L2_CID_MPEG_VIDEO_H264_CHROMA_QP_INDEX_OFFSET, -12, 12, 1, 0);
> > v4l2_ctrl_new_std_menu(&ctx->ctrls, &coda_ctrl_ops,
> > V4L2_CID_MPEG_VIDEO_H264_PROFILE,
> > - V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE, 0x0,
> > - V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE);
> > + V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE, 0x0,
> > + V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE);
>
> Encoder support is listed as baseline, not constrained baseline, in the
> manual, but the SPS NALs produced by the encoder start with:
> 00 00 00 01 67 42 40
> ^
> so that is profile_idc=66, constraint_set1_flag==1, constrained baseline
> indeed. I think this change is correct.
>
> > if (ctx->dev->devtype->product == CODA_HX4 ||
> > ctx->dev->devtype->product == CODA_7541) {
> > v4l2_ctrl_new_std_menu(&ctx->ctrls, &coda_ctrl_ops,
> > @@ -2417,7 +2417,7 @@ static void coda_decode_ctrls(struct coda_ctx *ctx)
> > ctx->h264_profile_ctrl = v4l2_ctrl_new_std_menu(&ctx->ctrls,
> > &coda_ctrl_ops, V4L2_CID_MPEG_VIDEO_H264_PROFILE,
> > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH,
> > - ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) |
> > + ~((1 << V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE) |
> > (1 << V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) |
> > (1 << V4L2_MPEG_VIDEO_H264_PROFILE_HIGH)),
> > V4L2_MPEG_VIDEO_H264_PROFILE_HIGH);
>
> I'm not sure about this one.
Indeed, the decoder does support ASO/FMO, assuming the extra buffer
space is allocated as per the documentation (says that slice_save_size
should be the max_width * max_height * 3 / 4). Did you have that
implemented ? If not, I'd keep that patch, but add a comment to explain
that it can be enabled later.
>
> regards
> Philipp
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
prev parent reply other threads:[~2020-07-20 16:18 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-17 3:49 [PATCH 1/2] media: coda: Fix reported H264 profile Ezequiel Garcia
2020-07-17 3:49 ` [PATCH 2/2] media: coda: Add more H264 levels for CODA960 Ezequiel Garcia
2020-07-17 7:48 ` Philipp Zabel
2020-07-17 15:50 ` Nicolas Dufresne
2020-07-20 8:31 ` Philipp Zabel
2020-07-20 15:36 ` Nicolas Dufresne
2020-07-20 16:09 ` Nicolas Dufresne
2020-07-20 21:43 ` Nicolas Dufresne
2020-07-21 8:14 ` Philipp Zabel
2020-07-17 8:14 ` [PATCH 1/2] media: coda: Fix reported H264 profile Philipp Zabel
2020-07-17 15:56 ` Nicolas Dufresne
2020-07-20 8:40 ` Philipp Zabel
2020-07-20 16:20 ` Nicolas Dufresne
2020-07-20 16:13 ` Nicolas Dufresne [this message]
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=77cc8d67c6016c6cefb3d2b93ae212cc02bac064.camel@collabora.com \
--to=nicolas.dufresne@collabora.com \
--cc=bob.beckett@collabora.com \
--cc=ezequiel@collabora.com \
--cc=hverkuil@xs4all.nl \
--cc=kernel@collabora.com \
--cc=linux-media@vger.kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=stable@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.