(20.08.2021, 20:53)Selur Wrote: Okay, correction "-deint" isn't yadif_cuda, it's an option of 'h264_cuvid' which I'm not supporting since was replaced with h264_nvenc.
On Linux h264_nvenc is supported (but there is no deint option).
Umm, it was not replaced. Only the encoder was replaced. The decoder wasn't and uses the latest deinerlacing method from the drivers. This is why I use it.
The encoder was fully removed from FFmpeg, if h264_cuvid ever was an encoder to begin with.
(20.08.2021, 20:53)Selur Wrote: If you want decent deinterlacing use QTGMC, YadifMod or similar.
If you need that deinterlacer don't use Hybrid.
Fair enough.
QTGMC makes some videos flicker, while h264_cuvid doesn't.
QTGMC is far slower than h264_cuvid (30 FPS compared to 220)
YadifMod still keeps many combing artifacts, while h264_cuvid doesn't.
I rewrote the command in the initial post:
ffmpeg -c:v h264_cuvid -deint 2 -i <input_video> -c:v libx264 -profile:v high -preset veryfast -crf 18 -x264opts "keyint=500" -c:a copy <output_video.mkv>
The command initially sets the decoder used for the input video and sets the deinterlacing mode to "2", which means "adaptive". Then, the command follows a normal path, setting and configuring libx264 as an encoder.
In case you do want to add another deinterlacing method by enabling the use of h264_cuvid and h265_cuvid as decoders, you have the info needed here.
As I mentioned above, h264_cuvid and h265_cuvid areĀ
not encoders, if this changes your mind.
EDIT: I just noticed there are resizing and cropping options. I have to test them and see whether or not they are more efficient than the usual CPU methods.