今天公司要在程序里面实现记录视频上传记录,需要视频播放一秒做记录,我将安装过程记录下来以作分享
ffmpeg 下载链接:http://www.ffmpeg.org/download.html
x264 下载链接:http://download.videolan.org/pub/videolan/x264/snapshots/
文件名:
last_stable_x264.tar.bz2
yasm下载链接:http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
首先安装 yasm
tar -xvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
配置
./configure
安装
make && make install
如果服务器连接互联网也可在线安装
ubuntu:apt-get install yasm
centos: yum install -y yasm
安装第三方库:x264
不安装H.264第三方库使用H.264的时候会报错Cannot load libcuda.so.1
文件名:
last_stable_x264.tar.bz2
tar -xvf last_stable_x264.tar.bz2
cd x264-snapshot-20180926-2245-stable
编译安装
配置
./configure --enable-shared --disable-asm
安装
make && make install
安装 ffmpeg
1.解压缩
tar -xvjf ffmpeg-3.4.1.tar.bz2
2.配置ffmpeg
./configure --enable-shared --enable-libx264 --enable-gpl --prefix=/monchickey/ffmpeg
3.安装ffmpeg
make && make install
编译过程很慢,完成之后执行 cd /monchickey/ffmpeg/ 进入安装目录,查看一下发现有bin,include,lib,share这4个目录,其中bin是ffmpeg主程序二进制目录,include是C/C++头文件目录,lib是编译好的库文件目录,share是文档目录
cd /monchickey/ffmpeg/bin
./ffmpeg -version
默认情况下一般会报libavdevice.so.57: cannot open shared object file: No such file or directory 错误
解决办法:
vim /etc/ld.so.conf.d/ffmpeg.conf
然后添加一行内容: /monchickey/ffmpeg/lib 之后保存并退出
ldconfig 使配置生效,
现在再次执行 ./ffmpeg -version 显示就正常了
然后可以根据需要将bin目录添加至环境变量中以保证任何时候都能使用ffmpeg命令
如果是ubuntu系统到此就正常使用了
如果是redhat centos 系统执行 仍然报错
error while loading shared libraries: libx264.so .155: cannot open shared object file: No such file or directory
因为libx264.so .155 在/usr/local/lib下
处理方法:vi /etc/ld.so.conf
在下面追加上
/usr/local/lib
保存退出即可
到此安装完成