今回はFFMPEGで動画にパディング(余白)を付与する方法を紹介します。
動画自体を削ることなく、動画の周囲に黒い枠を付与する場合等に使うことができます。
また、パディングを付与して、パディング部分にテキストを挿入するということも可能です。
FFMPEGの実行バイナリファイルの入手に関しましては、もし入手方法がわからないという方がいらっしゃいましたら、以下の記事を参考にしてみてください。
FFMPEGで動画にパディングを加える方法
下のコマンドで、動画の周囲に余白を付与することができます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ffmpeg -i input.mp4 -vf pad=w=iw+40:h=ih+40:x=20:y=20:color=black output_pad_black.mp4
ポイントは以下の通りです。
- 入力動画を「input.mp4」の位置に指定します
- 「-vf pad=w=XXXXX:h=YYYYY:x=AAAAA:y=BBBBB:color=CCCCC」の部分が余白の指定箇所です。今回は上下左右に20pxの余白を入れるコマンドとなっています。
- 「w=XXXXX:h=YYYYY」は出力される動画の横幅(width)と高さ(height)を表します。
- 「iw」は入力動画の幅を、「ih」は入力動画の高さを示します。すなわちinput.mp4が1920×1080の解像度のとき、iw=1920, ih=1080です。
- 今回は上下左右に20pxずつ余白が付与されるので、「w=iw+40」「h=ih+40」と指定しました。すなわち出力動画のサイズは余白込みで1960×1120となります。
- x=AAAAA:y=BBBBBの部分は、入力動画(input.mp4)の左上のピクセルが、出力動画内においてどの位置に該当するかを示します。出力動画では上下左右に20pxの余白を付ける予定なので、input.mp4は左上から見て(20, 20)の位置に配置します。よって、「x=20」「y=20」と指定します。
- 最後に色を指定します。白の余白の場合は「white」、黒の枠を付ける場合は「black」等を指定し、余白部分の色を設定します。
- 出力動画が「output_pad_black.mp4」になります。
注意点として、このコマンドでは余白分だけ動画の大きさが変更されます。すなわち、1920×1080の動画を入力としたときに、上記のコマンドでは上下左右に20px分の余白が足されて1960×1120の解像度になります。
しかし実用上は、FullHD(1920×1080)の動画を入力として、あまり標準的ではない解像度の動画に変換されてしまうのは使いにくいと感じる方も多いと思います。
FFMPEGでは以下のコマンドで簡単に解像度の変換もできますので、入力動画(1920×1080)のサイズに戻したい場合には、以下のコマンドを追加してみてください。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ffmpeg -i output_pad_black.mp4 -s 1920x1080 output_pad_black_resized.mp4
まとめ
FFMPEGを使うことで、動画に黒枠等の余白を簡単に付与することが可能です。