TumblrにアニメーションGIFがアップされるのをよく見るんだけど、自分でアップしようとするとどうも上手くいかない。何でなんだろうなーと思ってたら、ヘルプにこんなことが書いてあった。

How do I make an animated GIF work in a Photo post?
Try using an animated GIF that is 512K or less in size and 500 pixels or less wide.
 

つまりこの2つの条件を満たせばOKということらしい。なるほど。
実際に適当なアニメーションGIFをダウンロードしてきて、画像の大きさとサイズを調整(幅と高さをそれぞれ1/2に、色数を半分に)してアップしてみたら確かに行けた。

http://nobodyplace.tumblr.com/post/200090819


サイズを大きくすると当然重くなるので、幅を500pxにして色数を限界まで減らしたらこうなった。

i*mage*s - アニメーションGIFテスト。幅はリサイズ処理されない限界の500px。その分、色数を犠牲にしてる。

これでも動く。


幅が500pxに制限されてるのは、500px以上の画像だと自動的に500pxにサイズを変更する処理が行われ、その際にアニメーションGIFを維持できないってことなんだろうと思う。



また、フレーム数についての考察をどこかで見かけたけれども、上のサイズさえ満たしていれば、かなりのフレーム数でもアップできた。下の画像は縦横500px。

i*mage*s - アニメーションGIFテスト。フレームを増やして104Fにしている。

フレーム数は104。試しにもう少し増やして155F、170Fにしてみたら2つともアップロードが上手くできなかったので(時間が掛かってそのまま処理中になる)、フレーム数はほどほどにしておくのが良いみたい。150フレーム当たりが限界って言う情報もあるので、まぁその辺かな。普通はその前にファイルサイズが問題になると思うけどね。



まとめ。

TumblrにアニメーションGIFをアップするには以下の3つを満たす必要がある。

  • 画像のファイルサイズが512KB以下
  • 画像の最大幅が500px以下
  • フレーム数は150以下



よーしこれでアニメーションGIFアップできるぞー