伊丹への着陸映像がある。
これを1秒ごとに切り出して繋げたら
アニメーションgifになるのでは?と考えた。
<結果>
成功。こうなる。
元画像400MBの100分の1以下。でも充分伝わる。アニメーションgif素晴らしい。
<作り方>
まずは動画から画像を切り出す。自作のスクリプトを利用する。
動画 IMG_6292.MOV の開始18秒から1秒間隔で30枚の画像を切り出してみる。
$ ./01_ffjpgTO1024x576.sh IMG_6292.MOV 18 1 30
ほぼ一瞬で切り出しが完了。
一覧で見る。
$ ls | grep IMG_
カンペキ。画像が切り出された。
Web公開フォルダに置いてブラウザで見てみる。
綺麗に切り出しされている。
自作の画像一覧(ギャラリー).php で表示。
うむ。
あとはこれらの画像をつなげてgifにするだけ。
$ convert -delay 1 -loop 0 IMG_6292.MOV_*jpg IMG_6292_MOV_ani.gif
できた。けど、ちと重いな。44MB近くある。
やり直す。まず画像を100枚切り出す。
開始18秒から1秒間隔で100枚で指定。
$ ./01_ffjpgTO1024x576.sh IMG_6292.MOV 18 1 100
100枚全部だと多いので
ファイル名末尾が「1秒、3秒、5秒、8秒」のものだけ取り出す。
$ echo IMG_6292.MOV_*{1,3,5,8}秒.jpg
改行を入れる。
$ echo IMG_6292.MOV_*{1,3,5,8}秒.jpg | sed -e 's/ /\n/g'
並び順がおかしいのでsortする。
$ echo IMG_6292.MOV_*{1,3,5,8}秒.jpg | sed -e 's/ /\n/g' | sort
よし。
あとはこれをconvertコマンドの引数に食わせてアニメーションgifにする。
$ convert -delay 30 -loop 0 $(echo IMG_6292.MOV_*{1,3,5,8} 秒.pg | sed -e 's/ /\n/g' | sort) IMG_6292.MOV_ani4.gif
できた。完璧。
Linux最高すぎる。