时间: 2018-01-23 00:09 栏目: Linux 浏览: 21322 赞: 24 踩: 8 字体: 大 中 小
以下为本篇文章全部内容:
因为业务需求,需要把微信上面的录音下载到服务器进行统一格式转换处理,而linux下处理音视频无疑ffmpeg是首选,因此我也不例外到选择了款神器。
首先服务器采用了Centos64位到操作系统,估计是64位到缘故,本身在Centos到源里面就没有ffmpeg到源,因此我们要么通过第三方源安装,要么通过编译安装。
身为一个提倡动手的我当然选择编译安装。需要安装的扩展库可选的有太多,我这里就根据我使用到到来安装,因为我只处理音频而已,所以我的主要扩展库就一个mp3。
第一步安装依赖
yum install -y autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel
第二步安装Yasm
git clone --depth 1 git://github.com/yasm/yasm.git cd yasm autoreconf -fiv ./configure make install make distclean
第三步安装libmp3
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz tar xzvf lame-3.99.5.tar.gz cd lame-3.99.5 ./configure make make install make distclean
第四步安装ffmpeg
wget http://ffmpeg.org/releases/ffmpeg-3.2.4.tar.bz2 tar xvf ffmpeg-3.2.4.tar.bz2 cd ffmpeg-3.2.4 ./configure --prefix=/usr/local/ffmpeg/ --enable-shared --enable-libmp3lame make make install
等待编译安装完成。使用下面命令可以将一个amr的音频文件转换成mp3
/usr/local/ffmpeg/bin/ffmpeg -i /root/1.amr -acodec mp3 /root/1.mp3
执行命令的过程中有可能出现:/usr/local/ffmpeg/bin/ffmpeg: error while loading shared libraries: libavdevice.so.57: cannot open shared object file: No such file or directory
这样的错误,这个错误是因为动态链接库没有找到导致的。也有可能是64位操作系统的原因。这里位给出解决办法,就是修改动态链接库配置文件/etc/ld.so.conf添加一句话/usr/local/ffmpeg/lib当然这个要根据实际情况而定,就是安装的路径。
修改配置文件
vim /etc/ld.so.conf
加入下面一句话
/usr/local/ffmpeg/lib
重新加载配置文件
ldconfig
到此该问题得以解决。
总赞数量:18274
总踩数量:128087
文章数量:29