一直以来都想了解学习直播视频这块内容,加上现在这么火,所以个人认为,或多或少了解一点还是很有必要的,特别是看了 峥吖 的文章后,决定自己也来尝试下。我是从下面三个方面开始这方面的学习。
- 粗略了解一个完整直播app技术点
- 自己大致实现一个最基本的功能点直播
- 值的参考的项目和文章
一、粗略了解一个完整直播app技术点
这张图具体的出处已经不知道,但值得点击图片放大,仔细看看还是很不错的,总结很好
- 1、采集视频、音频
- 2、视频处理
- 3、视频、音频编码压缩
- 4、推流
- 5、流媒体服务器处理数据
- 6、拉流
- 7、视频、音频转码
- 8、播放
- 9、聊天互动
二、实现一个最基本的功能点直播
不管具体实现机制,先从一个项目模仿,实现最基本的直播功能,单纯的直播功能,是跟着 峥吖老师写的 如何快速的开发一个完整的iOS直播app播放篇,一步一步实现基本功能的。
曾几何时,为了编译 ffmpeg,费啦老大劲还出错,此处通过 ijkplayer ,让我们省掉了多少力和坑。 具体跟着 iOS中集成ijkplayer视频直播框架 走,然后就解决了直播这块的头等大事啦。
通过
IJKFFMoviePlayerController
直接播放,真的很方便。
PS:URL 是映客直播的, 从 峥吖老师 那直接获取的。
// 拉流地址 self.live.stream address
NSURL *url = [NSURL URLWithString:self.live.stream];
// 创建IJKFFMoviePlayerController:专门用来直播,传入拉流地址就好了
self.player = [[IJKFFMoviePlayerController alloc] initWithContentURL:url withOptions:nil];
// 准备播放
[self.player prepareToPlay];
// 布局,并且加在上面
self.player.view.frame = [UIScreen mainScreen].bounds;
[self.view insertSubview:self.player .view atIndex:1];
然后很快就做成了展现了出啦最简单的直播...
三、值的参考的项目和文章
3-1:项目
- 520Linkee: 该项目实现了作为一个直播App的基本功能,比如本地视频流采集、播放、美颜、礼物、点赞出心等。
- MiaowShow:iOS视频直播项目, 高仿<喵播APP>
- Live: 直播, 一个示范如何建立直播 APP 的项目
- inke:映客iOS客户端,虽说作者自己说价值不大啦,但还是可以看看的
3-2:文章
- 做一款仿映客的直播App?看我就够了
- 直播文章推荐 :一些概念性基础的总结,有些必看
- iOS动手做一个直播(原理篇):关于推流和拉流
- 如何快速的开发一个完整的iOS直播app: 峥吖老师写的
- 如何快速的开发一个完整的iOS直播app播放篇: 峥吖老师写的
- 关于视频直播技术,你想要知道的都在这里了 : 七牛云一系列文章,持续更新中
- iOS中集成ijkplayer视频直播框架: 真是一步一步教我们集成ijkplayer。
3-3:另外的学习
- 慕课网 学习直播视频: 还有文章备注(视频直播技术)
- AV Foundation开发秘籍:实践掌握iOS & OS X 应用的视听处理技术: 一本书。
总的说来,走马观花的了解了下直播这块的知识点,而接下来有空就是将其知识点一个一个进行学习备忘,预防后期项目用到。