mbox series

[GIT,PULL,FOR,v5.5] Add slicing support + spec for stateless decoders

Message ID 02bfac01-d6ba-1eca-efc6-1dbfcc712dc0@xs4all.nl (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL,FOR,v5.5] Add slicing support + spec for stateless decoders | expand

Pull-request

git://linuxtv.org/hverkuil/media_tree.git tags/br-v5.5j

Message

Hans Verkuil Oct. 16, 2019, 11:39 a.m. UTC
This series adds support for H.264 slicing to the cedrus driver. This is done by
adding a new buffer flag V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF that stateless decoders
have to set when queueing the output buffer to indicate that this output buffer
contains a compressed slice and so the capture buffer the slice is decoded into
should not be marked as DONE since more slices are expected.

Also add a new decoder command V4L2_DEC_CMD_FLUSH to handle the corner case where
there are no more slices to decode, but there is still a capture buffer pending.

Add support for all this to the m2m framework and add support for slicing to the
cedrus driver. Many thanks to Jernej for working on the cedrus slicing support and
testing these patches!

Since slicing was the final missing piece, it is now time to add the stateless
decoder spec as well to the V4L2 Specification.

Many thanks to Alexandre and Tomasz and the many others who contributed to this.

Regards,

	Hans

The following changes since commit 3ff3a712a9eabb3d7bf52c263dd1ece054345df4:

  media: ti-vpe: vpe: don't rely on colorspace member for conversion (2019-10-10 13:54:22 -0300)

are available in the Git repository at:

  git://linuxtv.org/hverkuil/media_tree.git tags/br-v5.5j

for you to fetch changes up to b6f4140fcee87196dca7edf512de352a1d50fa62:

  media: docs-rst: Document m2m stateless video decoder interface (2019-10-16 12:56:31 +0200)

----------------------------------------------------------------
Tag branch

----------------------------------------------------------------
Alexandre Courbot (1):
      media: docs-rst: Document m2m stateless video decoder interface

Hans Verkuil (4):
      vb2: add V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF
      v4l2-mem2mem: support held capture buffers
      videodev2.h: add V4L2_DEC_CMD_FLUSH
      v4l2-mem2mem: add new_frame detection

Jernej Skrabec (2):
      media: v4l2-mem2mem: add stateless_(try_)decoder_cmd ioctl helpers
      media: cedrus: h264: Support multiple slices per frame

 Documentation/media/uapi/v4l/buffer.rst                |  13 ++
 Documentation/media/uapi/v4l/dev-mem2mem.rst           |   1 +
 Documentation/media/uapi/v4l/dev-stateless-decoder.rst | 424 +++++++++++++++++++++++++++++++++++++++++++++
 Documentation/media/uapi/v4l/vidioc-decoder-cmd.rst    |  10 +-
 Documentation/media/uapi/v4l/vidioc-reqbufs.rst        |   6 +
 Documentation/media/videodev2.h.rst.exceptions         |   1 +
 drivers/media/common/videobuf2/videobuf2-v4l2.c        |  12 +-
 drivers/media/v4l2-core/v4l2-mem2mem.c                 | 190 ++++++++++++++++----
 drivers/staging/media/sunxi/cedrus/cedrus_h264.c       |  12 +-
 drivers/staging/media/sunxi/cedrus/cedrus_hw.c         |  16 +-
 drivers/staging/media/sunxi/cedrus/cedrus_video.c      |  14 ++
 include/media/v4l2-mem2mem.h                           |  44 ++++-
 include/media/videobuf2-core.h                         |   3 +
 include/media/videobuf2-v4l2.h                         |   5 +
 include/uapi/linux/videodev2.h                         |  14 +-
 15 files changed, 707 insertions(+), 58 deletions(-)
 create mode 100644 Documentation/media/uapi/v4l/dev-stateless-decoder.rst

Comments

Jenkins Oct. 16, 2019, 12:04 p.m. UTC | #1
From: builder@linuxtv.org

Pull request: https://patchwork.linuxtv.org/patch/59500/
Build log: https://builder.linuxtv.org/job/patchwork/20670/
Build time: 00:14:23
Link: https://lore.kernel.org/linux-media/02bfac01-d6ba-1eca-efc6-1dbfcc712dc0@xs4all.nl

gpg: Signature made Wed 16 Oct 2019 11:31:23 AM UTC
gpg:                using RSA key AAA7FFBA4D2D77EF4CAEA1421326E0CD23ABDCE5
gpg: Good signature from "Hans Verkuil <hverkuil-cisco@xs4all.nl>" [unknown]
gpg:                 aka "Hans Verkuil <hverkuil@xs4all.nl>" [full]

Summary: 4 patches and/or PDF generation with issues, being 0 at build time

Error/warnings:


Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0001-vb2-add-V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0001-vb2-add-V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF.patch
patches/0001-vb2-add-V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF.patch:10: WARNING: Possible unwrapped commit description (prefer a maximum 75 chars per line)
patches/0001-vb2-add-V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF.patch:100: WARNING: line over 80 characters
patches/0001-vb2-add-V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF.patch:156: CHECK: Prefer using the BIT macro

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0002-v4l2-mem2mem-support-held-capture-buffers.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0002-v4l2-mem2mem-support-held-capture-buffers.patch
patches/0002-v4l2-mem2mem-support-held-capture-buffers.patch:68: WARNING: line over 80 characters

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0006-media-cedrus-h264-Support-multiple-slices-per-frame.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0006-media-cedrus-h264-Support-multiple-slices-per-frame.patch
patches/0006-media-cedrus-h264-Support-multiple-slices-per-frame.patch:131: WARNING: line over 80 characters

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0007-media-docs-rst-Document-m2m-stateless-video-decoder-.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0007-media-docs-rst-Document-m2m-stateless-video-decoder-.patch
patches/0007-media-docs-rst-Document-m2m-stateless-video-decoder-.patch:31: WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?