Terminal (macOS): ffmpeg で画像と音声ファイルから動画を作成する

Twitter に自作の音楽データをアップロードしたいとかに対応するコマンドです。

事前に FFmpeg を入れておきます

brew install ffmpeg --with-faac --with-fdk-aac --enable-libx264 --enable-libxvid

Twitter の対応動画フォーマット

こちらに記載されていますが、音声は AAC、映像は H264、ファイル形式は MP4 にする必要があります。画像サイズは 16:9 〜スマホサイズの画角である必要があります。正方形とかいいかもですね。

音声ファイルを AAC へ変換する

Logic などの DAW または iTunes で変換するか、ffmpeg コマンドで変換できます。

caf を AAC に変換:

ffmpeg -i audio.caf audio.aac

mp3 を AAC に変換:

ffmpeg -i audio.mp3 audio.aac

いよいよ本題: AAC ファイルと PNG をがっちゃんこして MP4 を作成する

png でなくて、jpg とかでも大丈夫です。

ffmpeg -loop 1 -y -i 入力画像.png -i 入力音声.aac -shortest -vcodec libx264 -acodec copy -pix_fmt yuv420p 出力ファイル名.mp4

-pix_fmt yuv420p の指定が地味に重要です。