大名鼎鼎的 B站使用的视频播放框架是ijkplayer
,其实github 上的文档已经介绍的很清楚.但是真正集成起来却有些问题.下面详细说明一下.
ijkplayer
下载地址:https://github.com/Bilibili/ijkplayer
下载完之后,是不是也迫不及待的去运行 demo 呢,很不凑巧的你会发现下面的错误.
- 一.下载需要的支持文件
如何去下载呢,这个脚本已经写好了我们直接运行就行.
在目录结构里,我们可以看到init-ios.sh
这个文件.在terminal(终端)里运行.
- cd 到
init-ios.sh
文件所在的文件夹下. - 执行命令行
./init-ios.sh
命令(或者直接将init-ios.sh
文件拖到 terminal 内就可以执行). - 之后会有漫长的等待...进行下载所需的文件.(PS: 下载过程中需要翻墙?不确定是否是网络环境问题.)
-
二.编译文件
完成之后我们会发现多处了一些文件,这就是刚才脚本执行的下载文件.
-
cd ios
进入相应的文件目录下 - 在 terminal 执行下面的语句
./compile-ffmpeg.sh clean
,./compile-ffmpeg.sh all
- 等待编译完成...
-
三. 打包 framework 库.
上面两步执行完之后demo 就可以正常运行了.但是要用到项目里我们还要打包成静态库才方便使用.
-
选择framework
-
选择release模式.
-
分别在模拟器下和真机模式下进行编译.
- 合并framework
分别选择两个文件下的如下图标红的文件
在terminal 执行下面的语句
lipo -create 模拟器文件路径 真机文件路径 -output 文件路径/IJKMediaFramework
(ps: 可以直接将文件拖到 terminal 得到路径,最后输出的路径可以自己定义,输出时,文件名IJKMediaFramework,不要忘了) - 将合并好的 framework, 替换掉刚才上图红框标识的文件.
-
替换后我们可以将 framework 文件拖到我们项目中使用.
至此,集成ijkplayer 完成.
当然我们也可以直接使用如同 demo中的方式,引入整个工程.前面的一二步还是需要的.