iOS中ijkpalyer集成

一挠唆、準(zhǔn)備工作

1处窥、Homebrew,簡(jiǎn)稱“brew”玄组,OSX上必備軟件包管理工具(可百度參考安裝方式滔驾,git和yasm安裝方法相同,~_~)俄讹,查看當(dāng)前版本哆致,在“終端”中輸入令“brew -v”;

2患膛、Git摊阀,代碼管理工具,查看版本命令為:“git --version”踪蹬;

3胞此、Yasm,輸出二進(jìn)制的匯編器跃捣,查看版本命令為:“yasm --version”

以下是當(dāng)前編譯者版本信息:

二漱牵、下載IJKPlayer

本地新建文件夾(路徑、名稱隨你高興)疚漆,將git上的項(xiàng)目clone到本地:

*進(jìn)入該目錄中:cd **路徑

*克隆項(xiàng)目:git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-ios

*進(jìn)入ijkplayer-ios:cd ijkplayer-ios

*切換分支:git checkout -B latest k0.8.8酣胀,注:這個(gè)版本號(hào)可以查看git上的文件

如果能看到:Switched to a new branch 'latest',恭喜你娶聘,可以進(jìn)入一下步闻镶!

三、配置修改

1丸升、關(guān)于armv7 armv7s arm64的配置铆农,這里我保留了arm64、i386发钝、x86_64三種類型顿涣。

*在ijkplayer-ios->init-ios.h中查找“FF_ALL_ARCHS_IOS8_SDK”,保留:arm64酝豪、i386涛碑、x86_64;

*在ijkplayer-ios->ios->compile-ffmpeg.sh孵淘,同上蒲障。

2、支持格式配置,在ijkplayer-ios->config目錄下默認(rèn)有3種類型:

module-default.sh?更多的編解碼器/格式

module-lite-hevc.sh?較少的編解碼器/格式(包括hevc)

module-lite.sh?較少的編解碼器/格式(默認(rèn)情況)

我這里也是走尋常路揉阎,修改文件“module-lite.sh”庄撮,該文件默認(rèn)是不是支持rtsp,如果要支持該類型毙籽,則要進(jìn)行添加配置(百度)洞斯;

四、下載ffmpeg文件

*進(jìn)入ijkplayer-ios目錄:./init-ios.sh

等待時(shí)間若干...

五坑赡、開始編譯ffmpeg庫

注:網(wǎng)上有些文章中要修改:“packet_queue_get_or_buffering”方法(路徑是:ijkmedia/ijkplayer/ff_ffplay.c)烙如,其實(shí)我兩種方式都試過了,改或是不改都不影響播放結(jié)果毅否!

*進(jìn)入 config 目錄:cd config

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

*可根據(jù)需要替換文件亚铁,我這里選擇了“module-lite.sh”,注:這里除了默認(rèn)3個(gè)文件外螟加,也可以自定義其他格式類型

ln -s module-lite.sh module.sh

*進(jìn)入ios目錄:./compile-ffmpeg.sh clean徘溢,輸出如下信息(保留的3種配置信息):

*繼續(xù)進(jìn)行編輯:./compile-ffmpeg.sh all,這里可能會(huì)遇到一個(gè)錯(cuò)誤:

xcrun -sdk iphoneos clang is unable to create an executable file.

C compiler test failed.

中間略

…solve the problem.

解決方法:sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/捆探,輸入電腦登錄密碼即可然爆。

之后一陣“閃花屏”結(jié)束后表示ffmpeg庫編譯成功!

注:如果為https視頻流徐许,則必須添加https支持施蜜,最后生成靜態(tài)文件?libcrypto.a?和?libssl.a。

*進(jìn)入ijkplayer-ios目錄:./init-ios-openssl.sh

cd ios

并且在“module.sh ”文件中添加如下配置雌隅,啟用openssl組件

echo 'export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-openssl"'

然后依次執(zhí)行如下命令:

./compile-ffmpeg.sh clean

./compile-openssl.sh all

./compile-ffmpeg.sh all

六、打包 framework

*打開xcode工程

/ijkplayer-ios/ios/IJKMediaPlayer缸沃,修改Deployment Target為9.0恰起,再修改Build Configuration為Release,然后執(zhí)行command+B編譯即可趾牧!

因?yàn)橹暗呐渲梦募?compile-ffmpeg.sh?)中刪除了?armv7检盼,工程編譯報(bào)錯(cuò),根據(jù)報(bào)錯(cuò)打開文件avconfig.h和config.h翘单,直接注釋掉吨枉!

