简单介绍
FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能[1],包含了libavcodec ─这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。(来自维基百科)
安装前提
由于在centos下使用 yum install ffmpeg 是找不到安装包的,所以需要通过其他方法来安装:(以下摘自网络http://aqbjzxl.iteye.com/blog/1408478)
01 | 一、安装ffmpeg |
02 | 操作系统:centos 5.6 |
03 | (一)安装编译环境 |
04 | #yum install -y automake autoconf libtool gcc gcc-c++ |
05 | (二)安装所需程序库的RPM包到 centos(因为centos自带的库中没有ffmpeg包,这里相当于是扩展) |
06 | view plaincopy to clipboardprint? |
07 | #rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm |
08 |
09 | (三)安装 Install ffmpeg 等模块 |
10 | yum -y install ffmpeg ffmpeg-devel |
本人就是使用以上方法安装成功的。
当然你也可以选择编译源码安装,只需要在安装之前,将 ffmpeg 需要的支持库安装好就是了,我之所以选择这种安装方式就是不想再去逐个编译各种库。
安装好之后可以使用下面命令查看:
1 | ffmpeg |
2 | ffmpeg -codecs /*查看支持的解码库*/ |
安装 ogg 音频支持
ogg 格式在主要用于 html5 音频格式,其文件相比 mp3 和 wav 格式要小很多,当然比不上 amr 的语音格式小,可惜 html5 不支持amr的播放。
首先你需要下载 ogg 的安装包 http://xiph.org/downloads/ 你需要下载 libogg-1.3.1.tar.gz 和 libvorbis-1.3.3.tar.gz ,下载完成之后解压,俩个包都可以使用如下命令安装,进入解压目录,执行如下命令。
1 | ./configure --prefix=/usr |
安装好之后,你的机器就添加了对 ogg 音频的支持。这里你需要先安装 libogg,因为 libvorbis 需要 libogg 的支持。
重新编译 ffmpeg
接下来就需要重新编译安装一下 ffmpeg , 这时候你需要去下载一个 ffmpeg 的源码包,在开源中国软件下载站我已经将 ffmpeg 的下载添加进去了,http://dl.oschina.net/soft/ffmpeg 在这里你需要下载 0.6.7 版,如果使用 2.1.1 版的话,有一些编译选项可能就不支持了,需要一个个移除。
运行
1 | ffmpeg |
拷贝如下信息
1 | configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/ man --incdir=/usr/include --disable-avisynth --extra-cflags= '-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' -- enable -avfilter -- enable -libdirac -- enable -libfaac -- enable -libfaad -- enable -libfaadbin -- enable -libgsm -- enable -libmp3lame -- enable -libopencore-amrnb -- enable -libopencore-amrwb -- enable -libx264 -- enable -gpl -- enable -nonfree -- enable -postproc -- enable -pthreads -- enable -shared -- enable -swscale -- enable -vdpau -- enable -version3 -- enable -x11grab |
当然你可以将不需要的移除,
在 ffmpeg 源码目录下运行
1 | ./configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/ man --incdir=/usr/include --disable-avisynth --extra-cflags= '-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' -- enable -avfilter -- enable -libdirac -- enable -libfaac -- enable -libfaad -- enable -libfaadbin -- enable -libgsm -- enable -libmp3lame -- enable -libopencore-amrnb -- enable -libopencore-amrwb -- enable -libx264 -- enable -gpl -- enable -nonfree -- enable -postproc -- enable -pthreads -- enable -shared -- enable -swscale -- enable -vdpau -- enable -version3 -- enable -x11grab -- enable -libvorbis |
最后的一项是 --enable-libvorbis ,这个就是加入 ogg 的音频支持。
编译完成之后 ,运行
1 | make && make install |
就完成 ffmpeg 的安装了
简单测试
可以使用如下命令测试 amr 到 ogg 的转码:
1 | ffmpeg -i xxx.amr -f ogg -acodec libvorbis -ac 2 -ab 128k -ar 44100 xxx.ogg |
可以使用如下命令测试 amr 到 mp3 的转码:
1 | ffmpeg -i xxx.amr xxx.mp3 |
可见 ffmpeg 对 mp3 的支持还是好很多的。
转码成功可以看到类似下面的输出:
转码的具体参数请查看help。