1、背景
现在市面上比较多人使用的APP一般都会有视频播放的个功能。视频无论是从功能性、体验性等对于用户来说都是比较友好的方式。所以对于一名iOS开发人员来说,视频、播放器等关于多媒体的开发能力来说,可以来说是必不可少的。
1.1 为什么不使用iOS原生框架
虽然Apple也提供AVPlayer框架、MPPlayer框架(MP在iOS13后,已经被苹果完全抛弃了),但AVPlayer对于一些比较高度自定义、直播等功能来说,就不是一个比较好的解决方案了。同时对于现在的APP来说,有苹果端则必须有安卓端。如果此时,苹果能解决的功能,而安卓做不到相同的功能,又或者安卓可以,但苹果不可以。对于用户来说,我觉得是不可以接受的。
1.2 为什么使用ijkPlayer
ijkPlayer -- 其实是由的BiliBili-B站开源的一个开源视频框架,同时有安卓端和苹果端。这对于公司来说,是一个比较好的解决方案。基本上则就可以保证,在功能的开发上,基本能保证功能的一致性,则也可以让用户在使用APP的时候有比较好的使用体验。
1.3 ijkPlayer的由来
ijkPlayer 其实是对大名鼎鼎的跨平台框架【FFMpeg】进行封装的一个开源架构,使得该视频框架可以在多平台进行开发和使用。
1.4 题外话 -- FFMpeg介绍
它的全称为“Fast Forward Mpeg”,正如它的名称一样,快速、功能强大。
是一个多媒体视频处理的解决方案,集转换、播放、录制等功能于一身的工具。
FFmpeg虽然是在Linux下进行开发的,但她是基于C语言进行开发的,所以可以同时在Windows、MacOS等系统下进行编译运行开发。
FFMpeg也因其完美,被许多大厂集成过、或者仍然使用着。如VLC、MPlayer,还有国内的暴风影音、QQ影音也都在其列
需要注意的是,该项目是基于LGPL/GPL的开源协议。
对于FFMpeg的框架的解读,我将在之后再写一遍专门的文章进行介绍。
2、集成开始
那现在就由我来讲解一下ijkplayer的集成方式
2.1 获取ijkPlayer
前往全球最大的交友平台站 GitHub 进行 下载 或者 克隆 ijkPlayer
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-ios
建议:先创建一个文件夹,然后cd进入后,再进行git clone