24.08.2021, 13:57
(24.08.2021, 05:06)Selur Wrote:Quote:I just noticed your PM. First bug I see is that it forces you to drop one field.That's how the deinterlacer works.
Either:
a. you use 'bob' and one frame per frame is returned
or
b. you use 'adaptive' and then by default, if the frame is marked as interlaced in the input, the first-field get's dropped or by setting '-drop_second_field' you drop the second field. If the field is marked progressive in the input it not deinterlaced.
That's quite not true. The CUVID adaptive is not the same thing as NVEnc adaptive.
NVEncC adaptive works by outputting one frame for 2 fields.
CUVID adaptive works by outputting one frame for 1 field.
Please test this behavior for yourself with any interlaced video. The videos I sent here clearly show how CUVID adaptive works.
(21.08.2021, 21:41)antoniu200 Wrote: Original - interlaced
CUVID Adaptive Deinterlaced
It says here:
Quote:adaptive 2 .D.V....... Adaptive deinterlacing
Note how it doesn't say
Quote:Like it did here: https://github.com/rigaya/NVEnc/blob/mas...ace-string
- normal ... standard 60i → 30p interleave cancellation.
- adaptive ... same as normal
I managed to break it: I saved the config for an mpeg2 input file, loaded an h264 input file and clicked on "Add to queue and start queue". It started the job using the wrong decoder (mpeg2_cuvid for h264 file).
The suggested fix: don't save the decoder used for the deinterlacer, but just the deinterlacer. Let the program always choose the deinterlacer.
One more thing to keep in mind: for mpeg2_cuvid, it is required that the final expected framerate be specified through FFmpeg, by using the option "-r <output_framerate>", basically overriding the input framerate. In my cases, I would need to add "-r 50", right before mpeg2_cuvid. I would advise using this option for all cuvid decoders, because testing each of them whether or not they require it is very time consuming.