linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/10] MPEG-2 stateless API cleanup and destaging
@ 2021-04-03 18:07 Ezequiel Garcia
  2021-04-03 18:07 ` [PATCH v5 01/10] media: uapi: mpeg2: Rename "quantization" to "quantisation" Ezequiel Garcia
                   ` (9 more replies)
  0 siblings, 10 replies; 14+ messages in thread
From: Ezequiel Garcia @ 2021-04-03 18:07 UTC (permalink / raw)
  To: linux-media, linux-kernel
  Cc: kernel, Jonas Karlman, Hans Verkuil, Nicolas Dufresne,
	Philipp Zabel, Maxime Ripard, Paul Kocialkowski, Jernej Skrabec,
	Daniel Almeida, Ezequiel Garcia

Hi everyone,

Over the last few weeks Daniel Almeida and Nicolas Dufresne
have been working on GStreamer v4l2codecs support for stateless
MPEG-2 decoding.

This allowed us to re-review the MPEG-2 specification and re-discuss
the API with some additional insight. The API now looks quite cleaner,
and hopefully ready for destaging.

This series is mostly thanks to Daniel and Nicolas!

Patches 1 to 7 cleanup the API, and patches 8 to 10 move it
out of staging.

This is tested on i.MX8M and RK3399 platforms, using GStreamer
v4l2codecs, which will be upstream very soon.

v5:
* Rename "quantization" to "quantisation", so the terminology
  matches the MPEG-2 specification.
  This is the only change in v5, compared to v4.

v4:
* Rework and clarify quantization matrices control semantics.
* Move reference buffer fields to the picture parameter control.
* Remove slice parameters control. This can be added back in the
  future if needed, but for now it's not used.
  See patch 6/9 for details.
* Destage the API.

v3:
* No API changes, just minor boilerplate fixes for the new
  controls to be properly exposed, initialized and validated.

v2:
* Fixed bad use of boolean negation in a flag, which
  was fortunately reported by 0day bot.

Ezequiel Garcia (10):
  media: uapi: mpeg2: Rename "quantization" to "quantisation"
  media: uapi: mpeg2: rework quantisation matrices semantics
  media: uapi: mpeg2: Cleanup flags
  media: uapi: mpeg2: Split sequence and picture parameters
  media: uapi: mpeg2: Move reference buffer fields
  media: hantro/cedrus: Remove unneeded slice size and slice offset
  media: uapi: mpeg2: Remove V4L2_CID_MPEG_VIDEO_MPEG2_SLICE_PARAMS
  media: controls: Log MPEG-2 stateless control in .std_log
  media: uapi: Move the MPEG-2 stateless control type out of staging
  media: uapi: move MPEG-2 stateless controls out of staging

 .../media/v4l/ext-ctrls-codec-stateless.rst   | 218 +++++
 .../media/v4l/ext-ctrls-codec.rst             | 217 -----
 .../media/v4l/pixfmt-compressed.rst           |  11 +-
 .../media/v4l/vidioc-g-ext-ctrls.rst          |  12 +
 .../media/v4l/vidioc-queryctrl.rst            |  18 +-
 .../media/videodev2.h.rst.exceptions          |   5 +-
 drivers/media/v4l2-core/v4l2-async-core.c     | 880 ++++++++++++++++++
 drivers/media/v4l2-core/v4l2-ctrls.c          | 118 ++-
 drivers/staging/media/hantro/hantro_drv.c     |   9 +-
 .../media/hantro/hantro_g1_mpeg2_dec.c        | 110 +--
 drivers/staging/media/hantro/hantro_hw.h      |   2 +-
 drivers/staging/media/hantro/hantro_mpeg2.c   |   2 +-
 .../media/hantro/rk3399_vpu_hw_mpeg2_dec.c    | 106 +--
 drivers/staging/media/sunxi/cedrus/cedrus.c   |  10 +-
 drivers/staging/media/sunxi/cedrus/cedrus.h   |   5 +-
 .../staging/media/sunxi/cedrus/cedrus_dec.c   |  10 +-
 .../staging/media/sunxi/cedrus/cedrus_mpeg2.c |  97 +-
 include/media/mpeg2-ctrls.h                   |  82 --
 include/media/v4l2-ctrls.h                    |  11 +-
 include/uapi/linux/v4l2-controls.h            | 114 +++
 include/uapi/linux/videodev2.h                |   7 +
 21 files changed, 1492 insertions(+), 552 deletions(-)
 create mode 100644 drivers/media/v4l2-core/v4l2-async-core.c
 delete mode 100644 include/media/mpeg2-ctrls.h

-- 
2.30.0


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

end of thread, other threads:[~2021-04-06 10:38 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-03 18:07 [PATCH v5 00/10] MPEG-2 stateless API cleanup and destaging Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 01/10] media: uapi: mpeg2: Rename "quantization" to "quantisation" Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 02/10] media: uapi: mpeg2: rework quantisation matrices semantics Ezequiel Garcia
2021-04-06 10:25   ` Hans Verkuil
2021-04-03 18:07 ` [PATCH v5 03/10] media: uapi: mpeg2: Cleanup flags Ezequiel Garcia
2021-04-06 10:27   ` Hans Verkuil
2021-04-03 18:07 ` [PATCH v5 04/10] media: uapi: mpeg2: Split sequence and picture parameters Ezequiel Garcia
2021-04-06 10:37   ` Hans Verkuil
2021-04-03 18:07 ` [PATCH v5 05/10] media: uapi: mpeg2: Move reference buffer fields Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 06/10] media: hantro/cedrus: Remove unneeded slice size and slice offset Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 07/10] media: uapi: mpeg2: Remove V4L2_CID_MPEG_VIDEO_MPEG2_SLICE_PARAMS Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 08/10] media: controls: Log MPEG-2 stateless control in .std_log Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 09/10] media: uapi: Move the MPEG-2 stateless control type out of staging Ezequiel Garcia
2021-04-03 18:07 ` [PATCH v5 10/10] media: uapi: move MPEG-2 stateless controls " Ezequiel Garcia

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).