FFmpegで連番画像から動画を作成する際のTIPSをまとめてみました。
※一部、過去記事と重複する内容もあります。
画像ファイルから動画ファイルを作成するコマンド
0001.png、0002.png、0003.png …という連番画像から動画ファイル(MP4)を作成するには以下のようなコマンドを実行します。
$ ffmpeg -i %04d.png -c:v libx264 output.mp4
%04d.pngの部分が連番画像ファイルを指定する部分になっています。
例えば、image_001.png、image_002.png、image_003.png …というファイル名になっている場合はimage_%03d.pngのような感じにします。
関連記事: アニメーションGIFの作り方
フレームレートの設定
オプションを指定していない場合、フレームレートが25fpsの動画ファイルが作成されます。変更したい場合は-rコマンドでフレームレートを設定してください。
$ ffmpeg -r 30 -i %04d.png -c:v libx264 output.mp4
画質の設定
動画の画質を設定する場合は-crfオプションを使います。デフォルトでは23になっています。画質を上げたい場合はより小さな値を、画質を下げたい(ファイルサイズを小さくしたい)場合はより大きな値を設定します。
$ ffmpeg -i %04d.png -c:v libx264 -crf 20 output.mp4
関連記事: FFmpegでYouTube向けにエンコード
ループの設定
動画を何周かループさせたい場合は-stream_loopオプションを使います。例えば、-stream_loop 2とすると、最初の1周分とあわせて同じ内容が3回表示される動画ファイルになります。
$ ffmpeg -stream_loop 2 -i %04d.png -c:v libx264 output.mp4
YouTubeなどのサイトにアップロードする場合
YouTubeなどの動画サイトにアップロードする場合は-pix_fmt yuv420pを付けないと正常に再生できない場合があります。アップロードしてみて、正常に再生できないようであれば、設定を見直してみてください。
$ ffmpeg -i %04d.png -c:v libx264 -pix_fmt yuv420p output.mp4
関連記事: FFmpegでYouTube向けにエンコード

