Message ID | 20231004103720.3540436-1-hugues.fruchet@foss.st.com (mailing list archive) |
---|---|
Headers | show |
Series | VP8 H1 stateless encoding | expand |
On Wed, Oct 04, 2023 at 12:37:14PM +0200, Hugues Fruchet wrote: > Hi all, > > Here is an RFC to support VP8 encoding using Hantro H1 hardware > of STM32MP25 SoCs (Verisilicon VC8000NanoE IP). > This work is derived from work done to support Rockchip RK3399 > VPU2 in RFC [1] with a reshuffling of registers to match H1 > register set. > > This has been tested on STM32MP257F-EV1 evaluation board using > GStreamer userspace [2]: > gst-launch-1.0 videotestsrc num-buffers=500 ! video/x-raw,width=640,height=480 \ > ! v4l2slvp8enc ! queue ! matroskamux ! filesink location=test_vp8.mkv > > For the sake of simplicity I have embedded here the RFC [1] before the > changes related to this exact RFC, all rebased on v6.6 + STM32MP25 > hardware codecs support [3]. I don't see any bindings etc here, what is it that you think I would care about looking at in this RFC series? Thanks, Conor. > > [1] https://lwn.net/ml/linux-media/20230309125651.23911-1-andrzej.p@collabora.com/ > [2] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3736 > [3] https://patchwork.kernel.org/project/linux-media/list/?series=789861 > > Best regards, > Hugues. > > > Andrzej Pietrasiewicz (2): > media: uapi: Add VP8 stateless encoder controls > media: hantro: add VP8 encode support for Rockchip RK3399 VPU2 > > Hugues Fruchet (4): > media: hantro: add h1 vp8 encode support > media: hantro: add VP8 encode support for STM32MP25 VENC > media: hantro: h1: NV12 single-plane support > media: hantro: add NV12 single-plane support for STM32MP25 VENC > > drivers/media/platform/verisilicon/Makefile | 3 + > drivers/media/platform/verisilicon/hantro.h | 10 + > .../platform/verisilicon/hantro_boolenc.c | 69 + > .../platform/verisilicon/hantro_boolenc.h | 21 + > .../media/platform/verisilicon/hantro_drv.c | 15 +- > .../platform/verisilicon/hantro_h1_jpeg_enc.c | 42 +- > .../platform/verisilicon/hantro_h1_regs.h | 71 +- > .../platform/verisilicon/hantro_h1_vp8_enc.c | 1589 +++++++++++++++++ > .../media/platform/verisilicon/hantro_hw.h | 93 + > .../media/platform/verisilicon/hantro_v4l2.c | 5 +- > .../media/platform/verisilicon/hantro_vp8.c | 118 ++ > .../verisilicon/rockchip_vpu2_hw_vp8_enc.c | 1574 ++++++++++++++++ > .../platform/verisilicon/rockchip_vpu2_regs.h | 1 + > .../platform/verisilicon/rockchip_vpu_hw.c | 23 +- > .../platform/verisilicon/stm32mp25_venc_hw.c | 35 +- > drivers/media/v4l2-core/v4l2-ctrls-core.c | 13 + > drivers/media/v4l2-core/v4l2-ctrls-defs.c | 5 + > include/media/v4l2-ctrls.h | 2 + > include/uapi/linux/v4l2-controls.h | 91 + > include/uapi/linux/videodev2.h | 3 + > 20 files changed, 3755 insertions(+), 28 deletions(-) > create mode 100644 drivers/media/platform/verisilicon/hantro_boolenc.c > create mode 100644 drivers/media/platform/verisilicon/hantro_boolenc.h > create mode 100644 drivers/media/platform/verisilicon/hantro_h1_vp8_enc.c > create mode 100644 drivers/media/platform/verisilicon/rockchip_vpu2_hw_vp8_enc.c > > -- > 2.25.1 >
Hi Conor, My fault, mistake on "to" when sending mail, please ignore this serie there are no bindings/DT in it. Sorry for disturbance. Best regards, Hugues. On 10/5/23 12:59, Conor Dooley wrote: > On Wed, Oct 04, 2023 at 12:37:14PM +0200, Hugues Fruchet wrote: >> Hi all, >> >> Here is an RFC to support VP8 encoding using Hantro H1 hardware >> of STM32MP25 SoCs (Verisilicon VC8000NanoE IP). >> This work is derived from work done to support Rockchip RK3399 >> VPU2 in RFC [1] with a reshuffling of registers to match H1 >> register set. >> >> This has been tested on STM32MP257F-EV1 evaluation board using >> GStreamer userspace [2]: >> gst-launch-1.0 videotestsrc num-buffers=500 ! video/x-raw,width=640,height=480 \ >> ! v4l2slvp8enc ! queue ! matroskamux ! filesink location=test_vp8.mkv >> >> For the sake of simplicity I have embedded here the RFC [1] before the >> changes related to this exact RFC, all rebased on v6.6 + STM32MP25 >> hardware codecs support [3]. > > I don't see any bindings etc here, what is it that you think I would > care about looking at in this RFC series? > > Thanks, > Conor. > >> >> [1] https://lwn.net/ml/linux-media/20230309125651.23911-1-andrzej.p@collabora.com/ >> [2] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3736 >> [3] https://patchwork.kernel.org/project/linux-media/list/?series=789861 >> >> Best regards, >> Hugues. >> >> >> Andrzej Pietrasiewicz (2): >> media: uapi: Add VP8 stateless encoder controls >> media: hantro: add VP8 encode support for Rockchip RK3399 VPU2 >> >> Hugues Fruchet (4): >> media: hantro: add h1 vp8 encode support >> media: hantro: add VP8 encode support for STM32MP25 VENC >> media: hantro: h1: NV12 single-plane support >> media: hantro: add NV12 single-plane support for STM32MP25 VENC >> >> drivers/media/platform/verisilicon/Makefile | 3 + >> drivers/media/platform/verisilicon/hantro.h | 10 + >> .../platform/verisilicon/hantro_boolenc.c | 69 + >> .../platform/verisilicon/hantro_boolenc.h | 21 + >> .../media/platform/verisilicon/hantro_drv.c | 15 +- >> .../platform/verisilicon/hantro_h1_jpeg_enc.c | 42 +- >> .../platform/verisilicon/hantro_h1_regs.h | 71 +- >> .../platform/verisilicon/hantro_h1_vp8_enc.c | 1589 +++++++++++++++++ >> .../media/platform/verisilicon/hantro_hw.h | 93 + >> .../media/platform/verisilicon/hantro_v4l2.c | 5 +- >> .../media/platform/verisilicon/hantro_vp8.c | 118 ++ >> .../verisilicon/rockchip_vpu2_hw_vp8_enc.c | 1574 ++++++++++++++++ >> .../platform/verisilicon/rockchip_vpu2_regs.h | 1 + >> .../platform/verisilicon/rockchip_vpu_hw.c | 23 +- >> .../platform/verisilicon/stm32mp25_venc_hw.c | 35 +- >> drivers/media/v4l2-core/v4l2-ctrls-core.c | 13 + >> drivers/media/v4l2-core/v4l2-ctrls-defs.c | 5 + >> include/media/v4l2-ctrls.h | 2 + >> include/uapi/linux/v4l2-controls.h | 91 + >> include/uapi/linux/videodev2.h | 3 + >> 20 files changed, 3755 insertions(+), 28 deletions(-) >> create mode 100644 drivers/media/platform/verisilicon/hantro_boolenc.c >> create mode 100644 drivers/media/platform/verisilicon/hantro_boolenc.h >> create mode 100644 drivers/media/platform/verisilicon/hantro_h1_vp8_enc.c >> create mode 100644 drivers/media/platform/verisilicon/rockchip_vpu2_hw_vp8_enc.c >> >> -- >> 2.25.1 >>