CentOS 6.4-64位下編譯ffmpeg幾個簡單步驟:
1.編譯前環境准備;
2.下載源碼;
3.編譯,安裝;
-----------------------------------------------
下面就一個一個的敘述下:
一,安裝必要所需環境:
命令行:
# yum install autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig zlib-devel
//確保機器可以聯網
# yum install yasm (也可以不安裝編譯的時候禁掉就行)
二,安裝x264支持庫:
下載libx264源碼,解壓本地(啰嗦。。。)
cd 進入 x264 目錄
命令行: # ./configure --enable-shared --disable-asm
# make
#make install
(也可以依賴x264的靜態庫,編譯好之后把頭文件和.a拷貝到 /usr/local/include 和lib下)
三,安裝rtmp支持庫:
下載rtmp源碼,解壓本地
cd 進入 rtmp 目錄
在編譯之前可以先禁用rtmp 內openssl 模塊:
編輯 rtmp目錄 和 librtmp目錄 內的Makefile 文件注釋: #CRYPTO=OPENSSL
然后編譯rtmp
命令行:# make
# make install
四,編譯安裝ffmpeg:
下載ffmpeg源碼,解壓本地
cd 進入 ffmpeg 目錄 配置 configure
注:在執行configure的時候如果提示“librtmp not found” 的錯誤,可以注釋掉 ffmpeg目錄下 configure 文件:
注釋 “#enabled librtmp && require_pkg_config librtmp librtmp/rtmp.h RTMP_Socket -lws2_32 -lwinmm” 該行,等配置之后在手動添加make文件內。
下面編譯:
命令行:# ./configure --enable-static --disable-shared --disable-yasm --enable-memalign-hack --enable-gpl --enable-libx264 --enable-librtmp --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --prefix=/usr/local
注:如果上面注釋了rtmp哪一項的話,這里需要手動修改下 ffmpeg目錄下的 config.mak 文件:
找到 “EXTRALIBS= ” 這一項 ,然后在其最后 添加 -lrtmp
繼續編譯:
命令行:#make
編譯成功之后ffmpeg就算編譯完成了,你可以執行以下 ./ffmpeg
如果提示 libx264 庫找不到的話,你可以手動從 x264 目錄拷貝相應庫到 /usr/lib/ 目錄下 然后命令行執行:ldconfig
安裝:
命令行:#make install