
出於測試目的,我想生成一個每幀以 10 fps 在純黑和純白之間變化的視頻,如何使用 FFMPEG 來做到這一點?
答案1
圓滑的答案是「花 3 個小時研究 ffmpeg 過濾器如何工作」——我今天所做的只是為了好玩,所以我用這個問題作為挑戰。
看起來有很多方法可以得到結果,但以下是對我有用的方法:
產生黑色影像和白色影像,將它們命名為
img-001.png
和img-002.png
。use
ffmpeg
的-loop
函數,這是我學到的這個答案僅適用於圖像到影片的工作
生成圖像:
ffmpeg -f lavfi -i color=black:1920x1080:d=3,format=rgb24 -frames:v 1 -y img-001.png
ffmpeg -f lavfi -i color=white:1920x1080:d=3,format=rgb24 -frames:v 1 -y img-002.png
以 10 fps 循環播放這些影像 30 秒:
ffmpeg -loop 1 -i 'img-%03d.png' -r 10 -t 30 -vf format=yuv420p -y out.mp4
ffprobe
報告此元數據:
(edited for clarity)
Duration: 00:00:30.00, start: 0.000000,
Video: h264 (High) yuv420p
1920x1080 [SAR 1:1 DAR 16:9], 20 kb/s, 10 fps
這個要點有另一種方法使用filter_complex
.儘管它沒有做完全相同的事情,但它可以針對此任務進行調整。