使用FFMPEG将speex音频格式转为mp3和ogg格式

原创 2016年05月31日 22:48:25

场景需要:服务端需要将从客户端APP上传上来的speex格式的语音格式转为mp3和ogg两种格式,这样就可以支持PC所有浏览器(通过html5标签)播放。

软件下载:

1、ffmpeg: wget https://github.com/FFmpeg/FFmpeg/releases/download/n3.0/ffmpeg-3.0.tar.gz

2、lame:wget http://nchc.dl.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz(mp3编解码器)
3、libogg:wget http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz(libvorbis需要依赖)
4、libvorbis:wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz(ogg编解码器)

5、speex:wget http://downloads.xiph.org/releases/speex/speex-1.2rc1.tar.gz(speex编解码)

解压lame、libogg、libvorbis、speex

tar -xvf 对应的包名

eg:tar -xvf  lame-3.99.5.tar.gz

进入对应包目录编译以上4个依赖

eg:

cd lame-3.99.5

./configure --prefix=/usr/local/   --enable-shared

make

make install

以上4个包都编译安装完成后解压ffmpeg

tar -xvf ffmpeg-3.0.tar.gz

cd ffmpeg

./configure --prefix=/usr/local/ffmpeg --disable-yasm --enable-libspeex --enable-libmp3lame --enable-libvorbis --enable-shared

make

make install

ok 全部完成!


说明:ffmpeg 本身有支持了一些音视频格式的编解码器,但是由于版权问题并不是所有的都支持。例如对于mp3,ffmpeg只有解码包,没有编码包。这就意味着只能将mp3转为其他格式,而不能将其他格式的音视频转为mp3,所以我们才需要手动来安装额外的libmp3lame这个包。

查看ffmpeg本身支持编解码格式可以通过./configure --help来查看。

这篇文章对ffmpeg的编译选项有详细的说明(http://www.cnblogs.com/wainiwann/p/4204230.html);

如果需要转为其他格式的,如果ffmpeg默认没安装对应的编解码包,可自行下载安装,再重新编译安装ffmpeg即可。

这篇文章总结了多种格式编解码包(http://www.java123.net/974237.html)


最后验证是否可以转码:./usr/local/bin/ffmpeg -i input.speex output.mp3


注:ffmpeg 2.x版本有重大bug.建议安装3.0


补充:安装中间可能遇到一些问题,

1、speex not found using pig-config

解决办法:

vi /etc/profile

添加

export PKG_CONFIG=/usr/bin/pkg-config

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

保存后执行

source /etc/profile

2、

*** If you have an old version installed, it is best to remove it, although

*** you may also be able to get things to work by modifying LD_LIBRARY_PATH、

configure: error: must have Ogg installed!

解决方法:

vi /etc/ld.so.conf

添加 /usr/local/lib

保存后执行 ldconfig





相关文章推荐

利用ffmpeg将微信speex格式转为wav或mp3

利用speex_decode插件进行微信speex文件转换为wav格式的音频文件1.服务器上安装speex库yum install speex-devel2.下载speex源码进入路径后make;ma...

微信的研究及sppeex库的使用(整理)

下面是个人研究微信android 4.2版本的一些结果,不一定正确。 1. 微信android使用的是amr编码;iphone未知,估计是aac,转码会在微信服务器上完成。android上使用了spe...

开源语音格式speex教程

这两天在折腾语音的东西,实现类似微信上对讲机的功能,做了两个Demo,一种使用lib-amr库用amr格式实现的,这个网上有现成的教程,所以还是比较好实现的。另一个是用的speex库,这个提的人很多,...

深入剖析Android音频之AudioTrack

播放声音可以用MediaPlayer和AudioTrack,两者都提供了java API供应用开发者使用。虽然都可以播放声音,但两者还是有很大的区别的。其中最大的区别是MediaPlayer可以播放多...

深入剖析Android音频之AudioTrack

播放声音可以用MediaPlayer和AudioTrack,两者都提供了java API供应用开发者使用。虽然都可以播放声音,但两者还是有很大的区别的。其中最大的区别是MediaPlayer可以播放多...

微信高音质speex格式转为mp3详细教程

安装ffmpefFFMpeg官方下载地址:http://ffmpeg.org/download.html yasm:http://yasm.tortall.net/Download.html la...

FFmpeg支持的音频和视频编解码格式

1.音频格式 Name Encoding Decoding Comments 8SVX exponential   X 8SVX fibonacci   ...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

视频格式转化(将MP4格式转换成ogg格式)

首先下载ffmpeg,输入网址www.ffmpeg.org(开源网址) 进入windows中进行下载windows版本的文件 然后在DOS命令下cd 进入下载后(比如E:\ffmpeg-20160...

Html 5 video/audio 格式转换 ogg

Html5 开始支持video和audio标签,但是各个浏览器支持的格式不一样,见下图 Codec support in modern desktop browsersBrowserOgg Vorbi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用FFMPEG将speex音频格式转为mp3和ogg格式
举报原因:
原因补充:

(最多只允许输入30个字)