2023/03/18(土) [n年前の日記]
#1 [cg_tools] ffmpegで連番画像からアニメgifを作りたい
ffmpeg を使うと連番画像から動画ファイルを作れたりするけど、アニメgifを作るにはどうしたらいいのか…。
以下で解説されてた。ありがたや。
_ffmpegで連番画像からGIFを作成 / 解像度変更 / 逆再生 - Qiita
_PNG連番画像からGIFパラパラアニメをつくる | air-h-128k-il@phazor
_Linux/ffmpeg - Takuya Miyashita
手順としては以下。まずは連番画像内の色を調べて、パレット用画像 palette.png を作成する。
連番画像とパレット用画像を指定しつつ、アニメgifを作る。
注意点その1。Windows上でbatファイルを書いて自動処理したい場合、「%」は「%%」と書く必要がある。例えば「%04d」は「%%04d」と記述することになる。
注意点その2。ffmpeg が「ファイルを上書きするか? (y/N)」と尋ねてくる時があるけれど、-y も指定しておけば、デフォルトで「y」を入力したものとして動作してくれる。
以下で解説されてた。ありがたや。
_ffmpegで連番画像からGIFを作成 / 解像度変更 / 逆再生 - Qiita
_PNG連番画像からGIFパラパラアニメをつくる | air-h-128k-il@phazor
_Linux/ffmpeg - Takuya Miyashita
手順としては以下。まずは連番画像内の色を調べて、パレット用画像 palette.png を作成する。
ffmpeg -i input%04d.png -vf palettegen palette.pngちなみに、「%04d」と書くことで、0000 - 9999 が指定できる。「%06d」なら 000000 - 999999 になる。
連番画像とパレット用画像を指定しつつ、アニメgifを作る。
ffmpeg -f image2 -r 24 -i input%04d.png -i palette.png -filter_complex paletteuse output.gif-r 24 で、24FPSを指定してる。もっとも、アニメgif はwait値を1/100秒単位でしか指定できなかった記憶があるので、おそらく近似値になるのだろう…。
注意点その1。Windows上でbatファイルを書いて自動処理したい場合、「%」は「%%」と書く必要がある。例えば「%04d」は「%%04d」と記述することになる。
注意点その2。ffmpeg が「ファイルを上書きするか? (y/N)」と尋ねてくる時があるけれど、-y も指定しておけば、デフォルトで「y」を入力したものとして動作してくれる。
◎ ffmpegの入手先 :
_Download FFmpeg
_Builds - CODEX FFMPEG @ gyan.dev
今回は gyan.dev の、release builds、ffmpeg 6.0 を利用させてもらった。ffmpeg-6.0-full_build.7z を入手して解凍。
essentials build と full build の2種類があるけれど、一般的な用途なら essentials build で十分で、full build はそれ以外の機能も入ってる、と書いてあるように見える。libraries の項に、内包してるライブラリが列挙されてるけれど、たしかに essentials build で大体のことはできそう。
_Builds - CODEX FFMPEG @ gyan.dev
今回は gyan.dev の、release builds、ffmpeg 6.0 を利用させてもらった。ffmpeg-6.0-full_build.7z を入手して解凍。
essentials build と full build の2種類があるけれど、一般的な用途なら essentials build で十分で、full build はそれ以外の機能も入ってる、と書いてあるように見える。libraries の項に、内包してるライブラリが列挙されてるけれど、たしかに essentials build で大体のことはできそう。
[ ツッコむ ]
以上です。