All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC 0/6] media: uapi: h264: First batch of adjusments
@ 2019-06-03 11:09 Boris Brezillon
  2019-06-03 11:09 ` [PATCH RFC 1/6] media: uapi: h264: Clarify our expectations regarding NAL header format Boris Brezillon
                   ` (5 more replies)
  0 siblings, 6 replies; 24+ messages in thread
From: Boris Brezillon @ 2019-06-03 11:09 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Hans Verkuil, Laurent Pinchart,
	Sakari Ailus, linux-media
  Cc: Tomasz Figa, Nicolas Dufresne, kernel, Paul Kocialkowski,
	Ezequiel Garcia, Jonas Karlman, Jernej Skrabec,
	Alexandre Courbot, Thierry Reding, Boris Brezillon

Hello,

This is a first batch of adjustments to the stateless H264 decoder
uAPI. The first one is about adding support for per-frame decoding,
which is the only mode supported on some codecs (the hantro G1 block
supports per-slice decoding but not in an way that would allow
efficient multiplexing of several decoding contexts).

The second modification drops the P0/B0/B1 ref lists from the
decode_params control. These lists are no longer needed now that we know
we can build them kernel side based on the DPB.

There are few more changes in the pipe, but I'd like to sync with Paul,
Jonas, Jernej and Nicolas before modifying:
* Enforce order of the scaling list (looks like the rockchip and cedrus
  have different expectations)
* Pass top/bottom field info as flags in the DPB entry: the field
  attached to the capture buffer is not accurate as capture bufs might
  contain both top/bottom (meaning they are actually interlaced), but a
  coded frame might contain only one of these fields. Note
  that there's also a problem with the output -> capture field flag
  propagation we have in copy_metadata() because a coded slice might
  contain only data for top or bottom, but the capture frame might
  contain both. Doing capture->field = output->field means we're lying
  about what's inside the capture buffer (not sure we have
  implementation checking that)
* s/dpb/refs/: looks like we're abusing the term DPB which is supposed
  to be implementation specific. What's provided by the bitstream is a
  list of references that will be used to decode a frame
* ... (add your own)

Feel free to comment on these changes and/or propose alternatives.

Regards,

Boris

Boris Brezillon (6):
  media: uapi: h264: Clarify our expectations regarding NAL header
    format
  media: uapi: h264: Add the concept of decoding mode
  media: uapi: h264: Get rid of the p0/b0/b1 ref-lists
  media: cedrus: Prepare things to support !compound controls
  media: cedrus: Make the slice_params array size limitation more
    explicit
  media: cedrus: Add the H264_DECODING_MODE control

 .../media/uapi/v4l/ext-ctrls-codec.rst        | 52 ++++++++++++---
 drivers/media/v4l2-core/v4l2-ctrls.c          |  9 +++
 drivers/staging/media/sunxi/cedrus/cedrus.c   | 66 +++++++++++++------
 drivers/staging/media/sunxi/cedrus/cedrus.h   |  3 +-
 include/media/h264-ctrls.h                    | 13 ++++
 5 files changed, 112 insertions(+), 31 deletions(-)

-- 
2.20.1


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

end of thread, other threads:[~2019-06-06  6:59 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-03 11:09 [PATCH RFC 0/6] media: uapi: h264: First batch of adjusments Boris Brezillon
2019-06-03 11:09 ` [PATCH RFC 1/6] media: uapi: h264: Clarify our expectations regarding NAL header format Boris Brezillon
2019-06-03 11:09 ` [PATCH RFC 2/6] media: uapi: h264: Add the concept of decoding mode Boris Brezillon
2019-06-03 12:30   ` Thierry Reding
2019-06-03 12:51     ` Boris Brezillon
2019-06-03 14:05       ` Thierry Reding
2019-06-03 15:37         ` Boris Brezillon
2019-06-04  8:16           ` Thierry Reding
2019-06-05 20:48             ` Paul Kocialkowski
2019-06-06  6:55               ` Boris Brezillon
2019-06-05 20:55   ` Paul Kocialkowski
2019-06-03 11:09 ` [PATCH RFC 3/6] media: uapi: h264: Get rid of the p0/b0/b1 ref-lists Boris Brezillon
2019-06-03 11:09 ` [PATCH RFC 4/6] media: cedrus: Prepare things to support !compound controls Boris Brezillon
2019-06-05 20:57   ` Paul Kocialkowski
2019-06-06  6:58     ` Boris Brezillon
2019-06-03 11:09 ` [PATCH RFC 5/6] media: cedrus: Make the slice_params array size limitation more explicit Boris Brezillon
2019-06-03 21:48   ` Jernej Škrabec
2019-06-03 23:55     ` Nicolas Dufresne
2019-06-04  8:12       ` Thierry Reding
2019-06-04  8:28         ` Boris Brezillon
2019-06-04 14:31         ` Nicolas Dufresne
2019-06-05 21:01           ` Paul Kocialkowski
2019-06-06  6:59             ` Boris Brezillon
2019-06-03 11:09 ` [PATCH RFC 6/6] media: cedrus: Add the H264_DECODING_MODE control Boris Brezillon

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.