利用[TMPGEnc 4.0 XPress] 或 [TMPGEnc Video Mastering Works 5] 生成 AVI
這個視頻編輯軟件,可對每個幀進行操作
1.生成每個幀的 PNG
ffmpeg -y -ss 5 -t 3 -i "01.avi" -s 320x132 -an -f image2 "./png/output_%%05d.png"
-y 覆蓋原有的文件
-ss 開始位置秒 或 hh:mm:ss[.xxx]
-t 總時間秒數 或 hh:mm:ss[.xxx] 格式
-i 輸入的視頻
-s 要生成 png 圖片大小
-an 忽略聲道信息
-f image2 圖像文件流合並寫入視頻幀的圖像文件 在win系統中必須[%%]才可以
2.根據 png 生成 GIF(dos命令中有 convert 命令,所以convert.exe 改名為 iconvert.exe)
iconvert -quiet -delay 3 ./png/*.png -resize 190x94 -ordered-dither o8x8,23 +map out_od2.gif
-quiet 抑制所有警告消息
-delay gif 幀之間延時時間,單位毫秒[這個選項必須在輸入文件名前面時才有效]
-resize 調整 gif 大小
-ordered-dither 使用一個統一的顏色通道,減小 gif 文件大小
例子中這樣生成的 gif 大小為 (795,001 字節)
3.生成 gif 進行優化
iconvert out_od2.gif -layers OptimizeTransparency +map out_opt.gif
-layers OptimizeTransparency 使用透明顏色,減少 gif 文件大小
例子中優化后 gif 大小為 (633,112 字節)
注:
也可以以下命令
iconvert -delay 3 ./png/*.png -resize 190x94 -layers optimize out_od1.gif
例子中這樣生成的 gif 大小為 (733,827 字節)
iconvert out_od1.gif -layers OptimizeTransparency +map out_opt1.gif
例子中優化后 gif 大小為 (628,188 字節)
或者直接使用avi->gif
convert -quiet -delay 3 01.avi -ordered-dither o8x8,23 +map out_od2.gif
利用png生成gif時,操作比較麻煩,但是對不需要的幀圖進行刪除;
直接avi->gif操作簡單,但是還需要第三方軟件進行編輯;
Download ImageMagick
ImageMagick help
ImageMagick Usage help
ImageMagick convert help
Download ffmpeg
ffmpeg help
