Frage von Digicam:Hallo zusammen,
ich versuche eine mit einem alten Windows Movie Maker importierte MiniDV-Quelle (38GB) in eine kleinere DVD-taugliche MP4 (4,5GB) Datei umzuwandeln.
Das soll zum Einen durch den Schnitt nicht benötigten Materials geschehen, als auch durch Kompression mittels CRF.
Mit diesem Befehl komme ich immerhin auf 4,78GB. Das heißt, ich reduziere CRF noch um 1 und es sollte auf eine DVD passen.
ffmpeg.exe -ss 00:00:00 -t 02:17:39 -i "C:\Users\Me\Videos\Abi-Ball 2001.avi" -vf yadif -vcodec libx264 -force_key_frames expr:gte(t,n_forced*1) -crf 18 -tune film -acodec aac -ac 2 -ar 32000 -ab 320k "C:\Users\Me\Videos\VHS Abi-Ball 2001.mp4"
Leider entsteht durch die Konvertierung ein recht starkes Bildrauschen insbesondere in dunklen Bereichen. (siehe Anhang)
Das Spielen mit dem CRF-Wert und die Nutzung des tune-Parameters haben kaum Auswirkungen.
Woran kann es liegen bzw. wie sollte ich hier besser vorgehen? Auflösungsverlust wäre weniger mein Problem, als das störende Rauschen.
Vielen Dank
DigiCam
Vorher.pngNachher.png
Antwort von mash_gh4:
Digicam hat geschrieben:
ffmpeg.exe -ss 00:00:00 -t 02:17:39 -i "C:\Users\Me\Videos\Abi-Ball 2001.avi" -vf yadif -vcodec libx264 -force_key_frames expr:gte(t,n_forced*1) -crf 18 -tune film -acodec aac -ac 2 -ar 32000 -ab 320k "C:\Users\Me\Videos\VHS Abi-Ball 2001.mp4"
Leider entsteht durch die Konvertierung ein recht starkes Bildrauschen insbesondere in dunklen Bereichen. (siehe Anhang)
Das Spielen mit dem CRF-Wert und die Nutzung des tune-Parameters haben kaum Auswirkungen.
eigentlich schaun mir deine einstellungen schon ganz gut aus!
'-preset veryslow' wäre evtl. eine sinnvolle zusätzliche einstellung, um die qualität positiv zu beeinflussen.
längere GOP-segmente ermöglichen auch eine effizientere komprimierung.
der crf-parameter ist definitiv nicht ohne wirkung, sondern heute meist das zentrale stellglied bei der optimierung der ausgabgequalität bei variabler bandbreitennutzung. wenn du ihn auf 0 setzt, gibt es tatsächlich keine unterschiede mehr zw. dem ausgangsmaterial und der verabeiteten version -- allerdings lässt sich derartiges mathematisch verlustfreies h264 material kaum irgendwo abspielen bzw. praktisch nutzen, und der bandbreitenbedarf ist u.u. sogar höher als im ausgangsclip.
was evtl. sinn machen könnte, ist ein noch niedriger crf wert -- wobei 18 in diesem anwendungskontext eh schon ungewöhnlich stark wirkt -- begrenzt durch eine zusätzliche maximale bandbreitenvorgabe. das kann in den bereichen, wo noch nutzbare reserven zur verfügung stehen, eine bessere qualität bewirken, ohne dass dort, wo du vermutlich jetzt schon die übertragungskapazitäten der DVD bzw. die vorgegebene techn. standards überschreitest, zu inkompatibilitäten kommt. in dem sinn kann man bei DVDs allerdings auch gleich mit einer konstanten zielbandbreite od. dual pass optimierung statt der crf-anpassung arbeiten.
ich glaube, dass die qualitativen probleme, die du beschreibst, mehr mit der problematischen ausgangsqualität des materials zu tun haben. verrauschtes material lässt sich leider nur sehr schlecht komprimieren, während man mit hochwertigem ausgangsmaterial auch bei extremen kompressionsraten oft noch immer eine visuell befriedigendes resultat erhält.
evt. könntest du in den videofiltern vor der eigentlichen kompression in diesem sinne auch noch denoising od. farbaufbereitungsfilter nutzen, die das ganze besser komprimierbar machen.
wunder würde ich mir leider aber auch davon nicht erwarten.
Antwort von Jott:
Falls du von Video-DVD redest, die auf DVD-Playern laufen soll: das hat nichts mit mp4 zu tun. Die 30 Jahre alte DVD braucht MPEG 2, und die spezielle Ordnerstruktur muss ein Authoringprogramm erzeugen (zum Beispiel Adobe Encode).
38 GB DV wären etwa 3 Stunden. Das kriegst du gerade noch so mit Ach und Krach auf einer Dual-Layer-DVD unter, wenn es - wie gesagt - eine kompatible Video-DVD werden soll.
Antwort von Digicam:
@mash_gh4: Vielen Dank für die schnelle Rückmeldung. Das Denoising habe ich bisher noch nicht gemacht. Kannst Du mir basierend auf dem Material in den Screenshots sagen, wie ein solcher Befehl aussehen könnte? So stark verrauscht finde ich das Ausgangsmaterial nämlich gar nicht und hätte deswegen nicht an denoising gedacht... :-)
@Jott: Die DVD soll vor allem auf einem PC oder einem modernen Bluray-Player abgespielt werden. Eine Bluray-Disk ist mir nur gerade nicht zur Hand. :)
Für den Bluray-Player brauche ich aber kein Authoring, oder?
Antwort von mash_gh4:
Jott hat geschrieben:
Falls du von Video-DVD redest, die auf DVD-Playern laufen soll: das hat nichts mit mp4 zu tun. Die 30 Jahre alte DVD braucht MPEG 2, und die spezielle Ordnerstruktur muss ein Authoringprogramm erzeugen (zum Beispiel Adobe Encode).
stimmt! -- da hab ich mich jetzt auch zu einem denkfehler hinreißen lassen bzw. möglichkeiten beschriben, die gröstenteils erst bei moderenern datenträgern genutzt werden können.
wenn man derartiges h.264 in einem dvd-authoring-programm importiert, wird es gewöhnlich im hintergrund nocheinmal transcodiert bzw. endgültig verunstaltet, wo man dann auch keine vernünftigen eingriffsmöglichkeiten mehr hat.
wenn man das vermeiden will, benutzt man im ffmpeg am besten gleich '-target dvd', damit das material ohne nennenswerte umwandlung für diesen zweck weiterbenutzt werden kann.
Antwort von Jott:
Authoring: wenn‘s eine richtige Blu-ray sein soll, sehr wohl, wie bei DVD auch.
Du willst aber wohl nur irgend eine Datei auf eine Scheibe brennen. Als reiner Datenträger, ohne Funktionalität und ohne Abspielmöglichkeit (außer Glückstreffer). Wozu? Musst du selber wissen.
Antwort von mash_gh4:
Digicam hat geschrieben:
@mash_gh4: Vielen Dank für die schnelle Rückmeldung. Das Denoising habe ich bisher noch nicht gemacht. Kannst Du mir basierend auf dem Material in den Screenshots sagen, wie ein solcher Befehl aussehen könnte? So stark verrauscht finde ich das Ausgangsmaterial nämlich gar nicht und hätte deswegen nicht an denoising gedacht... :-)
das ist eine schwierige frage, weil die denoiser im ffmpeg eher einfach gehalten sind und nicht mehr ganz dem stand der technik entsprechen. am naheliegendsten und realtiv einfach zu bedienen ist aber vermutlich das 'hqdn3d'-filter.