連拍照片轉成gif或影片(ffmpeg)
跑馬拉松會有場邊幫忙拍照的,有時候給一連串個人照片,我們就可以透過ffmpeg把他們轉成動圖或是影片
- ffmpeg照片轉mp4影片
- ffmpeg照片轉gif動圖
以下分別介紹轉換方法
ffmpeg照片轉mp4影片
ffmpeg -framerate 3 -i %02d.jpg -c:v libx264 -pix_fmt yuv420p output.mp4
如果覺得轉成的mp4影片速度比較慢,可以把-framerate 3改成-framerate 6或更大得數值;反之,若覺得mp4影片速度較快,可以把-framerate 3改成-framerate 2或更小得數值。
-i %02d.jpg 是指照片檔案的檔名為01.jpg,02.jpg,03.jpg....
ffmpeg照片轉gif動圖
ffmpeg -framerate 3 -i %02d.jpg -loop 0 output.gif
如果覺得轉成的動圖速度比較慢,可以把-framerate 3改成-framerate 6或更大得數值;反之,若覺得動圖速度較快,可以把-framerate 3改成-framerate 2或更小得數值。
-i %02d.jpg 是指照片檔案的檔名為01.jpg,02.jpg,03.jpg....
-loop 0是表示反覆播放
使用上述這個指令產生出來的圖片會有網格感,是因為採用的色盤沒有經過最佳化。
最佳化轉gif動圖
最佳化就是需要分成兩個階段來處理
階段1. 生成使用的顏色色盤
階段2. 轉換成動圖
ffmpeg -i %02d.jpg -vf palettegen palette.png
ffmpeg -framerate 3 -i %02d.jpg -i palette.png -lavfi paletteuse -loop 0 output.gif
參數同前面得解釋
留言