SoX - 混合两个音轨但仅循环/重复一个

SoX - 混合两个音轨但仅循环/重复一个

我有两个音频文件,想将它们混合SoX使用该-m, --combine mix选项。

两个文件具有相同的 bpm,但长度不同,这意味着我需要循环一个文件,而不是另一个文件。这里有人知道(如果可能的话)如何做到这一点吗?

我设法创建一个循环文件sox通过使用该repeat选项,但我不能仅在一个输入文件上使用此选项,

有点像:

sox -m repeat 4 one-bar.flac four-bar.flac outfile.flac

管道不起作用:

sox one-bar.flac repeat 4 | sox - -m four-bars.wav output.flac

我得到:

sox FAIL sox: Not enough input filenames specified

sox FAIL formats: can't determine type of  `-'

答案1

必须使用管道选项-p, --sox-pipe,否则第一个命令不会传递任何内容stdout,第二个命令仅获取一个文件进行混合:

sox FAIL sox: Not enough input filenames specified

使用带有选项的管道-p可以完成以下工作:

sox one-bar.flac -p repeat 4 | sox - -m four-bars.wav output.flac

相关内容