ffmpegを用いて無音のmp3ファイルを生成する。
ffmpeg -f lavfi -i anullsrc=r=44100:cl=mono -t <seconds> -aq 9 -c:a libmp3lame out.mp3
入力フォーマット: lavfi
-f
では入力フォーマットを指定する。
通常入力フォーマットは拡張子から判断したものが使われる。
例えばinput.mp4の場合、MP4形式となる。
今回は入力を anullsrc
にしたいため、INPUT仮想デバイスである lavfi
を指定する。
どのような入力にするかは`-i`で指定する。
入力: anullsrc=r=441100:cl=mono
-i
では入力を指定する。通常ファイルなどを指定するが、今回は無音のファイルを作成したい。そのため特に入力はない。
INPUT仮想デバイスをフォーマットに指定したため、そのフォーマットとして処理できる入力値を指定する。
anullsrc
はNULLオーディオソースのことを表している1。
r=441100
はサンプルレート、 cl=mono
はチャンネルレイアウトとしてモノラルを指定している。
秒数: -t <DURATION>
ここで指定した秒数をレコード/変換する。
例えば3秒であれば -t 3
と指定する。
オーディオクオリティ: -aq <QUALITY>
クオリティの指定。
オーディオエンコーダの指定: -c:a libmp3lame
-c
はエンコーダ/デコーダを指定する。
-c:a
ならオーディオ、 -c:v
ならビデオとなる。
無音の音声ファイルの場合ビデオは必要ないので -c:a libmp3lame
でオーディオエンコーダのみ指定する。
参考
脚注
1
anullsrcの詳しい説明は公式のドキュメントを参照するとよい。https://ffmpeg.org/ffmpeg-filters.html#anullsrc