From: Ezequiel Garcia <ezequiel@collabora.com>
To: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Hans Verkuil <hverkuil@xs4all.nl>,
Nicolas Dufresne <nicolas.dufresne@collabora.com>,
Alexandre Courbot <acourbot@chromium.org>,
Ezequiel Garcia <ezequiel@collabora.com>,
kernel@collabora.com
Subject: [PATCH v2 0/8] V4L2 stateless VP8 de-staging
Date: Wed, 3 Mar 2021 17:27:06 -0300 [thread overview]
Message-ID: <20210303202714.212394-1-ezequiel@collabora.com> (raw)
After close scrutiny of the VP8 specification, it seems
the VP8 stateless API is ready.
This series contains a series of clean-ups and improvement:
renaming symbols for consistency, documenting things for clarity,
and then moves the control to proper V4L2 headers.
It must be noted that, unlike parsed H.264, V4L2_PIX_FMT_VP8_FRAME
buffers must contain the VP8 frame header. In others words
a VP8 parsed frame buffer is:
+--------+-----------------------------------------------------+-----+------------+
| tag 3B | extra 7B | header | MB data | DCT size | DCT part 0 | ... | DCT part N |
+--------+-----------------------------------------------------+-----+------------+
Hopefully the pixel format documentation is now clear about that.
Support in Cedrus and Hantro is available upstream, and Mediatek
support is available downstream [1] which uses the API as-is.
This was tested with GStreamer v4l2codec element and Fluster [2]
conformance test, on a Hantro G1 device.
Changelog:
v2: * Rename VP8_FRAME_IS_KEY_FRAME
[1] https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/2614338/21/
[2] https://github.com/fluendo/fluster
Ezequiel Garcia (8):
media: uapi: vp8: Remove "header" from symbol names and macros
media: uapi: vp8: Rename v4l2_vp8_loopfilter to v4l2_vp8_loop_filter
media: uapi: vp8: Add proper kernel-doc documentation
media: uapi: Move parsed VP8 pixel format out of staging
media: uapi: Move the VP8 stateless control type out of staging
media: controls: Log VP8 stateless control in .std_log
media: uapi: Rename V4L2 VP8 specific macro to V4L2_VP8_
media: uapi: move VP8 stateless controls out of staging
.../media/v4l/ext-ctrls-codec-stateless.rst | 318 +++++++++++++++++
.../media/v4l/ext-ctrls-codec.rst | 323 ------------------
.../media/v4l/pixfmt-compressed.rst | 15 +-
.../media/v4l/vidioc-g-ext-ctrls.rst | 4 +
.../media/v4l/vidioc-queryctrl.rst | 6 +
.../media/videodev2.h.rst.exceptions | 1 +
drivers/media/v4l2-core/v4l2-ctrls.c | 39 ++-
drivers/staging/media/hantro/hantro_drv.c | 2 +-
.../staging/media/hantro/hantro_g1_vp8_dec.c | 55 ++-
drivers/staging/media/hantro/hantro_hw.h | 2 +-
drivers/staging/media/hantro/hantro_vp8.c | 10 +-
.../media/hantro/rk3399_vpu_hw_vp8_dec.c | 55 ++-
drivers/staging/media/sunxi/cedrus/cedrus.c | 2 +-
drivers/staging/media/sunxi/cedrus/cedrus.h | 2 +-
.../staging/media/sunxi/cedrus/cedrus_dec.c | 2 +-
.../staging/media/sunxi/cedrus/cedrus_vp8.c | 113 +++---
include/media/v4l2-ctrls.h | 5 +-
include/media/vp8-ctrls.h | 114 -------
include/uapi/linux/v4l2-controls.h | 195 +++++++++++
include/uapi/linux/videodev2.h | 4 +
20 files changed, 677 insertions(+), 590 deletions(-)
delete mode 100644 include/media/vp8-ctrls.h
--
2.30.0
next reply other threads:[~2021-03-04 0:07 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-03 20:27 Ezequiel Garcia [this message]
2021-03-03 20:27 ` [PATCH v2 1/8] media: uapi: vp8: Remove "header" from symbol names and macros Ezequiel Garcia
2021-03-04 8:48 ` Alexandre Courbot
2021-03-03 20:27 ` [PATCH v2 2/8] media: uapi: vp8: Rename v4l2_vp8_loopfilter to v4l2_vp8_loop_filter Ezequiel Garcia
2021-03-03 20:27 ` [PATCH v2 3/8] media: uapi: vp8: Add proper kernel-doc documentation Ezequiel Garcia
2021-03-03 20:27 ` [PATCH v2 4/8] media: uapi: Move parsed VP8 pixel format out of staging Ezequiel Garcia
2021-03-03 20:27 ` [PATCH v2 5/8] media: uapi: Move the VP8 stateless control type " Ezequiel Garcia
2021-03-03 20:27 ` [PATCH v2 6/8] media: controls: Log VP8 stateless control in .std_log Ezequiel Garcia
2021-03-03 20:27 ` [PATCH v2 7/8] media: vp8: Rename V4L2 VP8 specific macro to V4L2_VP8_ Ezequiel Garcia
2021-03-03 20:27 ` [PATCH v2 8/8] media: uapi: move VP8 stateless controls out of staging 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=20210303202714.212394-1-ezequiel@collabora.com \
--to=ezequiel@collabora.com \
--cc=acourbot@chromium.org \
--cc=hverkuil@xs4all.nl \
--cc=kernel@collabora.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=nicolas.dufresne@collabora.com \
/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.