iOS直播IJKPlayer源碼編譯庫、庫集成與基本使用(播放)

1旭等、獲取 ijkplayer 源碼

在一個(gè)合適的位置新建一個(gè)文件夾, 假設(shè)為桌面, 文件夾名為 ijkplayer.

打開終端, 輸入下面的指令

cd ~/Desktop/ijkplayer/

# 獲取ijkplayer源碼
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-ios

# 進(jìn)入源碼目錄
cd ijkplayer-ios
5b25323d0001736807000501.jpg.png

運(yùn)行看下效果


5b25323e00017d9407000315.jpg.png

提示: 'libavformat/avformat.h' file not found
原因: libavformat 是 ffmpeg 框架中的庫忆某,而 ijkplayer 又是基于 ffmpeg 框架的,因此需要導(dǎo)入 ffmpeg烈菌。
解決辦法: 查看 ijkplayer 的 README.md。

2花履、配置編解碼器格式支持
默認(rèn)為最少支持, 如果足夠你使用, 可以跳過這一步. 否則可以改為以下配置:

module-default.sh 更多的編解碼器/格式
module-lite-hevc.sh 較少的編解碼器/格式(包括hevc)
module-lite.sh 較少的編解碼器/格式(默認(rèn)情況)

cd config

# 刪除當(dāng)前的 module.sh 文件
rm module.sh

# 可根據(jù)需要替換為`module-default.sh`, `module-lite-hevc.sh`, `module-lite.sh`
# 創(chuàng)建軟鏈接 module.sh 指向 module-lite-hevc.sh
ln -s module-lite-hevc.sh module.sh

cd ..
cd ios
sh compile-ffmpeg.sh clean

3芽世、獲取 ffmpeg 并初始化

cd ..
./init-ios.sh

4、添加 https 支持
最后會生成支持 https 的靜態(tài)文件 libcrypto.a 和 libssl.a, 如果不需要可以跳過這一步

./init-ios-openssl.sh

cd ios

# 在模塊文件中添加一行配置 以啟用 openssl 組件
echo 'export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-openssl"' >> ../config/module.sh

./compile-ffmpeg.sh clean

5诡壁、編譯



# 如果下一步提示錯(cuò)誤`xcrun: error: SDK "iphoneos" cannot be located`, 請執(zhí)行`sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/`, 再重新執(zhí)行下一步

# 編譯openssl, 如果不需要https可以跳過這一步
./compile-openssl.sh all

# 編譯ffmpeg
./compile-ffmpeg.sh all

ps: 如果提示錯(cuò)誤:

./libavutil/arm/asm.S:50:9: error: unknown directive
        .arch armv7-a
        ^
make: *** [libavcodec/arm/aacpsdsp_neon.o] Error 1

原因:最新的 Xcode 已經(jīng)弱化了對 32 位的支持
解決方法:
在 compile-ffmpeg.sh 中刪除 armv7 , 修改如:
FF_ALL_ARCHS_IOS8_SDK="arm64 i386 x86_64"
再重新執(zhí)行出現(xiàn)錯(cuò)誤的命令: ./compile-ffmpeg.sh clean ./compile-ffmpeg.sh all

==============================================================
使用
手動用 Xcode 打開 ios 目錄下的 IJKMediaPlayer 項(xiàng)目
..... (寫的人太多了 看下面支持文章即可)

支持軟文
編譯后生成ffmpeg的庫文件后济瓢,仍然找不到文件,原因需要再次進(jìn)行編譯一次妹卿,之前只是下載
https://www.imooc.com/article/36547(????????????)

詳細(xì)
http://www.reibang.com/p/65fb80dff4d6(??????????)

對https協(xié)議的支持
http://www.reibang.com/p/9743a68c2939(??????????)

http://www.reibang.com/p/496257563f69(??)問題匯總

直播參數(shù)設(shè)置(優(yōu)化開始播放速度)
http://www.reibang.com/p/622713b446a2(??????)

ijkplayer 報(bào)錯(cuò)
invalidateRenderBuffer
IJKSDLGLView: setupDisplay not ready

請問這是什么原因造成的旺矾? 這個(gè)問題網(wǎng)上好多人問沒人回答
我下面來敘述下我工程這個(gè)問題是怎么解決的
1蔑鹦、-all_load ? 在本人測試other link 中添加 all_load 或者不添加自己的測試demo都沒問題
所以網(wǎng)上說用這種方式能親測能解決的 你可以試試 也行你的項(xiàng)目中有些庫沖突 需要全部加載下靜態(tài)庫宠漩,用all_load來處理下可能是一種解決方案(但我的測試是沒有庫沖突的前提下)
2举反、多處使用ijkplayer但是項(xiàng)目中 other link 中沒有添加 all_load,這個(gè)時(shí)候可能因?yàn)橄群蟪跏蓟屠鞯臅r(shí)機(jī)問題出現(xiàn) xxx was compiled with optimization - stepping may behave oddly; variables may not be available.
崩潰扒吁。這個(gè)時(shí)候在 other link 中添加 all_load 會報(bào)錯(cuò)重復(fù)文件火鼻,我項(xiàng)目中是視頻會議嵌的直播后來得知是會議中底層代碼也用了這個(gè)庫,后來解決方案是把ijkplayer.framework編譯成動態(tài)庫雕崩,將 other link 中的all_load刪除魁索,然后運(yùn)行就搞定了

編動態(tài)庫時(shí)


報(bào)錯(cuò)

添加libz庫即可

3、流協(xié)議對應(yīng)不上 問你們推流的人

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末盼铁,一起剝皮案震驚了整個(gè)濱河市粗蔚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌饶火,老刑警劉巖鹏控,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異肤寝,居然都是意外死亡当辐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進(jìn)店門鲤看,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缘揪,“玉大人,你說我怎么就攤上這事义桂≌殷荩” “怎么了?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵慷吊,是天一觀的道長袖裕。 經(jīng)常有香客問我,道長溉瓶,這世上最難降的妖魔是什么急鳄? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮嚷闭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘赖临。我一直安慰自己胞锰,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布兢榨。 她就那樣靜靜地躺著嗅榕,像睡著了一般顺饮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上凌那,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天兼雄,我揣著相機(jī)與錄音,去河邊找鬼帽蝶。 笑死赦肋,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的励稳。 我是一名探鬼主播佃乘,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼驹尼!你這毒婦竟也來了趣避?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤新翎,失蹤者是張志新(化名)和其女友劉穎程帕,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體地啰,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡愁拭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了髓绽。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片敛苇。...
    茶點(diǎn)故事閱讀 38,625評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖顺呕,靈堂內(nèi)的尸體忽然破棺而出枫攀,到底是詐尸還是另有隱情,我是刑警寧澤株茶,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布来涨,位于F島的核電站,受9級特大地震影響启盛,放射性物質(zhì)發(fā)生泄漏蹦掐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一僵闯、第九天 我趴在偏房一處隱蔽的房頂上張望卧抗。 院中可真熱鬧,春花似錦鳖粟、人聲如沸社裆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽泳秀。三九已至标沪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間嗜傅,已是汗流浹背金句。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留吕嘀,地道東北人违寞。 一個(gè)月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像币他,于是被迫代替她去往敵國和親坞靶。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,492評論 2 348