「連番画像から動画を作成したい」
「FFmpegでどのコマンドを使うのか迷う・・・」
このような場合には、この記事をご覧ください。
この記事では、FFmpegを使って連番画像から動画を作成する方法を解説しています。
本記事の内容
- 連番画像から動画を作成するために必要なモノ
- 連番画像から動画を作成するコマンド
それでは、上記に沿って解説していきます。
連番画像から動画を作成するために必要なモノ
まずは、連番画像から動画を作成するために必要なモノを用意しましょう。
必要なモノは、ズバリFFmpegです。
WindowsとUbuntuに関しては、FFmpegのインストール方法を以下の記事で解説しています。
FFmpegをインストールできたら、準備はOKです。
以上、連番画像から動画を作成するために必要なモノを説明しました。
次は、連番画像から動画を作成するコマンドを説明します。
連番画像から動画を作成するコマンド
連番画像から動画を作成する方法は、検索すればたくさん出てきます。
しかし、たくさん出てくるからこそ困ります。
なぜなら、それぞれが微妙に異なるからです。
もちろん、それはFFmpegのバージョンの違いも原因としてあるのでしょう。
そうは言っても、何か確固たるモノは欲しいです。
そこで多くのコマンドから、共通となるべきモノを抽出してみました。
それが、以下となります。
ffmpeg -r フレーム数 -i 連番画像 -vcodec libx264 -pix_fmt yuv420p out.mp4
これで大崩れすることは、まずはないでしょう。
とりあえず、このコマンドを使っておけばOKと言えます。
日本語の箇所を説明をしておきます。
フレーム数は、1秒あたりに表示する画像の枚数となります。
連番画像は、表記方法が決まっています。
基本的には、連番であることが大前提となります。
001,002,003の形式なら、%03dと指定します。
000001,000002,000003の形式なら、%06dと指定することになります。
実際のコマンドを見た方が、理解は進むと思います。
次のようなファイル名の画像が、32枚あるとします。
ここでは、1秒間に2枚の画像を表示させるようにしましょう。
この場合、コマンドは次のようになります。
ffmpeg -r 2 -i frame_%06d.png -vcodec libx264 -pix_fmt yuv420p out.mp4
上記を実行すると、処理が実行されます。
処理自体は、これぐらいの画像数であればすぐに終わります。
作成された動画は、以下。
16秒の動画となっています。
フレームレートが2であるため、16秒で問題ありませんね。
上記コマンドで何も問題なければ、それでOKです。
しかし、上記コマンドで満足が行く動画とならない可能性があります。
例えば、コマ落ちで画像がすべて表示されないなどです。
何かしら結果に不満がある場合は、次のコマンドを実行してみましょう。
ffmpeg -framerate 2 -i frame_%06d.png -vcodec libx264 -pix_fmt yuv420p out.mp4
「-r」を「-framerate」に置き換えています。
このようにすべきことが、公式のマニュアルに記載されています。
ちなみに、それぞれのコマンドで作成した動画は以下となります。
サイズ、長さが同じです。
内容に関しても、全く同じように見えます。
以上、連番画像から動画を作成するコマンドを説明しました。