java使用ffmpeg拆分和拼接音频
2023-12-14 09:34:27
ffmpeg是一个开源的跨平台音视频处理工具,它可以对音视频进行格式转换、压缩、采集、裁剪、剪辑等操作。ffmpeg能够处理的音视频格式很多,包括常见的mp4、avi、mov等格式,也包括一些不那么常见的格式。
ffmpeg最初是由法国程序员Fabrice Bellard编写的,现在已经成为了流行的音视频处理工具。ffmpeg支持命令行操作,也可以通过API集成到其他应用程序中使用。因为经过多年的发展,ffmpeg的性能和稳定性都非常高,被广泛应用于音视频处理领域,例如视频编辑软件、转码工具、流媒体服务器等。
?按照指定时间对音频进行拆分
public static void split(String firstFragmentPath,
String targetPath, String startTime, String continuousTime) {
try {
String command="ffmpeg -i "+firstFragmentPath+" -ss "+startTime+" -t "+continuousTime+" "+targetPath+" -y";
Runtime.getRuntime().exec(new String[]{"sh", "-c", command});
} catch (IOException e) {
e.printStackTrace();
}
}
音频拼接
public static Boolean concat(String concatFilePath,String destFile){
try {
final String command = String.format("ffmpeg -f concat -i %s -c copy %s -y", concatFilePath, destFile);
Runtime.getRuntime().exec(new String[]{"sh", "-c", command});
return Boolean.TRUE;
} catch (IOException e) {
e.printStackTrace();
return Boolean.FALSE;
}
}
第一个参数需要传递指定格式的文件(concat.txt)
file 'tmp0.wav'
file 'tmp1.wav'
file 'tmp2.wav'
file 'tmp3.wav'
file 'tmp4.wav'
file 'tmp5.wav'
file 'tmp6.wav'
file 'tmp7.wav'
file 'tmp8.wav'
文章来源:https://blog.csdn.net/weixin_44808225/article/details/134850902
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!