java利用ffmpeg将amr、caf转mp3格式

本文介绍了在Java项目中如何使用ffmpeg工具将Android的amr和iOS的caf音频格式转换为mp3。通过socket上传文件,当接收到音频文件时,调用ffmpeg执行转换。代码示例展示了简单调用ffmpeg进行转码的过程。
摘要由CSDN通过智能技术生成

    最近再做一个项目,要将手机APP上的文件上传到服务器上来,包括图片、声音、视频文件。起初只有Android版,大家知道,Android的录音格式amr,在电脑上播放不出来,必须转码。因为之前只有Android版的,所以就用jave给方便的解决了。但是后来又增加了iPhone版,传上来的录音格式是caf。jave虽然支持几十种音视频格式,但是却支持不了这个caf格式。后来也尝试了lame,也是不行。网上的资料绝大部分是说在iPhone手机上转的,可是我要在服务器上转。搞了一个星期,没有一点进展。后来向同事请教,他们推荐我用ffmpeg,说这是个非常强大的工具,几乎可以转任何格式的音视频,格式工厂都是用的他这个内核。而我试了一下格式工厂,也确实可以转caf格式。终于柳暗花明。这也使我认识到团队的力量,三个臭皮匠还订一个诸葛亮呢,有问题还得和别人多交流。

    言归正传。为了让大家不再走弯路,介绍一下我是怎么做的,其实很简单。我是用socket上传,当有一个文件上传完毕,如果是音频文件,我就把他转成mp3格式。不管是amr格式还是caf格式,以及任何音频格式,都是可以的。

    首先,下载ffmpeg.exe,很容易搜到的,可以从官网上下。因为我们只是用来转码,就不介绍他的工作原理啦什么的了。下载以后,在程序里面直接执行这个ffmpeg.exe就可以了。转换的方法代码如下:


/**
	 * 将上传的录音转为mp3格式
	 * @param webroot 项目的根目录
	 * @param sourcePath 文件的相对地址
	 */
	public stat
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值