java音频之ffmpeg

本文介绍了在Java中使用javacv-platform包处理音频时,如何引入ffmpeg并解决打包后体积过大的问题。作者探讨了两种引入方案,一是只选择必要的jar,二是利用ffmpeg本地缓存文件夹。最终,通过将本地缓存的ffmpeg.exe放置到jar指定位置,成功实现了音频处理功能。
摘要由CSDN通过智能技术生成

系列文章目录

第一章 语音处理——转wav类型
第二章 java wav音頻文件播放



前言

如第一章 语音处理——转wav类型 所写,可以有效实现语音文件转换,但在打包后发现,包很大;所以该章就记录下我自己处理过程;


一、引入javacv-platform包都包含什么

在maven中引入

		<dependency>
            <groupId>org.bytedeco</groupId>
            <artifactId>javacv-platform</artifactId>
            <version>1.5.5</version>
        </dependency>

依赖下载完毕,会发现,这个jar包包含opencv、linux、windows、mac等系统的jar,所以在引入的时候有两种方案:
方案一:只取需要的jar,如下引入

<dependency>
	    <groupId&
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Java中使用FFmpeg分离MP4中的音频,可以使用FFmpeg的命令行工具来实现。首先,你需要确保你的系统已经安装了FFmpeg。 下面是一个示例的Java方法,用于使用FFmpeg命令行工具来分离MP4文件中的音频: ```java import java.io.IOException; public class FFmpegUtils { public static void extractAudioFromMp4(String srcFile, String targetFile) throws IOException { String ffmpegCommand = "ffmpeg -i " + srcFile + " -vn -acodec copy " + targetFile; Process process = Runtime.getRuntime().exec(ffmpegCommand); // 等待FFmpeg命令执行完毕 try { process.waitFor(); } catch (InterruptedException e) { e.printStackTrace(); } // 检查FFmpeg命令是否执行成功 if (process.exitValue() != 0) { throw new IOException("FFmpeg command failed"); } } } ``` 在上面的示例代码中,`srcFile`是原始的MP4文件路径,`targetFile`是目标音频文件路径。该方法会使用FFmpeg命令行工具执行命令`ffmpeg -i 输入文件路径 -vn -acodec copy 输出文件路径`来分离MP4的音频流并保存为目标音频文件。 你可以将上述代码添加到你的Java项目中,并使用`FFmpegUtils.extractAudioFromMp4`方法来分离音频。 请注意,为了能够成功执行该方法,你需要确保系统中已经正确安装了FFmpeg,并且FFmpeg命令行工具在系统的环境变量中可用。 参考资料: 上一篇文章谈到音频剪切、混音、拼接与转码,也详细介绍cMake配置与涉及FFmpeg... 链接:https://pan.baidu.com/s/1tqPF65xKlWOE3F6x00HLxQ 提取码:ruzy
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值