Ich habe ein .avi-Video (divx) mit 25 fps und MP3-Audio mit 64 kbit / s. Dieses Video enthält nur ein Bild im gesamten Video.
Ich versuche dieses Video in mp4 zu konvertieren, aber um es so klein wie möglich zu machen (da es wirklich nur 1 Frame gibt!)
Ich versuche gerade Folgendes:
ffmpeg -i video.avi -vcodec libx264 -acodec aac \
-ar 32000 -ab 64k -ac 2 -strict -2 -y video.mp4
Aber das macht ein MP4-Video, das ähnlich groß ist wie .avi.
Als nächstes habe ich versucht, die Bildrate auf 1 fps zu ändern:
ffmpeg -i video.avi -vcodec libx264 -acodec aac \
-ar 32000 -ab 64k -ac 2 -strict -2 -y -r 1 video.mp4
Dies hat die Videodatei viel kleiner gemacht (10x kleiner), aber es gibt ein Problem, dass der Keyframe nicht im ersten Frame des Videos erscheint. Das einzige Bild im Video erscheint also wie 8 oder 10 Sekunden im Video (!).
Es sieht so aus, als ob das Problem hier ist, dass ffmpeg immer wieder Frames aus video.avi löscht und sie nicht als Keyframes in video.mp4 schreibt. Wenn ein Keyframe geschrieben wird, ist es spät im Video.
Es wurde versucht, -force_key_frames
Argumente zu verwenden, aber das half auch nicht. Ich habe -force_key_frames 0
und -force_key_frames 1
.
Weiß jemand, wie ich ein wirklich kleines MP4-Video mit nur 1 statischen Frame erstellen kann?
quelle
-c:a copy
für das Audio oder-acodec copy
für ältere Versionen von ffmpeg.Antworten:
Sie sollten überprüfen, ob der Videoteil wirklich ein Faktor ist, indem Sie die A / V-Komponenten trennen
mit ffmpeg funktioniert das mit
Wenn das Video wirklich eine bedeutende Größe hat, besteht eine Möglichkeit darin, einen Screenshot davon zu erstellen und das Bild als Eingabe für den Videocodierer zu verwenden, anstatt den Videostream neu zu codieren
Siehe ffmpeg.org/wiki als Referenz
In diesem Stackoverflow-Beitrag können Sie sehen, wie Sie aus einem Standbild ein Video erstellen
quelle
Versuchen Sie den folgenden Befehl, bei dem das Bild und das Audio getrennt entfernt und dann wieder zusammengesetzt werden:
quelle
Wenn Sie es nur konvertieren möchten, verwenden Sie ein Programm namens Format Factory (Link hier: http://www.pcfreetime.com/ ). Es kann die Datei für Sie direkt in mp4 konvertieren und auf eine kleine Größe einstellen
quelle