Hallo,
ich habe hier knapp 20 Jahre altes MiniDV-Videomaterial, das ich deinterlacen will.
ffpmeg kann das mit verschiedenen Filtern. Der einfachste und schnellste sei yadif etwas besser sei bwdif. Beide finde ich deutlich zu schlecht. Sie erzeugen deutliche Artefakte im Bild, das sieht fast nach MPEG aus, damit bin ich nicht zufrieden.
Ich habe nach einiger Recherche einen Tipp auf nnedi gefunden.
https://codetinkering.com/how-to-use-nnedi3-to-de-interlace-video-in-ffmpeg/
https://github.com/dubhater/vapoursynth-nnedi3/blob/master/src/nnedi3_weights.bin
Also lade ich mir nach Anleitung das binary herunter:
wget https://github.com/dubhater/vapoursynth-nnedi3/blob/master/src/nnedi3_weights.bin
Damit sieht mein source-dir so aus:
$ ll total 266400 drwxrwxrwx 2 marc marc 100 Mar 3 14:27 ./ drwxrwxrwt 36 root root 1780 Mar 3 14:25 ../ -rwxrwxr-x 1 marc marc 168 Mar 3 14:26 do.sh* -rwxrwxrwx 1 marc marc 145098 Mar 3 14:24 nnedi3_weights.bin* -rwxrwxrwx 1 marc marc 272638682 Mar 3 12:58 source-video.avi*
Die ffmpeg-Zeile sieht nach dieser Anleitung so aus
$ cat do.sh #!/bin/bash rm output-video.mkv ffmpeg -i "source-video.avi" -map 0:0 -map 0:1 -vf "nnedi=weights=nnedi3_weights.bin" -c:v libx264 -preset slow -crf 19 -c:a aac -b:a 256k "output-video.mkv"
In der Ausführung erhalte ich nun folgende Fehlermeldung:
[Parsed_nnedi_0 @ 0x560958261b40] Unexpected weights file size. [AVFilterGraph @ 0x56095825a500] Error initializing filter 'nnedi' with args 'weights=nnedi3_weights.bin' Error reinitializing filters! Failed to inject frame into filter network: Invalid argument Error while processing the decoded data for stream #0:0 Conversion failed!
Ich habe nun versucht, den Pfad zum .bin relativ/absolut anzugeben. Das hier funktioniert alles nicht:
ffmpeg -i "source-video.avi" -map 0:0 -map 0:1 -vf "nnedi=weights=./nnedi3_weights.bin" -c:v libx264 -preset slow -crf 19 -c:a aac -b:a 256k "output-video.mkv"
ffmpeg -i "source-video.avi" -map 0:0 -map 0:1 -vf "nnedi=weights=/home/marc/nnedi-demo/nnedi3_weights.bin" -c:v libx264 -preset slow -crf 19 -c:a aac -b:a 256k "output-video.mkv"
Irgendwie steh ich auf dem Schlauch. Wer hat noch eine Idee?
Danke und Gruß
BillMaier