Ich habe eine WMV-Datei (Version 9 (WMV3), 960 x 720, 30.000030 fps, planares 4: 2: 0 YUV, erstellt von PowerPoint 2010) und muss sie in MPEG2 konvertieren - das einzige Format, das mein Fernseher von einem USB-Flash-Laufwerk lesen kann (Ich habe auch versucht, MP4 / h.264, AVI / XVID - nichts als MPEG2 funktioniert).
Ich habe es geschafft, den Job mit einfach zu machen
ffmpeg -i "in.wmv" -c:v mpeg2video "out.mpg"
Die Qualität des Ergebnisses ist jedoch furchtbar (es treten deutlich sichtbare visuelle Verzerrungen auf) und die Wiedergabe ist nicht flüssig (manchmal zu langsam).
Ich habe es auch versucht
ffmpeg -i "in.wmv" -c:v mpeg2video -pix_fmt yuv420p -me_method epzs -threads 4 -r 30.000030 -g 45 -bf 2 -trellis 2 -cmp 2 -subcmp 2 -s 960x720 -b 2500k -bt 300k -async 1 -y "out.mpg"
(Ich habe dies irgendwo im Internet gefunden und ein wenig modifiziert - die Auflösung, die Bildwiederholfrequenz und das Ausgabeformat (von VOB auf nacktes MPG) wurden erfolgreich geändert, aber die Qualität ist immer noch zu schlecht.
Welche Parameter muss ich verwenden, um so viel Qualität wie möglich zu sparen? Die Komprimierungsrate spielt keine Rolle, auch eine Vergrößerung der Datei ist akzeptabel.
Eine andere Sache, die ich wirklich brauche (ich habe mich entschieden, sie nicht in den Fragentitel aufzunehmen, um zu vermeiden, dass sie zu spezifisch wird, aber ich würde es begrüßen, wenn sie in den Antworten berücksichtigt wird), ist das Hinzufügen von purer Stille als Tonspur - es ist kein Ton in der Original aber der Fernseher beschwert sich darüber und ich möchte diese Beschwerde loswerden. Ich habe mit Audacity eine OGG Vorbis-Datei mit derselben Länge (sekundengenau) erstellt, kann sie jedoch nicht mit dem Video zusammenführen:
ffmpeg -i in.mpg -i silence.ogg -c:v copy -c:a libmp3lame out.mpg
und sogar nackt
ffmpeg -i in.mpg -c:v copy -out.mpg
gibt "Buffer Underflow" und "Packet too Large" Fehler. (in.mpg sind die Dateien, die von derselben FFMPEG-Binärdatei und derselben WMV-Quelldatei mit den ersten beiden Befehlen in der Frage erstellt wurden).
Ich verwende ein Zeranoe FFMPEG-Build unter Windows 7.
Philips 42PFL3606H/58
, ich codiere auf H.264 mit ffmpeg -i "in.wmv" -sws_flags lanczos+accurate_rnd -c:v libx264 -crf 20 -preset slow -profile:v baseline -level 3.0 -pix_fmt yuv420p -tune fastdecode -x264-params keyint=240:min-keyint=20 "out.mp4"
- das Profil ist das niedrigste, das ich kenne, und es werden noch mehr Optimierungen verwendet, um das Abspielen der resultierenden Datei zu einer einfacheren Aufgabe zu machen.