linux 下安裝ffmpeg 遇到問題處理
今天公司要在程序裏面實現記錄視頻上傳記錄,需要視頻播放一秒做記錄,我將安裝過程記錄下來以作分享
1,安裝包:
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
2,安裝部署
首先安裝 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
保存退出即可
到此安裝完成