All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/8] V4L2 stateless VP8 de-staging
@ 2021-03-03 20:27 Ezequiel Garcia
  2021-03-03 20:27 ` [PATCH v2 1/8] media: uapi: vp8: Remove "header" from symbol names and macros Ezequiel Garcia
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Ezequiel Garcia @ 2021-03-03 20:27 UTC (permalink / raw)
  To: linux-media, linux-kernel
  Cc: Hans Verkuil, Nicolas Dufresne, Alexandre Courbot,
	Ezequiel Garcia, kernel

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


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-03-04  8:49 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-03 20:27 [PATCH v2 0/8] V4L2 stateless VP8 de-staging Ezequiel Garcia
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

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.