複数ファイル
複数の入力ファイルを個別に変換する場合、-map
で指定します。
ffmpeg -i town.flac -i title.flac -map 0 town.mp3 -map 1 title.mp3
-map
は、個々の入力ファイルとそのストリームを、出力ファイルに振り分けるオプションです。
上記の-map 0
は、-map 0:0
の省略形で、最初の0が1番目の入力ファイルを指し、最後の0がそのファイルの1番目のストリームを指します。-map 1
も同様に、-map 1:0
と表され、2番目の入力ファイルを指し、そのファイルの1番目のストリームを指しています。
フィルター
入力ファイルと出力ファイルが1対1に対応したフィルターを、音声ファイルでは-af
と表します。また、これに当てはまらない、複数のファイルを扱う場合は、-filter_complex
オプションを用います。フィルターには様々な種類があり、
ffmpeg -filters
のコマンドや、ドキュメントで確認します。
複数のフィルターを適用する場合、例えば2つのフィルターなら、
ffmpeg -i town.flac -af "1番目のフィルター,2番目のフィルター" town.mp3
のように、カンマで区切り、クォートで囲います。
音量
単純に倍率で指定することもできますが、当サイトではデシベル(dB)を用いてます。
ffmpeg -i town.flac -af volume=1dB town.mp3
dB
を倍率で表すと、例えば、0dB
であれば当倍、6dB
は約2倍、-6dB
は約0.5倍の音量になります。
ループ
aloop
で指定します。1回ループさせるなら、
ffmpeg -i town.flac -af aloop=1:総サンプル数:0 town.mp3
最初にループ回数を指定します。次の数値でループさせる区間を表すのですが、単位は秒数ではなくサンプル数です。通常、曲を全区間でループさせるので、総サンプル数またはサンプルレートと曲の長さ(総秒数)を掛けあわせた値を用います。次の数値でループさせる位置を指定します。これもサンプル数で表され、0
で曲の頭を指定しています。
URL: sac.ringil-music.com
環境: さくらのVPS・Centos7・Nginx・PHP-FPM