GIFを最速でアニメーションさせるには20msを指定する

GIFアニメーションの10msは20msより遅い

GIGAZINEを見ていたら以下のような記事があった。

GIFを最速でアニメーションさせるには遅延を最低値にしてはいけない

記事によると遅延が10ms以下のGIF画像は遅延が100msに上書きされるため20msより遅くなると書かれていた。

というわけで実際にImageMagickを使用して試してみた。

Party Parrotの画像を10枚用意してImageMagickのconvertコマンドで10msと20msのGIFアニメーションを作成した。

Party Parrotの画像10枚セット.zip

convert -delay 1 -loop 0 *.gif parrot_10ms.gif
convert -delay 2 -loop 0 *.gif parrot_20ms.gif

※ convertコマンドは-delayの1が10ms、2が20msになります。

GIFアニメーション 10msと20msの比較

実際にGIFアニメーションの10msは20msを作成したところ、結果は見ての通り10msを指定したparrot_10ms.gifよりもparrot_20ms.gifのほうが速く動いている。

10msは前述の通り10ms以下だと100msで上書きされるため、かなり遅くなってしまった。

parrot_10ms.gif
parrot_10ms.gif
GIFを最速でアニメーションさせるには20msを指定する
parrot_20ms.gif

このGIFアニメーションの仕様を知らないと10msで指定したつもりなのに100msで作成してしまう可能性がある。

GIFアニメーションの有効な遅延は20ms以上からということを必ず覚えておいたほうが良いだろう。