2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 使用ffmpeg对mp3格式的音频文件类型转换 截取及合并

使用ffmpeg对mp3格式的音频文件类型转换 截取及合并

时间:2021-07-10 03:47:52

相关推荐

使用ffmpeg对mp3格式的音频文件类型转换 截取及合并

FFmpeg简介

FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec ─这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。

FFmpeg命令

一、mp3截取

ffmpeg -y -i test.mp3 -ss 00:00:00 -t 00:00:03 -acodec copy output_mp3.mp3参数说明-y :允许覆盖-i test.mp3: 源文件-ss 00:00:00: 开始时间-t 00:00:03: 截取音频时间长度-acodec copy:编码格式复制

二、合并两个mp3文件为一个

ffmpeg -i "concat:file1.mp3|file2.mp3" -acodec copy merge.mp3file1.mp3:源文件1file2.mp3:源文件2merge.mp3:合并后的目标文件

三、mp3转pcm

ffmpeg -y -i test.mp3 -acodec pcm_s16le -f s16le -ac 2 -ar 16000 16k.pcm参数说明-y: 允许覆盖-i test.mp3: 源文件-acodec pcm_s16le: 编码器-f s16le: 强制文件格式-ac 2: 双声道-ar 16000: 采样率

四、pcm转mp3

ffmpeg -y -f s16be -ac 2 -ar 16000 -acodec pcm_s16le -i 16k.pcm new_mp3.mp3参数说明-y: 允许覆盖-f s16le: 强制文件格式-ac 2: 双声道-ar 16000: 采样率-acodec pcm_s16le: 编码器-i test.mp3: 源文件

public class Mp3ToPcm {public static StringchangeMp3ToPcm(String sourcePath){String webroot ="E:\\ffmpeg\\bin";String targetPath ="E:\\pcm\\test.pcm";Runtime run =null;try {run = Runtime.getRuntime();long start=System.currentTimeMillis();System.out.println(new File(webroot).getAbsolutePath());//mp3转pcmProcess p=run.exec(new File(webroot).getAbsolutePath() +"/ffmpeg -y -i "+sourcePath+" -acodec pcm_s16le -f s16le -ac 2 -ar 16000 "+targetPath);//释放进程p.getOutputStream().close();p.getInputStream().close();p.getErrorStream().close();p.waitFor();long end=System.currentTimeMillis();System.out.println(sourcePath+" convert success, costs:"+(end-start)+"ms");}catch (Exception e) {e.printStackTrace();}finally{//run调用lame解码器最后释放内存run.freeMemory();}return null;}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。