- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
原理篇 |如何快速地开发一个完整的iOS直播App
今年移动直播行业的兴起 ,诞生了一大 网红 ,甚至明星也开始直播了 ,因此不得不跟上时
代的步伐。由于第一次接触的原因 ,因此花了很多时间了解直播 ,整理了直播的原理 ,当前
只是原理篇 ,后续会持续发布实战篇 ,教你从零开始搭建一个完整的iO S直播app ,希望能
帮助到更多的人更快地了解直播。
一、直播难与易
直播难
个人认为要想把直播从零开始做出来 ,绝对是牛逼中的牛逼 ,大牛中的大牛。因为直播中运用到的
技术难点非常之多 ,视频/音频处理 ,图形处理 ,视频/音频压缩 ,CDN分发 ,即时通讯等技术 ,每
一个技术都够你学几年的。
直播易
已经有各个领域的大牛 ,封装好了许多牛逼的框架 ,我们只需要用别人写好的框架 ,就能快速地搭
建一个直播app ,也就是传说中的站在大牛肩膀上编程。
二、了解直播
1.热门直播产品
映客、斗鱼、熊猫、虎牙、花椒等等。
2.一个完整直播app功能
(1 )聊天
私聊、聊天室、点亮、推送、黑名单等;
(2 )礼物
普通礼物、豪华礼物、红包、排行榜、第三方充值、内购、礼物动态更新、提现等 ;
(3 )直播列表
关注、热门、最新、分类直播用户列表等 ;
(4 )自己直播
录制、推流、解码、播放、美颜、心跳、后台切换、主播对管理员操作、管理员对用户等 ;
(5 )房间逻辑
创建房间、进入房间、退出房间、关闭房间、切换房间、房间管理员设置、房间用户列表等 ;
(6 )用户逻辑
普通登陆、第三方登陆、注册、搜索、修改个人信息、关注列表、粉丝列表、忘记密码、查看个人
信息、收入榜、关注和取关、检索等 ;
(7 )观看直播
聊天信息、滚屏弹幕、礼物显示、加载界面等 ;
(8 )统计
A PP业务统计、第三方统计等 ;
(9 )超
禁播、隐藏、审核等 ;
3.一个完整直播app原理
(1 )直播原理 :
把主播录制的视频 ,推送到服务器 ,在由服务器分发给观众观看。
(2 )直播环节 :
推流端 (采集、美颜处理、编码、推流 )
服务端处理 (转码、录制、截图、鉴黄 )
播放器 (拉流、解码、渲染 )
互动系统 (聊天室、礼物系统、赞 )
4 .一个完整直播app实现流程
直播A PP实现流程有采集、滤镜处理、编码、推流、CDN分发、拉流、解码、播和聊天互动 ,如
下图 :
直播流程
5.一个完整直播app架构
直播架构
6.一个完整直播app技术点
三、了解流媒体 (直播需要用到流媒体 )
流媒体开发 :网络层(socket 或st )负责传输 ,协议层(rt p或hls)负责网络打包 ,封装层(f lv、t s)负
责编解码数据的封装 ,编码层(h.264和aac)负责图像 ,音频压缩。
帧 :每帧代表一幅静止的图像
GO P: (Gro up of Pict ures )画面组 ,一个GO P就是一组连续的画面 ,每个画面都是一帧 ,一
个GO P就是很多帧的集合
直播的数据 ,其实是一组图片 ,包括I帧、P帧、B帧 ,当用户第一次观看的时候 ,会寻找I帧 ,而播
放器会到服务器寻找到最近的I帧反馈给用户。因此 ,GO P Cache增加了端到端延迟 ,因为它必须
要拿到最近的I帧。O P Cache的长度越长 ,画面质量越好。
码率 :图片进行压缩后每秒显示的数据量。
帧率 :每秒显示的图片数。影响画面流畅度 ,与画面流畅度成正比 :帧率越大 ,画面越流畅 ;帧
率越小 ,画面越有跳动感。
由于人类眼睛的特殊生理结构 ,如果所看画面之帧率高于16的时候 ,就会认为是连贯的 ,此现象称
之为视觉暂留。并且当帧速达到一定数值后 ,再增长的话 ,人眼也不容易察觉到有明显的流畅度提
升了。
分辨率 :(矩形)图片的长度和宽度 ,即图片的尺寸
压缩前的每秒数据量:帧率X分辨率(单位应该是若干个字节)
压缩比:压缩前的每秒数据量/码率 (对于同一个视频源并采用同一种视频编码算法 ,则压缩比
越高 ,画面质量越差。 )
视频文件格式 :文件的后缀 ,比如.w v,. ov,. p4 ,. p3,.avi。
主要用处 ,根据文件格式 ,系统会自动判断用什么软件打开。
注意: 随意修改文件格式 ,对文件的本身不会造成太大的影响
文档评论(0)