[FFmpeg-user] yadif-cuda issues

Dennis Mungai dmngaie at gmail.com
Tue Apr 21 00:43:07 EEST 2020


On Tue, 21 Apr 2020 at 00:31, Andy Sheimo <asheimo at gmail.com> wrote:

> I'm trying to use the yadif_cuda deinterlace but I have not been able to
> get it to work. Every option I.ve tried fails, I'm pretty sure I'm getting
> something wrong so I'm looking for some advice.
>
> Here is my version:
> ffmpeg version git-2020-04-17-889ad93 Copyright (c) 2000-2020 the FFmpeg
> developers
> built with gcc 9.3.1 (GCC) 20200328
> configuration: --enable-gpl --enable-version3 --enable-sdl2
> --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass
> --enable-libdav1d --enable-libbluray --enable-libfreetype
> --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb
> --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy
> --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame
> --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264
> --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma
> --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf
> --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa
> --enable-libspeex --enable-libxvid --enable-libaom --disable-w32threads
> --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid
> --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2
> --enable-avisynth --enable-libopenmpt --enable-amf
> libavutil      56. 42.102 / 56. 42.102
> libavcodec     58. 80.100 / 58. 80.100
> libavformat    58. 42.100 / 58. 42.100
> libavdevice    58.  9.103 / 58.  9.103
> libavfilter     7. 77.101 /  7. 77.101
> libswscale      5.  6.101 /  5.  6.101
> libswresample   3.  6.100 /  3.  6.100
> libpostproc    55.  6.100 / 55.  6.100
>
> here are the commands I am using:
> ffmpeg -loglevel debug -stats -hwaccel nvdec -hwaccel_output_format cuda -i
> "L:\Sheimo_Originals\Star Trek Into Darkness\Star Trek Into Darkness -
> 1080p.mkv" -map 0:0 -vf yadif_cuda=0:-1:1 -c:v h264_nvenc -map 0:1 -c:a:0
> eac3 -b:a:0 640k -metadata:s:a:0 title= -disposition:a:0 default -sn
> -metadata:g title= "Star Trek Into Darkness - 1080p.mkv"
>
> or
> ffmpeg -loglevel debug -stats -hwaccel nvdec -hwaccel_output_format cuda -i
> "L:\Sheimo_Originals\Star Trek Into Darkness\Star Trek Into Darkness -
> 1080p.mkv" -map 0:0 -vf yadif_cuda=deint=interlaced -c:v h264_nvenc -map
> 0:1 -c:a:0 eac3 -b:a:0 640k -metadata:s:a:0 title= -disposition:a:0 default
> -sn -metadata:g title= "Star Trek Into Darkness - 1080p.mkv"
>
> or
> ffmpeg -loglevel debug -stats -hwaccel nvdec -hwaccel_output_format cuda -i
> "L:\Sheimo_Originals\Star Trek Into Darkness\Star Trek Into Darkness -
> 1080p.mkv" -map 0:0 -filter:v yadif_cuda=deint=interlaced -c:v h264_nvenc
> -b:v 2000k -maxrate:v 6000k -rc:v vbr_hq -profile:v high -color_primaries:v
> smpte170m -color_trc:v bt709 -colorspace:v smpte170m -metadata:s:v title=
> -disposition:v default -map 0:1 -c:a:0 eac3 -b:a:0 640k -metadata:s:a:0
> title= -disposition:a:0 default -sn -metadata:g title= "Star Trek Into
> Darkness - 1080p.mkv"
>
> The most common error I receive is:
> [Parsed_yadif_cuda_0 @ 0000020bd180a2c0]
> cu->cuModuleLoadData(&s->cu_module, vf_yadif_cuda_ptx) failed ->
> CUDA_ERROR_INVALID_IMAGE: device kernel image is invalid
> [Parsed_yadif_cuda_0 @ 0000020bd180a2c0] Failed to configure output pad on
> Parsed_yadif_cuda_0
> Error reinitializing filters!
> Failed to inject frame into filter network: Generic error in an external
> library
> Error while processing the decoded data for stream #0:0
>
> full log attached as output.txt
>
> The other common error is:
> [auto_scaler_0 @ 0000020daa1ac880] Setting 'flags' to value 'bicubic'
> [auto_scaler_0 @ 0000020daa1ac880] w:iw h:ih flags:'bicubic' interl:0
> [Parsed_yadif_cuda_0 @ 0000020da98bedc0] auto-inserting filter
> 'auto_scaler_0' between the filter 'graph 0 input from stream 0:0' and the
> filter 'Parsed_yadif_cuda_0'
> Impossible to convert between the formats supported by the filter 'graph 0
> input from stream 0:0' and the filter 'auto_scaler_0'
> Error reinitializing filters!
> Failed to inject frame into filter network: Function not implemented
> Error while processing the decoded data for stream #0:0
>
> full log attached as output2.txt.
>
> The second error I am pretty sure has to do with me calling some software
> filter in a full hardware pipeline but I am unsure what it is. I also heard
> rumor of auto_scale being inserted when it doesn't need to be but I will
> let the experts tell me if they see that.
>
> My goal is to be able to use yadif_cuda so that I can keep a complete gpu
> pipeline. Any and all help is appreciated. Thanks
>
>
Hello there,

1. Which GPU do you have? Confirm the GPU and the driver version by running
nvidia-smi.
2. How did you build ffmpeg? Did you fetch a static build from Zeranoe?
I've seen a similar issue here on the "CUDA_ERROR_INVALID_IMAGE: device
kernel image is invalid error" posted on this mailing list related to
Zeranoe's builds.

If that's the case, please confirm. If you built FFmpeg from source,
describe how the binary was built. For example, if you used a build helper
such as https://github.com/rdp/ffmpeg-windows-build-helpers.

Warm regards,

Dennis.


More information about the ffmpeg-user mailing list