安裝FFMPEG前,先要安裝其依賴的第三方編碼器庫,這樣才能支持多種格式的轉換。
所以要先裝好編碼器庫後,最後裝FFMPEG。
1. 安裝前準備編譯的環境
yum install -y automake autoconf libtool gcc gcc-c++
2. 把要用的jar包都拷到一個目錄下/home/software
3. 在/etc/ld.so.conf裏面加入
/usr/local/bin
/usr/local/lib
加入這兩句的目的:讓後面安裝的第三方編碼庫等存放到我們制定的目錄中去
/usr/local/bin
/usr/local/lib
4. 解壓並安裝一系列第三方編碼器庫和組件,要注意的是:不是所有的命令都一樣,有不同的地方,裝完後,記得執行命令:ldconfig,作用:ffpmeg能按/etc/ld.so.conf配置找到安裝的第三方編碼器庫。
安裝lame
1)解壓:tar -zxvf lame-3.99.5.tar.gz
2)cd lame-3.99
3)/configure --enable-shared
4) make
5) make install
6) ldconfig
安裝yasm
1)解壓:tar -zxvf yasm-1.2.0.tar.gz
2)cd yasm-1.2
3)/configure --enable-shared
4) make
5)make install
6) ldconfig
安裝xvidcore (注意目錄位置,不在直接的解壓後的文件下)
1) tar zvxf xvidcore-1.1.3.tar.gz
2)cd xvidcore-1.1.3/build/generic
3) ./configure
4)make
5) make install
6) ldconfig
安裝x264 (注意格式爲.tar.bz2)
1) bunzip2 last_x264.tar.bz2
2) tar xvf last_x264.tar
3) cd x264-snapshot-20121030-2245/
4) ./configure --enable-shared
5) make
6) make install
7) ldconfig
安裝a52dec
1)解壓:tar -zxvf a52dec-0.7.4.tar.gz
2)cd a52dec
3) /configure --enable-shared=PKGS && make && make install
4)ldconfig
安裝 faac
1) 解壓:tar -zxvf faac-1.26.tar.gz
2)cd faac
3)/bootstrap
4)/configure
5)make && make install
6) ldconfig
安裝 faad2
1)解壓:tar -zxvf faad2-2.6.1.tar.gz
2)cd faad2
3) ./bootstrap
4) ./configure
5) make && make install
6) ldconfig
安裝 vo_aacenc http://archive.ubuntu.com/ubuntu/pool/universe/v/vo-aacenc/vo-aacenc_0.1.3.orig.tar.gz
1)解壓:tar -zxvf vo-aacenc_0.1.3.orig.tar.gz
2)cd vo-aacenc_0.1.3
4) ./configure --enable-shared
5) make && make install
6) ldconfig
到此ffmpeg的編碼庫也裝完了。
安裝ffmpeg
tar zvxf ffmpeg-1.0.tar.gz
cd fempeg執行下面的語句:
./configure --enable-gpl --enable-postproc --enable-nonfree --enable-postproc --enable-swscale --enable-avfilter --enable-pthreads --enable-libxvid --enable-libx264 --enable-libmp3lame --enable-libfaac --enable-libvo-aacenc
make && make install
ldconfig
到此ffmpeg也裝完了,直接執行命令ffmpeg,出現ffmpeg版本信息以及執行命令幫助就說明裝完了。
ffmpeg -i /usr/09.mp4 -y -acodec libmp3lame -ab 128 -ar 22050 -vcodec h264 -b 96k -r 25 /usr/01.flv 執行轉換試試行不行
可能出現的問題:
執行ffmpeg時,報錯
Unknown encoder ****
原因,對應的編碼庫沒有裝好,或者ffmpeg沒有裝載到他
首先到/usr/local/bin 和 /usr/local/lib 目錄下查看報錯的沒有的庫文件是否存在,有的話,執行ldconfig,再ffmpeg就能解決問題(注意,我們一開始配置的文件/etc/ld.so.conf裏的路徑)。如果指定的庫文件沒有存在,就是對應的編碼庫沒安裝好,找到對應的軟件解壓後文件夾,在前面的安裝步驟裏的./confgure 後
執行:
ldconfig
make clean && make && make install
重新安裝一次
現有文件裏的編碼庫我在32位和64位的linux 系統中都安裝成功了。
檢查ffmpeg版本發佈日誌對支持編碼庫情況,比如h264編碼是ffmpeg0.9版本纔開始有的,ffmpeg-0.6下是不支持的。所以需要高版本額ffmpeg再重新編譯。
補充:
安裝vo-aacenc:
1
2
3
4
5
6
7
|
tar xzvf vo-aacenc-0.1.2.tar.gz cd vo-aacenc-0.1.2 ./configure --enable-shared make make install ldconfig |