視頻拆幀
ffmpeg -i video.avi frames_%05d.jpg
-i 後是輸入文件名;
最後是輸出結果,以frame_爲前綴,以五位數字爲編號(不夠前邊用0補齊),圖片格式爲jpg。
圖片合成視頻
ffmpeg -i img/frames_%05d.jpg -vcodec mpeg4 test.avi
-i 後是輸入文件名,上例中意爲讀取img文件夾下以以frame_爲前綴後跟五位數字的jpg圖片;
-vodec是編碼格式,所有ffmpeg支持的格式都可以,具體可以ffmpeg -codecs查看。
最後是輸出文件名。ffmpeg會根據文件名選擇輸出文件格式。例如avi、mp4等。
若報錯
Could find no file with path ‘img/frames_%05d.jpg’ and index in the
range 0-4
這是因爲ffmpeg默認圖片編號是從0開始的。即如果找不到frames_00000.jpg,則報錯。
修改方式爲
ffmpeg -start_number 345 -i img/frames_%05d.jpg -vcodec mpeg4 test.avi
指定開始讀取的圖片編號。
注意:ffmpeg讀取的時候會順序讀取,若出現編號中斷,視頻會就此結束。
還可以通過
-r 設置幀率。即每秒截取或集成幾幀圖片。
-y 若輸出文件名衝突,直接覆蓋。
參考Clarification for ffmpeg input option with image files as input