Ich habe ein mpeg4-Video mit 25 fps. Dieses Video enthält nur einen statischen Frame. Ich versuche, die Bildrate auf 1 fps herunterzusampeln und das Video in x246 (mp4) zu konvertieren.
Ich habe den folgenden Befehl ffmpeg ausgeführt:
ffmpeg -i vid.avi -acodec aac -ar 32000 -ab 64k -ac 2 \
-vcodec libx264 -strict -2 -y -r 1 -force_key_frames 0 vid.mp4
FFmpeg löscht dann viele Frames, bis der erste Keyframe eingefügt wird. Manchmal erscheint das Bild erst nach 16 oder 20 Sekunden.
Ich nehme an, ffmpeg fügt zu Beginn keinen Keyframe ein.
Weiß jemand, wie ich den ersten Frame von vid.avi als Schlüsselframe für vid.mp4 verwenden kann?
ffmpeg
mp4
transcoding
bodacydo
quelle
quelle
-force_key_frames 0
? Vielleicht möchten Sie auch versuchen, die 0 in eine 1 zu ändern, damit sie stattdessen im ersten Frame beginnt-force_key_frames 1
-force_key_frames "expr:eq(n,0)"
Antworten:
Um einen Keyframe mit dem Zeitcode 00: 00: 00.000 zu erzwingen, sollten Sie versuchen, das folgende Flag zu verwenden:
quelle