java中合并音频

因为需求的原因需要将多个音频(.mp3格式)合并为一个音频

1、在电脑/服务器安装 ffmpeg

brew install ffmpeg

java 复制代码
public static Integer combine(String commandFix, List<String> filePaths, String combinePath) {
       try {

           StringBuilder command = new StringBuilder(commandFix + " -i \"concat:");
           for (String path : filePaths) {
               command.append(path).append("|");
           }
           command.append("\" -acodec copy ").append(combinePath).append(" -y");

           logger.info("执行合并音频代码--" + command);

           //拼接ffmpeg命令
           Process process = null;
           Thread.sleep(1000);
           //执行本地命令
           Runtime r = Runtime.getRuntime();

           String[] cmd = new String[]{"sh", "-c", command.toString()};

           process = r.exec(cmd);
           return process.waitFor();
       } catch (Exception e)  {
           logger.error("FFmpeg 执行失败,错误码",e);
           return -1;
       }

    }

参数说明

java 复制代码
commandFix:命令 sudo /usr/local/ffmpeg/bin/ffmpeg
filePaths: 文件列表 服务器对应的文件地址 如:/var/www/file/1.mp3
combinePath:合并后文件的路径 /var/www/file/new.mp3
相关推荐
AI服务老曹几秒前
AI视频分析API常见问题和排查清单
人工智能·音视频
imaol121 分钟前
链表 -- 环链表
java·前端·链表
程序员老陆39 分钟前
Qt的QThread::usleep和FFmpeg的libavutil模块的av_usleep哪个精度高一些?
开发语言·qt·ffmpeg·音视频
imaol143 分钟前
链表 -- 双向链表
java·前端·链表
2601_963869951 小时前
【计算机毕业设计】基于Java的相框定制系统的设计与实现
java·开发语言·课程设计
怪奇云呼军2 小时前
从声音特征到 CRM 回流:闪电智能 Voice Agent 沟通策略自适应系统 v1 实战
android·人工智能·python·音视频·语音识别
于烛2 小时前
为什么hasNext() 对只有一个元素的集合返回 true?90%初学者都有的疑问
java
wuminyu2 小时前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
imaol13 小时前
数据结构---队列
java·数据结构·算法
半亩码田3 小时前
【.NET新特性·第11篇】C# 14 字段属性:告别手写 backing field
java·c#·.net