本文仅仅盘点iOS端直播技术的搭建
话不多说先上图,让大家对直播技术有一个全局的认识。
手残 简单划了一下,如果有不对的地方请私信我,大概技术用到的就这么多 ,其他的也没有罗列出来,比如说聊天系统,礼物系统,总结一下,一个完整的直播 需要 采集->处理->编码->推流 - >拉流 - > 播放 细分的话 就更多了。接下来就让我为大家慢慢梳理这些知识吧!本篇最后有惊喜。
1采集
iOS上采集音视频主要用到AVFoundation这个框架。 对于这个框架详细的介绍请移步 这里,请自行阅读.
2.采集完的视频的处理
关于GPUImage 的介绍在demo 欢迎观看 顺便说下 这里是编码与解码(图片上,是国内知名女大神写的)
关于为什么要进行编码和解码,和编解码的注意事项在这里:
4推流
这里着重介绍下这个RTMP
对于推流,有一个很好 而且很全面的框架 包含了 采集,滤镜 ,编码 , 这就是大名顶顶的 LFLiveKit。在Github 上,请自行去下载观看,而且及其简单。 看到这里是不是有些观众老爷激动了,有这玩意你怎么不早说,?。但是要全自定义,就要一步一步来搭建这个直播,这些流程还是要走的。 具体的代码欢迎大家补充,需要服务器做配合不方便写。
5.拉流
这个不想多说 ijkplayer,大厂小厂都在用。有大佬集成过的fameWork,网上有很多,请自行搜索。
直播是一个非常大的功能,说简单简单,说复杂复杂,说简单是因为我们站在巨人的肩膀上编程,说复杂是因为我们对他底部的那一套东西,原理,概念很陌生 。 写的不对的地方,欢迎提出来。还有推流那个地方 ,如果自行搭建的推流代码我没写 ,有大神 的话,帮忙补充下。(message 封装 trunk)