[FFmpeg-devel] [RFC PATCH 0/2] fftools/ffplay: Add hardware decoding and rendering support
Zhao Zhili
quinkblack at foxmail.com
Sun Oct 15 16:05:13 EEST 2023
From: Zhao Zhili <zhilizhao at tencent.com>
Since we have hwaccel vulkan and vulkan decoders, now it's possible to
add a renderer to ffplay to interoperate with multiple hardware decoders.
This is a good opportinuity to add hardware decoding support to ffplay.
I'm not meant to reinvent the wheel and duplicate the work of mpv or VLC,
but enhance a simple test tool.
The following patches
1. With minimum effort to add hardware decoding and rendering support.
2. Do render with libplacebo.
3. Works with cuda/nvdec, vaapi and vulkan decoder without CPU copy.
I have tested cuda and vulkan decoders. I don't have devices with vaapi, it
should work I guess. For example,
ffplay -hwaccel cuda -enable_vulkan 8k.mp4
4. It can fallback to CPU copy but with less values.
Known issues:
1. Doesn't take filters into consideration yet.
2. Doesn't suppport subtitles without subtitle filter.
Zhao Zhili (2):
fftools/ffplay: add vulkan renderer via libplacebo
fftools/ffplay: add hwaccel decoding support
configure | 2 +-
fftools/Makefile | 2 +
fftools/ffplay.c | 75 +++++++-
fftools/ffplay_renderer.c | 364 ++++++++++++++++++++++++++++++++++++++
fftools/ffplay_renderer.h | 36 ++++
5 files changed, 473 insertions(+), 6 deletions(-)
create mode 100644 fftools/ffplay_renderer.c
create mode 100644 fftools/ffplay_renderer.h
--
2.34.1
More information about the ffmpeg-devel
mailing list