iOS中集成ijkplayer视频直播框架

ijkplayer是一款使用率极高的视频直播框架,基于ffmpeg,支持Androidios,但直接导入项目的操作比较繁琐,而且对原有项目结构的侵入性较强,复用差,下面介绍把ijkplayer打包成静态库

1、下载

GitHub下载地址

下载完成后解压。

2、编译

说是编译ijkplayer,其实是编译ffmpeg,在这里我们已经下载好了ijkplayer, 所以 githubREADME.md中的 Build iOS 那一步中有一些步骤是不需要的。

编译步骤:

  • 打开终端cdijkplayer-master文件夹下

  • 执行命令行 ./init-ios.sh

    这一步是去下载 ffmpeg

    时间会久一点, 耐心等一下.

  • 完成后执行 cd ios, 也就是进入到 ios目录中

  • 在终端依次执行:

    ./compile-ffmpeg.sh clean

    ./compile-ffmpeg.sh all`

    编译 ffmpeg, 也就是README.md中这两步, 如下图:

编译FFmpeg

编译时间较久, 耐心等待一下.

3、打包IJKMediaFramework.framework框架

首先打开工程 IJKMediaPlayer.xcodeproj, 位置如下图:

打开工程

打开后是这样的, 如下图:

要打包的工程

工程打开后设置工程的 scheme, 具体步骤如下图:

scheme

选择release

设置好 scheme 后, 分别选择真机和模拟器进行编译, 编译完成后, 进入 Finder, 如下图:

运行后生产的文件

进入 Finder 后, 可以看到有真机和模拟器两个版本的编译结果, 如下图:

编译结果

打开终端, 进行合并命令,具体格式为:

lipo -create "真机版本路径" "模拟器版本路径" -output "合并后   的文件路径"

合并后如下图:

合并后生产的文件

下面很重要, 需要用合并后的IJKMediaFramework把原来的IJKMediaFramework替换掉, 如下图, 希望你能看懂:

用合并后生产的文件替换原来的

上图中的 1、2 两步完成后, 绿色框住的那个IJKMediaFramework.framework文件就是我们需要的框架了, 可以复制出来, 稍后我们需要导入工程使用`.

4、iOS工程中集成ijkplayer

新建工程, 导入合并后的IJKMediaFramework.framework以及相关依赖框架以及相关依赖框架,如下图:

导入framework及依赖框架

导入框架后, ViewController.m进行测试, 首先导入IJKMediaFramework.h头文件, 编译,如果没有错说明集成成功。

至此, ijkplayer 集成完毕!