linux - 用Sox混合和修剪2个文件

标签 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分钟

我如何将{voice_tag_loop}{source_file}混合在一起,即{output_file}具有{source_file}的长度,但是又将{voice_tag_loop}混合并循环/重复到与{source_file}一样长的长度

希望我能解释一下,以便您能理解。

最好的祝福

最佳答案

重复直到源文件用完,例如:

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

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

关于linux - 用Sox混合和修剪2个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60072723/

相关文章:

linux - 内核如何确定进程优先级

c - 进程子创建新 session

audio - SIM800C:在通话过程中播放时,上传的音频AMR文件有噪音

linux - Debian下的sox批处理

sox:A-law 到 PCM

php - 无法安装 mbstring php...缺少 libgmp.so.3

java - 在 centOS Linux Box 中运行的 Spring Java Mail 程序抛出异常

java - TargetDataLine.getFramePosition()vs read()

ios - 我的应用程序声音输出的音频过滤器

使用 iLBC 编解码器 2 wav 进行 linux 转换 caf 文件