*分別生成模擬器和真機(jī)狀態(tài)下的framework,然后進(jìn)行合并(我這里是為了方便哄芜,把兩個(gè)目錄復(fù)制出來)

先?cd?到?Products?目錄下貌亭,然后執(zhí)行:

lipo -create Release-iphoneos/IJKMediaFramework.framework/IJKMediaFramework Release-iphonesimulator/IJKMediaFramework.framework/IJKMediaFramework -output IJKMediaFramework

之后會(huì)多出個(gè)文件“IJKMediaFramework”,如圖:

之后替換掉文件“IJKMediaFramework”认臊,而“IJKMediaFramework.framework”就是我們需要的通用的framework文件了圃庭。

六、結(jié)束語

以上方法是簡(jiǎn)要生成ijk的方法,初試者可能會(huì)遇到各種問題剧腻,請(qǐng)給自己多點(diǎn)耐心拘央!

本文如有錯(cuò)誤,請(qǐng)指正书在,謝謝灰伟!

七、視頻流地址

1儒旬、http://flv2.bn.netease.com/videolib3/1604/28/fVobI0704/SD/fVobI0704-mobile.mp4

2袱箱、rtmp://202.69.69.180:443/webcast/bshdlive-pc

3、http://dlhls.cdn.zhanqi.tv/zqlive/49427_jmACJ.m3u8

4义矛、rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov

5发笔、rtmp://mobliestream.c3tv.com:554/live/goodtv.sdp

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市凉翻,隨后出現(xiàn)的幾起案子了讨,更是在濱河造成了極大的恐慌,老刑警劉巖制轰,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件前计,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡垃杖,警方通過查閱死者的電腦和手機(jī)男杈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來调俘,“玉大人伶棒,你說我怎么就攤上這事〔士猓” “怎么了肤无?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)骇钦。 經(jīng)常有香客問我宛渐,道長(zhǎng),這世上最難降的妖魔是什么眯搭? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任窥翩,我火速辦了婚禮,結(jié)果婚禮上鳞仙,老公的妹妹穿的比我還像新娘寇蚊。我一直安慰自己,他們只是感情好繁扎,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布幔荒。 她就那樣靜靜地躺著糊闽,像睡著了一般。 火紅的嫁衣襯著肌膚如雪爹梁。 梳的紋絲不亂的頭發(fā)上右犹,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音姚垃,去河邊找鬼念链。 笑死,一個(gè)胖子當(dāng)著我的面吹牛积糯,可吹牛的內(nèi)容都是我干的掂墓。 我是一名探鬼主播,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼看成,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼君编!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起川慌,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤吃嘿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后梦重,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體兑燥,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年琴拧,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了降瞳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蚓胸,死狀恐怖挣饥,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情赢织,我是刑警寧澤亮靴,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站于置,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏贞岭。R本人自食惡果不足惜八毯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瞄桨。 院中可真熱鬧话速,春花似錦、人聲如沸芯侥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至廓俭,卻和暖如春云石,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背研乒。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國打工汹忠, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人雹熬。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓宽菜,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親竿报。 傳聞我的和親對(duì)象是個(gè)殘疾皇子铅乡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 前言 最近攤上了視頻監(jiān)控項(xiàng)目阵幸,一想到的就是ffmpeg這個(gè)Diao炸天的開源框架,但是這么拽的框架也不是一般人能駕...
    Tlsion小富閱讀 7,735評(píng)論 13 14
  • ijkplayer下載地址:https://github.com/Bilibili/ijkplayer 一僧界、準(zhǔn)備工...
    心有山海靜而無邊閱讀 1,357評(píng)論 3 0
  • 1侨嘀、通過CocoaPods安裝項(xiàng)目名稱項(xiàng)目信息 AFNetworking網(wǎng)絡(luò)請(qǐng)求組件 FMDB本地?cái)?shù)據(jù)庫組件 SD...
    陽明先生_x閱讀 15,968評(píng)論 3 119
  • 第一次是從笑來老師那里接觸到了這個(gè)概念—元認(rèn)知能力。 所謂元認(rèn)知能力就是關(guān)于認(rèn)知的認(rèn)知捂襟,就是你對(duì)自己的認(rèn)知有刻意的...
    王燁97閱讀 269評(píng)論 0 0
  • Day 17 今天玩游戲玩得差點(diǎn)忘記打卡…… 以后不能打這么晚的游戲了咬腕,記住。 1.三節(jié)課葬荷。 沈老師的課上的最認(rèn)真...
    沙上月閱讀 105評(píng)論 2 1