我尝试通过以下命令行将 6 个单声道 WAV 文件合并为一个 5.1 WAV,但收到如标题所示的错误消息:
ffmpeg -i front_left.wav -i front_right.wav -i front_center.wav -i lfe.wav -i back_left.wav -i back_right.wav \
-filter_complex "[0:a][1:a][2:a][3:a][4:a][5:a]amerge=inputs=6[aout]" -map "[aout]" output.wav
所有 6 个 WAV 文件都是 16bit 48kHz 768kbps 单声道。
答案1
链接网页上的“\”实际上不是命令行的一部分。在 Linux 上,行尾的“\”是向 shell 发出的一条信息,表示命令行换行到两行,shell 将删除“\”并将下一行附加到当前行。
因此删除“\”,然后只写
ffmpeg -i front_left.wav -i front_right.wav -i front_center.wav -i lfe.wav -i back_left.wav -i back_right.wav -filter_complex "[0:a][1:a][2:a][3:a][4:a][5:a]amerge=inputs=6[aout]" -map "[aout]" output.wav
并且它会起作用。