ijkplayer直播框架基于ffmpeg, 同時(shí)支持 Android 和 iOS,集成過程中遇到很多坑熊痴,網(wǎng)上也有各種資料他爸,教程詳細(xì)記錄下集成過程。
一果善、ijkPlayer下載地址
ijkPlayer: ?https://github.com/Bilibili/ijkplayer
ijkPlayer目錄文件結(jié)構(gòu)如圖:
打開工程編譯報(bào)錯(cuò)錯(cuò)誤信息如下:
因?yàn)閘ibavformat是ffmpeg庫中的文件诊笤,所以需要導(dǎo)入ffmpeg庫
二:編譯ijkPlayer
如何導(dǎo)入ffmpeg庫可以查看ijkPlayer文件目錄結(jié)構(gòu)總的README.md文件中有詳細(xì)步驟
大致就是需要執(zhí)行init-ios.sh腳本來下載ffmpeg源碼
ffmpeg下載時(shí)間比較長耐心等待,執(zhí)行完腳本后巾陕,就會(huì)發(fā)現(xiàn)ijkplayer中有ffmpeg了
再次編譯Demo依然報(bào)相同的錯(cuò)誤讨跟,原因是剛剛僅僅是下載源碼,但是源碼并沒有參與編譯鄙煤,需要將源碼編譯成可執(zhí)行文件晾匠。
執(zhí)行后效果圖:
編譯后生成.a文件
三:打包IJKMediaFramework.framework框架
集成有兩種方法
1:按照IJKMediaDemo工程中那樣, 直接導(dǎo)入工程IJKMediaPlayer.xcodeproj
2:打包IJKMediaFramework.framework框架
方法:把IJKMediaPlayer打包成靜態(tài)庫,在導(dǎo)入到自己的項(xiàng)目中。
首先打開工程IJKMediaPlayer.xcodeproj
打包靜態(tài)庫文件方法可參考:www.code4app.com/blog-721976-522.html
選擇device真機(jī)和模擬器下分別編譯項(xiàng)目IJKMediaPlayer庫
lipo -create "真機(jī)版本路徑" "模擬器版本路徑" -output "合并后的文件路徑"
注意:一定要給合并后的文件起名字梯刚,不然會(huì)報(bào)錯(cuò)A构荨!!
四:集成ijkplayer到項(xiàng)目中
新建工程, 導(dǎo)入合并后的IJKMediaFramework.framework以及相關(guān)依賴框架以及相關(guān)依賴框架