[FFmpeg-devel] [PATCH 0/3] CUDA implementation of yadif filter v2
Philip Langdale
philipl at overt.org
Fri Nov 2 05:08:36 EET 2018
This patch series adds a CUDA implementation of yadif so that we have
a deinterlacing option when doing full GPU transcode or playback with
nvdec and/or nvenc. The nvidia deinterlacer cannot be used with the
nvdec decoder because an hwaccel cannot return more than one frame
per input packet. (It does work with the cuviddec decoder which is
a full decoder, but uses nvidia's parsers which tend to be more
limited than the ffmpeg ones).
This update includes minor changes to reflect feedback. I will bump
the minor version when I push.
Philip Langdale (3):
libavfilter/vf_yadif: Make frame management logic and options
shareable
avfilter/vf_yadif_cuda: CUDA accelerated deinterlacer
avcodec/nvdec: Increase frame pool size to help deinterlacing
Changelog | 1 +
configure | 1 +
doc/filters.texi | 58 +++++
libavcodec/nvdec.c | 6 +-
libavfilter/Makefile | 3 +-
libavfilter/allfilters.c | 1 +
libavfilter/vf_yadif.c | 196 +---------------
libavfilter/vf_yadif_cuda.c | 426 +++++++++++++++++++++++++++++++++++
libavfilter/vf_yadif_cuda.cu | 296 ++++++++++++++++++++++++
libavfilter/yadif.h | 9 +
libavfilter/yadif_common.c | 209 +++++++++++++++++
11 files changed, 1017 insertions(+), 189 deletions(-)
create mode 100644 libavfilter/vf_yadif_cuda.c
create mode 100644 libavfilter/vf_yadif_cuda.cu
create mode 100644 libavfilter/yadif_common.c
--
2.19.1
More information about the ffmpeg-devel
mailing list