ffmpeg - 定義影像的精確時間距離

ffmpeg - 定義影像的精確時間距離

我有一部長達 3 分鐘、每秒 29 張影像的影片。我想以1/秒的速度將其分割成影像。

我使用這個指令:

ffmpeg.exe -i FILE0014.MOV -r 2 -f image2 -vcodec mjpeg -qscale 2 "%%05d.jpg"

但這會產生超過 300 張圖像!

日誌檔顯示:

幀= 3 fps=0.0 q=0.0 大小=N/A 時間=00:00:01.00 位元速率=N/A dup=0 丟棄=13
幀= 4 fps=3.9 q=0.0 大小=N/A 時間=00 : 00:01.50 位元速率=N/A dup=0 drop=33
幀= 5 fps=3.2 q=0.0 大小=N/A 時間=00:00:02.00 位元速率=N/A dup=0 drop=51111111號
影格= 7 fps =3.4 q=0.0 大小=N/A 時間=00:00:03.00 位元率=N/A dup=0 drop=67
訊框= 8 fps=3.1 q=0.0 大小=N/A 時間=00: 00:03.50 位元率=N/A dup=0 drop=84
幀= 9 fps=2.9 q=0.0 大小=N/A 時間=00:00:04.00 位元率=N/A dup=0 drop=102
幀= 10 fps=2.8 q= 0.0 大小=N/A 時間=00:00:04.50 位元率=N/A dup=0 丟棄=120
幀= 12 fps=2.9 q=0.0 大小=N/A 時間=00:00 :05.50 位元率=N/A dup=0 掉落=137

時間不精確1秒。

有人可以幫我下正確的命令嗎?

答案1

嘗試:

ffmpeg -i file0014.mov -vf fps=1 -q:v 2 %03d.jpg

分解一下:

-vf fps=1將以 1 秒的間隔選擇一幀

-q:v 2(您的簡寫qscale)是 jpeg 影像的品質等級。 1 是最高品質,31 是最低品質。

相關內容