ijkplayer
框架是專門用來做 視頻直播 的開源框架,基于ffmpeg
,同時支持 Android 和 iOS 平臺。對于 App 中的直播功能,如果我們成功集成ijkplayer ,那么就算完成一半的工程了。接下來,只要獲取到 拉流 URL,就能實現視頻直播功能了。但是初次集成這個框架,對于新手還是有一定難度的。本篇主要介紹如何快速集成ijkplayer
框架。
一. 下載ijkplayer
ijkplayer
下載地址:https://github.com/Bilibili/ijkplayer
下載完成后解壓, 解壓后文件夾內部目錄如下圖:
二. 編譯 ijkplayer
說是編譯 ijkplayer
, 其實是編譯 ffmpeg
, 在這里我們已經下載好了ijkplayer
, 所以 github 上README.md中的Build iOS那一步中有一些步驟是不需要的.
下面開始一步一步編譯:
1.打開終端, cd 到ijkplayer-master
文件夾中, 也就是下載完解壓后的文件夾, 如下圖:
2.執行命令行
./init-ios.sh
, 這一步是去下載 ffmpeg
的, 時間會久一點, 耐心等一下.如下圖:
3.在第2步中下載完成后, 執行cd ios
, 也就是進入到 ios目錄中, 如下圖:
4.進入 ios 文件夾后, 在終端依次執行
./compile-ffmpeg.sh clean
和./compile-ffmpeg.sh all
兩個命令, 編譯 ffmpeg
, 也就是README.md中這兩步, 如下圖:/************************************分割線************************************/
編譯時間較久, 耐心等待一下.
編譯完成之后
三. 集成 ijkplayer
集成 ijkplayer 有兩種方法:
一種方法是按照IJKMediaDemo
工程中那樣, 直接導入工程IJKMediaPlayer.xcodeproj
, 在這里不做介紹, 如下圖:
第二種集成方法是把 ijkplayer
打包成framework
導入工程中使用. 下面開始介紹如何打包IJKMediaFramework.framework
, 按下面步驟開始一步一步做:
1、首先,打開工程 IJKMediaPlayer.xcodeproj
,位置如下:
打開后,如下圖:
2、設置工程的 scheme
第一步: 選擇 Edit Scheme
第二步: 選擇是制作調試用的framework還是發布用的framework
第三步: 設置好 scheme 后,分別選擇真機模式和模擬器進行編譯,編譯完成后,進入 Finder,如下圖
進入 Finder 后,可以看到,有真機和模擬器兩個版本的編譯結果,如下圖:
3、合并真機和模擬器版本的framework
注意: 不要合錯了,要合并的是這個文件,如下圖:
打開終端,進行合并,命令行的格式如下:
lipo -create "真機版本路徑" "模擬器版本路徑" -output "合并后的文件路徑"
合并后如下圖:
下面很重要, 需要用合并后的
IJKMediaFramework
把原來的IJKMediaFramework
替換掉, 如下圖
上圖中的1、2兩步完成后,藍色框住的那個IJKMediaFramework.framework
文件就是我們需要的框架了, 可以復制出來, 稍后我們需要導入工程使用.
四、使用打包好的 IJKMediaFramework.framework
將 ijkplayer
集成到項目中
調試的話,拖入調試版的 ijkplayer
庫
發布的話,拖入發布版的ijkplayer
庫
新建工程, 導入合并后的IJKMediaFramework.framework
以及相關依賴框架以及相關依賴框架,如下圖:
在
ViewController.m
中進行測試,首先導入IJKMediaFramework.h
頭文件,編譯一下,看有沒有報錯,如果沒有報錯,就說明集成成功了。經過編譯,證實集成成功了。