Linux 使用Sox混合和修剪2个文件

Linux 使用Sox混合和修剪2个文件,linux,audio,sox,mixing,libsox,Linux,Audio,Sox,Mixing,Libsox,我需要一点帮助,希望能在这里找到 当用户上传文件时,我正在使用sox在我的服务器上用声控标签标记一些音乐。这是我正在使用的命令。一切正常 sox -m {voice_tag_loop} {source_file} {output_file} 现在我想改变一些事情,但不知道怎么做,也找不到解决办法。 因此,{voice_tag_loop}将由用户上传,其长度可以是30秒、20秒、17秒或1分钟。我以前不知道 {source_file}是音乐文件,也可以有不同的长度,例如3:13分钟、4:20分钟

我需要一点帮助,希望能在这里找到

当用户上传文件时,我正在使用sox在我的服务器上用声控标签标记一些音乐。这是我正在使用的命令。一切正常

sox -m {voice_tag_loop} {source_file} {output_file}
现在我想改变一些事情,但不知道怎么做,也找不到解决办法。 因此,
{voice_tag_loop}
将由用户上传,其长度可以是30秒、20秒、17秒或1分钟。我以前不知道

{source_file}
是音乐文件,也可以有不同的长度,例如3:13分钟、4:20分钟

我怎样才能把
{voice\u tag\u loop}
{source\u file}
混合在一起,而
{output\u file}
的长度是
{source\u file}
但是
{voice\u tag\u loop}
{source file}的长度一样长

我希望我能解释,你能理解


致以最诚挚的问候

只需重复,直到源文件用尽,例如:

sox -m "| sox {voice_tag_loop} -p repeat -" {source_file} trim 0 $(soxi -d {source_file})

注意,不要忘记
修剪
位,否则重复部分将生成无限文件。

只需重复,直到源文件耗尽,例如:

sox -m "| sox {voice_tag_loop} -p repeat -" {source_file} trim 0 $(soxi -d {source_file})

注意,不要忘记
修剪
位,否则重复部分将生成一个无限文件。

好的,我现在有了所有你想要混合短音频和长音频的答案,只要长音频是,短音频应该重复

在我的情况下,一个小的描述。短文件将更改为44.1kHz,并每30秒循环一次。最多100次,但长度与长文件相同。最后,两个文件将混合使用。这都是一个过程

sox{short_file}-r 44.1k-p pad 0 30重复100修剪0$(sox--i-d{long_file})| sox--m{long_file}{output_file}


关于

好的,我现在有了所有你想要混合短音频和长音频的答案,短音频应该重复,只要长音频是

在我的情况下,一个小的描述。短文件将更改为44.1kHz,并每30秒循环一次。最多100次,但长度与长文件相同。最后,两个文件将混合使用。这都是一个过程

sox{short_file}-r 44.1k-p pad 0 30重复100修剪0$(sox--i-d{long_file})| sox--m{long_file}{output_file}


问候

谢谢您的帮助,但它不起作用。我发现一个命令sox{short.mp3}-p repeat | sox--m{long.mp3}output.mp3正在工作,但现在最大重复时间应该是long.mp3感谢您的帮助,但它不工作。我发现一个命令sox{short.mp3}-p repeat | sox--m{long.mp3}output.mp3正在工作,但现在最大重复时间应该是long.mp3