amergechannelmapフィルタを合わせたもの。

音声ストリームのチャンネルレイアウトを指定する amerge
音声のチャンネルレイアウトを変えるchannelmap

基本コマンド

左右それぞれのレイアウトのモノラルPCMをステレオPCMにする。
ffmpeg -i left.wav -i right.wav -filter_complex join=inputs=2 stereo.wav

個別の6トラックを1つのファイルまとめたサラウンドファイルにする。
ffmpeg -i fl.wav -i fr.wav -i fc.wav -i lfe.wav -i bl.wav -i br.wav -filter_complex "join=inputs=6:channel_layout=5.1:map=0.0-FL|1.0-FR|2.0-FC|3.0-LFE|4.0-BL|5.0-BR" 5.1.flac

サラウンドの音声トラックが正常に並んでいるときはオプションはシンプルにできる。
ffmpeg -i input.mov -filter_complex join=inputs=6:channel_layout=5.1 -vn 6ch.flac

映像1トラックに音声8トラックを、映像とサラウンド、ダウンミックスを個別に出力。
ffmpeg -i input.mov -filter_complex join=inputs=6:channel_layout=5.1[6ch];[a:6][a:7]join=inputs=2:channel_layout=stereo[stereo] -map 0:v -c:v copy video.mov -map [6ch] 6ch.flac -map [stereo] stereo.flac

32ビット深度以上のPCMなどをFLACに変換するときは-strict experimentalを出力ファイルの前につける。

公式ドキュメント:FFmpeg Filters Documentation : join

オプション

チャンネル配置はチャンネルレイアウトの書式に準ずる。

  • inputs[int]
    入力数の指定
    既定値:2
    範囲:1からINT_MAXまで
  • channel_layout[string]
    チャンネルレイアウトの指定
    既定値:”stereo”
  • map[string]
    入力するファイルとストリームを左に、で続けて右に目的の配置先を指定し別のチャンネルには|で区切って指定する。0.0は1入力目のファイルの最初のストリーム
    例:”map=0.0-FR|1.0-FL”

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)