uzullaがブログ

uzullaがブログです。

高機動なGifをつくる

Gifboomありますよね、でもあれってPCのサイトからみてるとMP4表示してて、アニGif取得するのめっちゃメンドイですよね。

なのでつくった。

https://github.com/uzulla/get_gifboom_gif
http://cfe.jp/getgifboomgif/index.php

however

しかしですね、Gifboom一時期Gifを生成してない時期があってめっちゃ不便ですね。そうなるとMP4をバラしてGifにしないといけない。

ご家庭のImageMagickffmpegをつかえばできますね。

$ ffmpeg -i input.mp4 ./tmp/%04d.png
$ convert ./oo/*.png output.gif


*1

でも、これだとめっちゃ遅いGifになって全然すっきりしないので -delay オプションつけるんですけど、こいつつけてもあんま速度かわらないんですよね。

おちからいったら以下のようなオプションにすることで高機動型なGifを生成できます

$ ffmpeg -i input.mp4 ./oo/%04d.png
$ convert -dispose none -delay 1.5 ./oo/*.png -coalesce output.gif

高速に動き続ける寿司Gifが完成です。


ところで

MP4だと80Kbyteくらいなのに、Gifにすると1.4Mbyteくらいいきますね、本当にアニメーションGifは資源の無駄だとおもいます。(上の、小さい方のGifは色々やってるので、サイズ多少小さいですが)


最後に、やっぱりしなければいけない宣伝

当方がPHPの章を担当した下記書籍、発売して1週間程度たちました。
どの章もお役立ちですが、熟練者の方々からも、3,4章のkoemu氏の担当した「インフラの所がよい」「運用すごいやくだつ」そのようなご好評をいただいております。

*1:このサンプルGifはフレームレートのサンプルであり、上のコードのままで生成したわけではなく、サイズを小さくするために色々やってます