アニメーション gif をループ再生させる設定方法

macOS の Finder 上でアニメーション gif ファイルをスペースキーで開くとエンドレスリピート再生されるのに、ブラウザで開くと1回しか再生されないのなんでだろう?と思って調べてみました。

Stack Overflow に同じような質問があって「gif ファイルに定義されているから、エンドレスアニメーションループを有効にする編集をするんだ」みたいな回答が書かれてあって、「あ、そりゃそうだよね」と妙に感心してしまいました。

gif ファイルの編集には Gifsicle というCommand-Line Animated GIFs ツールを利用しました。

gifsicle のインストール

brew install gifsicle

ループ設定方法

無限ループ

original.gif のループ回数を無限に設定するには -l, –loopcount オプションをつけて gifsicle コマンドを実行するだけです。

gifsicle --loopcount original.gif > output.gif
gifsicle -l original.gif > out.gif

-b, –batch オプションをつけることで original.gif に上書きすることもできます。

gifsicle --batch --loopcount original.gif
gifsicle -bl original.gif

ループ回数を指定する

original.gif のループ回数を指定したいときは -l=N, –loopcount=N というオプションで設定できます。

例えば、ループ回数 2 の場合、

gifsicle --loopcount=2 original.gif > out.gif
gifsicle -l=2 original.gif > out.gif

で設定できます。この場合、合計で3回アニメーション gif が再生されます。

以上、アニメーション gif をループ再生させたい、現場からお送りしました。