[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230123133113.3254659-1-christianshewitt@gmail.com>
Date: Mon, 23 Jan 2023 13:31:11 +0000
From: Christian Hewitt <christianshewitt@...il.com>
To: Neil Armstrong <neil.armstrong@...aro.org>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Kevin Hilman <khilman@...libre.com>,
Jerome Brunet <jbrunet@...libre.com>,
Martin Blumenstingl <martin.blumenstingl@...glemail.com>,
linux-media@...r.kernel.org, linux-amlogic@...ts.infradead.org,
linux-staging@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Cc: Christian Hewitt <christianshewitt@...il.com>
Subject: [PATCH 0/2] media: meson: vdec: add HEVC decode codec
This mini-series adds support for HEVC decoding. It combines the original codec
work done by Maxime Jourdan in 2019 [0] and improvements by Benjamin Roszak in
2021 [1]. Only GXBB/GXL/GXM are enabled as decoding currently crashes on G12A
and later SoCs when trying to decode a 10-bit HEVC stream.
The goal of upstreaming the driver in its current state is to encourage greater
community contribution towards adding missing features, and fixing the bugs and
conformance issues necessary to get out of staging.
The HEVC codec presented here is generally partnered with FFMpeg sources that
are being maintained by the Raspberry Pi Foundation [2] and [3] that contain
numerous improvements to v4l2_m2m (and v4l2_request) support. There is active
work in progress to refine the changeset and send it upstream.
Christian
[0] https://github.com/Elyotna/linux/commits/4.20/v4l2-m2m-pr
[1] https://gitlab.com/benjamin545/linux-amlogic/-/commits/aml-hevc
[2] https://github.com/jc-kynesim/rpi-ffmpeg/commits/release/4.4/rpi_import_1
[3] https://github.com/jc-kynesim/rpi-ffmpeg/tree/dev/5.1.2/rpi_import_1
Benjamin Roszak (1):
media: meson: vdec: implement 10bit bitstream handling
Maxime Jourdan (1):
media: meson: vdec: add HEVC decode codec
drivers/staging/media/meson/vdec/Makefile | 2 +-
drivers/staging/media/meson/vdec/codec_h264.c | 3 +-
drivers/staging/media/meson/vdec/codec_hevc.c | 1463 +++++++++++++++++
drivers/staging/media/meson/vdec/codec_hevc.h | 13 +
.../media/meson/vdec/codec_hevc_common.c | 161 +-
.../media/meson/vdec/codec_hevc_common.h | 3 +-
drivers/staging/media/meson/vdec/codec_vp9.c | 35 +-
drivers/staging/media/meson/vdec/esparser.c | 4 +-
drivers/staging/media/meson/vdec/hevc_regs.h | 1 +
drivers/staging/media/meson/vdec/vdec.h | 1 +
.../staging/media/meson/vdec/vdec_helpers.c | 44 +-
.../staging/media/meson/vdec/vdec_helpers.h | 10 +-
.../staging/media/meson/vdec/vdec_platform.c | 37 +
13 files changed, 1678 insertions(+), 99 deletions(-)
create mode 100644 drivers/staging/media/meson/vdec/codec_hevc.c
create mode 100644 drivers/staging/media/meson/vdec/codec_hevc.h
--
2.34.1
Powered by blists - more mailing lists