FFmpeg在官方網(wǎng)站中提供了已經(jīng)編譯好的可執(zhí)行文件估蹄。FFmpeg是開源,所有可以根據(jù)自己的需求進(jìn)行手動(dòng)編譯。
Windows平臺編譯
FFmpeg在Windows平臺中的編譯需要使用MinGW-w64,MinGW是Minimalist GNU for Windows的縮寫呢铆,它提供一系列的工具鏈來輔助編譯Windows的本地化程序。
MinGW-w64單獨(dú)使用起來比較麻煩蹲缠,但是可以與MSYS環(huán)境配合使用棺克,MSYS主要工作是為UNIX 在Windows的功能。顯而易見這是一個(gè)仿生UNIX環(huán)境的Windows工具集
1线定、下載FFmpeg源碼
2娜谊、準(zhǔn)備MinGW-w64 + MSYS環(huán)境
3、進(jìn)入FFmpeg源碼目錄斤讥,執(zhí)行./configure
4纱皆、./configure執(zhí)行成功后,執(zhí)行make芭商,這是一個(gè)比較漫長的過程
5派草、執(zhí)行make install,到此為止,F(xiàn)Fmpeg在Window上的編譯一全部完成铛楣,執(zhí)行./ffmpeg.exe -h來驗(yàn)證編譯結(jié)果
注意:
以上編譯出來的只是最簡單的ffmpeg近迁,并沒有H264、字母等編碼的支持簸州,如需要支持更多的模塊和參數(shù)鉴竭,還需要進(jìn)行更詳細(xì)的定制,后期會有文章詳細(xì)介紹岸浑,敬請期待搏存,手動(dòng)滑稽。
Linux平臺編譯
1矢洲、下載FFmpeg源碼
2璧眠、進(jìn)入FFmpeg源碼目錄,執(zhí)行./configure
3、./configure執(zhí)行成功后蛆橡,執(zhí)行make,這是一個(gè)比較漫長的過程
4掘譬、執(zhí)行make install
默認(rèn)編譯FFmpeg的時(shí)候泰演,需要用到y(tǒng)asm匯編器對FFmpeg中的匯編部分進(jìn)行編譯。如不需要用到匯編部分的時(shí)候葱轩,則可以不安轉(zhuǎn)yasm睦焕,如果執(zhí)行默認(rèn)配置的時(shí)候,會提示錯(cuò)誤:
錯(cuò)誤提示很清楚靴拱,可以使用--disable-yasm 來取消yasm編譯配置垃喊。執(zhí)行成功如下圖
OS X 平臺編譯
在OS X平臺上使用的編譯工具鏈為LLVM,另外還需要安裝yasm匯編編譯工具袜炕,否則在生成Makefile時(shí)會報(bào)錯(cuò)誤提示未安裝yasm工具本谜。
除了環(huán)境不同,步驟和Linux基本相同
FFmpeg的源碼目錄
講了半天編譯偎窘,大家想必還不知道FFmpeg源碼目錄長啥樣把:看下圖
請忽略android這個(gè)目錄和build_android.sh腳本乌助,這兩個(gè)不是源碼目錄內(nèi)容,android這目錄下放的是我用build_android.sh腳本執(zhí)行編譯生成給android使用的so動(dòng)態(tài)庫陌知。