ubuntuコマンドラインで動画からgif作成 - youtube動画の例

パッケージインストール

$ sudo apt-get install youtube-dl ffmpeg imagemagick 

YouTube Video ダウンロード

$ youtube-dl https://www.youtube.com/watch?v=yMu_Ps24gQ0 

ビデオフレーム抽出 00:20から22秒間、連番でgifファイル生成

$ ffmpeg -t 22 -ss 00:00:20 -i "Top 10 Dance Movies-yMu_Ps24gQ0.mp4" out%04d.gif 

gif結合 20 frames-per-second

$ convert -delay 1x20 -loop 0 out*.gif merged.gif 

サイズ縮小

$ convert -layers Optimize merged.gif stepup.gif 

 

youtube動画から作成したgifのサンプル:

$ rm -rf out*.gif *.mp4;youtube-dl https://www.youtube.com/watch?v=yMu_Ps24gQ0;ffmpeg -t 22 -ss 00:00:20 -i *.mp4 out%04d.gif;convert -delay 1x20 -loop 0 out*.gif merged.gif;convert -layers Optimize merged.gif stepup.gif