FFmpeg+libx264+libfdk_aac 編譯

最近有時間整理一下自己之前學習FFmpeg的相關知識點瀑构,特別是在編譯FFmpeg的過程中因為各種原因很容易出現各種各樣的問題裆针,現在這塊做個總結寺晌。

編譯libx264

首先編譯libx264

第一步:下載libx264源碼:?libx264下載地址

第二步:下載libx264-iOS的編譯腳本另假,libx264編譯腳本下載地址

可以看到己莺,腳本上指定的源代碼目錄是腳本目錄下的x264文件夾凌受,所以我們將下載的libx264的文件夾名字修改為x264, 并將文件夾移動到腳本所在目錄下阵子,當然也可以修改SOURCE的內容。

第三步:然后./build-x264.sh執(zhí)行腳本胜蛉,很不幸的是報錯了挠进,原因是沒有發(fā)現yasm匯編編譯器色乾,yasm是x86架構下的一個匯編器,ffmpeg默認是使能的领突。沒有該匯編器的話暖璧,后面編譯ffmpeg時會報如下錯誤:

可以添加上?--disable-asm,然后再重新編譯君旦,但是要指定架構類型澎办,架構類型不能含有x86架構,否則編譯出來的x264庫在和FFmpeg交叉編譯的時候會報

ERROR: libx264 not found

nasm -v

亦可以升級nasm金砍,通過nasm -v 查看版本

加上--disable-asm后重新編譯

x264-iOS就是通用架構局蚀,里面包含了thin-x264內的所有架構

可以通過lipo -info /Users/wangxun/Downloads/x264-ios-master/x264-iOS/lib/libx264.a查看架構信息

編譯libfdk-aac

第一步:下載libfdk-aac源碼:libfdk-aac源碼

第二步:brew install automake libtool 運行該命令,安裝automake和libtool

第三步: 下載libfdk-aac的編譯腳本:libfdk-aac編譯腳本

打開libfdk-aac編譯腳本

移動libfdk-aac的源代碼文件夾至腳本目錄下并修改名稱為fdk-aac-0.1.5恕稠,或者修改SOURCE的內容使之與你下載的aac源碼的文件同名琅绅。

第四步:切換到目錄fdk-aac-0.1.5目錄下,并執(zhí)行./autogen.sh

第五步:切換到上層目錄鹅巍,添加權限并執(zhí)行build-fdk-aac.sh

至此libfdk-aac 編譯完成

查看libfdk-aac.a信息
編譯完成生成的aac的靜態(tài)庫

編譯FFmpeg

第一步:下載FFmpeg iOS編譯腳本:FFmpeg iOS編譯腳本下載地址

第二步:將以上編譯的fdk-aac和x264移動到編譯腳本下奉件,只需要移動最后一步生成的包含頭文件及l(fā)ib文件的目錄。

第三步:編輯FFmpeg iOS 編譯腳本昆著,取消fdk-aac及x264的注釋县貌,并修改路徑指向對應的目錄,如下圖所示:

第四步:此時如果我們執(zhí)行build-ffmpeg.sh凑懂,如果沒有FFmpeg源代碼將會先進行FFmpeg源代碼的下載

如果FFmpeg源代碼為4.0煤痕,

接下來會出現以下問題,如圖所示:

arm64無問題接谨,但是armv7和armv7s會遇到此問題


解決方案

可能還會遇到的問題

此時將DEPLOYMENT_TARGET改為8.0之上即可

可能在編譯的過程中還會遇到?C compiler test failed的問題摆碉,看下日志 ios/ffmpeg-armv7/config.log 中發(fā)現報錯說 iphoneos 找不到

SDK "iphoneos" cannot be located

此問題是Xcode的版本路徑問題,可能是因為安裝多版本的Xcode導致的脓豪,也可能是Xcode前后版本的位置不同巷帝,路徑沒有指定造成的

報錯原因

查找原因:

發(fā)現是這個Xcode路徑判斷錯誤

mac$ xcodebuild -showsdks

xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

解決方法:給Xcode命令行工具指定路徑

mac$ sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/


FFmpeg-iOS的使用

打開Xcode,新建一個single view project扫夜,然后添加對應的lib文件并修改頭文件搜索目錄



但是除了這些之外楞泼,我們還需要添加其他的文件,如下所示:

1?libbz2.tbd

2?libz.tbd

3?libiconv.tbd

4?CoreMedia.framework

5?VideoToolbox.framework

6?AudioToolbox.framework

7?AVFoundation.framework


測試編譯

到此整個FFmpeg的編譯到使用已完成,在此過程中遇到的問題還是比較多的笤闯,特別是FFmpeg版本不同堕阔,編譯可能遇到的問題也不同,可能在此沒有一一記錄颗味。不過在此過程中發(fā)現如果只編譯真機arm64的架構會比較簡單遇到的問題也比較少超陆。


參考文章:

iOS編譯libx264+libfdk-aac+FFmpeg

FFmpeg-iOS-build-script

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市浦马,隨后出現的幾起案子时呀,更是在濱河造成了極大的恐慌张漂,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谨娜,死亡現場離奇詭異鹃锈,居然都是意外死亡,警方通過查閱死者的電腦和手機瞧预,發(fā)現死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門屎债,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人垢油,你說我怎么就攤上這事盆驹。” “怎么了滩愁?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵躯喇,是天一觀的道長。 經常有香客問我硝枉,道長廉丽,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任妻味,我火速辦了婚禮正压,結果婚禮上,老公的妹妹穿的比我還像新娘责球。我一直安慰自己焦履,他們只是感情好,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布雏逾。 她就那樣靜靜地躺著嘉裤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪栖博。 梳的紋絲不亂的頭發(fā)上屑宠,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天,我揣著相機與錄音仇让,去河邊找鬼典奉。 笑死,一個胖子當著我的面吹牛妹孙,可吹牛的內容都是我干的秋柄。 我是一名探鬼主播获枝,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼蠢正,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了省店?” 一聲冷哼從身側響起嚣崭,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后鱼蝉,有當地人在樹林里發(fā)現了一具尸體煌贴,經...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年说榆,在試婚紗的時候發(fā)現自己被綠了虚吟。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡签财,死狀恐怖串慰,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情唱蒸,我是刑警寧澤邦鲫,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站神汹,受9級特大地震影響庆捺,放射性物質發(fā)生泄漏。R本人自食惡果不足惜屁魏,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一滔以、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧氓拼,春花似錦醉者、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至呈队,卻和暖如春剥槐,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背宪摧。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工粒竖, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人几于。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓蕊苗,卻偏偏與公主長得像,于是被迫代替她去往敵國和親沿彭。 傳聞我的和親對象是個殘疾皇子朽砰,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內容