linux安裝編譯安裝 ffmpeg,解決linux下ffmpeg壓縮的mp4無法在網頁播放問題

ffmpeg官網下載頁面:http://www.ffmpeg.org/download.html 

github下載頁面  https://github.com/FFmpeg/FFmpeg/releases

我下載的是當前最新穩定版4.2.3:http://www.ffmpeg.org/releases/ffmpeg-4.2.3.tar.gz

下載的ffmpeg-4.2.3.tar.gz文件13M ,安裝後311M

在windows下目前最新版的ffmpeg自帶了h264,所以在windows下壓縮的mp4在網頁播放是沒有問題的。然而在linux下需要安裝h264解壓的mp4文件才能在網頁上播放要增加參數指定: -vcodec libx264,命令如下:

ffmpeg -i  /home/www/source.mp4 -vf scale=1280:720  -b:v 800k -maxrate 900k -vcodec libx264 /home/www/output.mp4

注意事項:

1.如果執行上面命令會出錯,說明你沒有安裝x264,請參考下面安裝步驟二

2.如果已經安裝了ffmpeg的,但是沒有安裝x264的,ffmpeg需要重新安裝,可以 find / -name "libx264.so.160" 查找是否有安裝

 

1.ffmpeg安裝準備工作(安裝nasm)

如果不安裝會報錯:nasm/yasm not found or too old. Use --disable-x86asm for a crippled build.

yum  -y  install yasm      (Yasm是一個完全重寫的NASM彙編。它支持x86和AMD64指令集。)

如果安裝了版本太低,會報錯nasm/yasm is too old 就安裝最新版本的  https://www.nasm.us/

我這裏安裝的是目前nasm最新的版本:

wget https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.gz

tar -zxvf  nasm-2.14.02.tar.gz

cd nasm-2.14.02

./configure 

make &&make install 

echo $? 或者 whereis nasm 查看是否安裝成功
成功輸出:0 或者 nasm: /usr/local/bin/nasm

2.安裝H264(必須的不然在linux下ffmpeg處理的mp4文件無法在網頁播放)

git clone https://code.videolan.org/videolan/x264.git

cd  x64

./configure --prefix=/usr/local/x264 --enable-shared --enable-static --disable-asm

make  && make  install

echo $?  確認安裝是否成功

3.安裝ffmpeg,解壓下載的ffmpeg文件,切換到剛下載的ffmpeg目錄

 

如果已經安裝過ffmpeg需要重新安裝的情況,執行make clean

安裝到/usr/local/ffmpeg目錄

./configure --enable-gpl --enable-libx264 --prefix=/usr/local/ffmpeg  
make && make install     大約20分鐘吧,我的雲服務器(入門級)

編譯完成後:cd  /usr/local/ffmpeg/bin/  

 

加兩條軟連接(然後重新連接下命令行窗口)

ln  -s /usr/local/ffmpeg/bin/ffmpeg /usr/bin/ffmpeg

ln  -s /usr/local/ffmpeg/bin/ffprobe /usr/bin/ffprobe

輸入 ffmpeg --help

沒出錯就表示安裝成功,如果出現錯誤:

ffmpeg: error while loading shared libraries: libx264.so.160: cannot open shared object file: No such file or directory

查找libx264.so.160在那個位置,如果沒有的話說明剛纔第二步的h264沒有安裝成功

 find / -name "libx264.so.160" 

  
/software/x264/libx264.so.160
/usr/local/lib/libx264.so.160

找到 libx264.so.160 , vim /etc/ld.so.conf文件把ffmpeg的lib目錄加進去,我的ffmpeg安裝在/usr/local/ffmpeg,所以就把目錄/usr/local/ffmpeg/lib加進去

vim /etc/ld.so.conf


include ld.so.conf.d/*.conf
/lib
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/ffmpeg/lib #把你的fffmpeg安裝目錄下的lib目錄加進去

讓配置生效: ldconfig

[root@email bin]# ffmpeg -version 

這樣就說明安裝成功了

FFMPEG使用:https://blog.csdn.net/qq_27517377/article/details/106410995

 

參考文章:

動態庫問題:https://blog.csdn.net/baidu_38172402/article/details/80875074

FFMPEG使用H264:http://trac.ffmpeg.org/wiki/Encode/H.264

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章