直播业务概述
大家所熟知的直播平台虎牙、斗鱼、快手、抖音、B站,直播功能看似普遍,但从零到一开发却不简单。直播中运用到的技术难点非常之多,音频视频处理/编解码,前后处理,直播分发,即时通讯等技术,学好任何一项都需要比较高的成本,将它们融合到直播功能上更是难上加难。
由于公司新项目计划做直播产品,开发周期比较紧。经过调研:最快搭建一个直播功能的方案就是运用第三方直播SDK,低成本、效率高、风险低。本文将整理介绍几款主流的直播SDK,便于音视频直播的开发者清晰快速选择适合项目的SDK,开发者最重要的是:学会站在巨人的肩膀上编程,效率更高。
以下所有信息都是从官网文档收集人工整理汇总而成,有部分信息不确定或未提及若存在偏差,欢迎大家随时指正便于修改,希望能帮助到大家选择产品和服务快速搭建线上直播间。
直播产品介绍
2.1直播产品
直播产品定义:一个通用的直播模型一般包括三个模块:主播方、服务器端和播放端。
2.2直播类型
业务视角分类:一般分为单主播直播、多主播直播。主要区别在推流端的数量。单主播直播的特点是只有一个推流端(主播),多个拉流端(观众)。多主播直播的特点是有多个主播(推流端),和多个观众(拉流端)。
- 单主播直播:最早的直播场景,只有一个主播推流,观众不能与主播连麦互动,只能看主播直播,比如单主播的秀场直播、职业培训这类场景。
- 多主播直播:指主播之间进行互动连麦(多人连麦直播场景),主播与主播之间进行互动PK(PK直播场景)的一种直播类型。技术实现是在实时音视频的基础上,将实时音视频某个房间中的画面经云端混流后(多主播直播模式为了保证画面同步性一般采用混流服务),通过旁路直播的方式直播出来。
- 连麦的主播使用的都是RTC服务所以延迟较低300ms左右,因观众不要求完全的实时同步,一般使用的是CDN的分发网络,延迟在3s左右。
直播根据延迟角度分类:分为CDN直播和超低延迟直播,CDN直播延迟通常延迟3s以上,超低延迟直播通常延迟小于1s。
- CDN直播:传统的CDN直播方式,满足高并发的基础直播、对直播内容同步性无强要求的场景。可实现观众文字互动体验。通常适合单主播多个观众的直播间。
- 超低延迟直播:与单向直播相比,强调多人连麦、画面特效等直播能力,给予观众“露脸发声”与主播互动的能力,因为对实时性要求更高。
2.3 实时音视频、旁路转推、直播分发、低延迟直播、CDN直播的区别和关系?
- 实时音视频(Real-Time Communication, RTC):(关键词:双人/多人通话,UDP私有协议,低延时)主要应用场景是音视频通话和连麦直播。使用基于UDP的私有协议,其延迟可低于100ms,典型的场景:QQ电话、微信电话。即构实时音视频RTC覆盖各平台,除了iOS/Android/Windows之后,还支持小程序以及 WebRTC 互通,并且支持通过云端混流的方式将画面旁路直播出去。当业务对延迟敏感,通话场景要求比较高,或是需要小程序或者 H5 场景下的双人或多人音视频通话可以选择ZEGO实时音视频。
- 旁路转推:旁路直播是一种技术,指的是将低延时连麦房间里的多路推流画面复制出来,在云端将画面混合成一路,并将混流后的画面推流给直播 CDN 进行分发播放。因为混流后的视频数据流和主/副播通话房间实际上并不是同一路流,而是在另外平行的一路,因而称为旁路,即不在主路。云端录制时,录制的流也是通过旁路的方式从流媒体中心引出,存到COS中。
- 直播分发:(关键词:一对多,RTMP/HLS/HTTP-FLV,CDN)是一种非常典型的流媒体系统,通常会分为推流端、拉流端(或叫播放端)以及直播流媒体中心(直播源站),直播源站通常会使用CDN进行直播的分发,因此大部分情况下使用的是通用标准的协议RTMP,经CDN分发后,播放时一般可以选择RTMP、HTTP-FLV或HLS(H5支持)等方式。
- 超低延迟直播:延时低至600ms,提供千万级并发的高质量直播服务,同步性更强,弱网抗性更优。
- CDN直播:延时为 3s 左右,提供低成本、大规模稳定、端上能力丰富的直播服务。
2.3.1 直播产品和直播技术
直播所需产品 | 实时音视频产品 | 直播分发产品 | ||
---|---|---|---|---|
产品定义 | 低至200ms的端到端平均时延,提供便捷接入、高可靠、多平台互通的音视频服务。可完美的支持一对多、多对多的实时音视频通话、直播、会议等场景。 | 直播分发,按照延迟时间的长短对应有不同的产品。 由于不同场景对互动和延迟的要求不同,按照延时程度,厂商一般会提供对应的直播分发产品,这里以ZEGO为例,分为超低延迟直播、CDN直播两大类来说明。 |
||
直播技术 | 实时音视频 | 旁路转推 | 超低延迟直播 | CDN直播 |
典型场景 | 观众与主播之间需要频繁音视频互动,比如小班课,在线会议等场景。 | 观众之间需要强同步,主播需要即时响应观众的文字、弹幕或者打赏信息,比如直播大班课,一起看电影等场景。 | 观众不需要与主播音频互动,观众之间的直播内容同步性无强要求,比如游戏直播,直播秀场。 | |
延时情况 | 观众与主播连麦的内容延迟小于 400 ms。 | 观众和主播之间的内容延迟范围在 600 ms ~ 1000 ms。 | 观众和主播之间的内容延迟大于 3000 ms。 | |
同步性 | 观众之间的同步性强。 | 观众之间的同步性良好。 | 观众之间的同步性差。 | |
互动体验 | 优。 | 良。 | 差。 | |
价格 | 较高。 | 适中。 | 较低。 |
第三方直播产品核心功能对比
为了便于大家更好的进行直播产品的选型,笔者将各大厂商官网的核心功能进行整理汇总,并表格形式横向对比呈现。因各家文档较多笔者人工查询整理,难免有有出入欢迎大家不吝赐教指正,有出入处以各家官网文档为准。
腾讯云-云直播 | 即构 -****畅直播 | 阿里云-视频直播 | 网宿-云直播 | 声网-融合CDN直播 | |
---|---|---|---|---|---|
客户案例 | bilibili,快手、now直播、斗鱼 | 映客直播、花椒直播、咪咕直播 | 淘宝、钉钉、Lazada、阿里巴巴 | 虎牙直播、河南广播电视台、希沃 | bilibili、斗鱼、陌陌、花椒直播 |
产品形态 | CDN | 根据不同时延要求,分为CDN、CDN Plus、超低延迟直播 | CDN | CDN | 融合CDN,可以认为是CDN |
主要场景 | ?CDN直播 | ?CDN直播质量无法保证的场景 ?质量优先的直播用户 |
?CDN直播 | ?CDN直播 | ?单个CDN直播无法保证质量的场景 |
核心优势 | ?节点丰富 ?价格较低 ?可以基于CDN提供转码、录制等增值服务 |
1、提供基于不同场景需求的多档位方案 2、节点丰富,基于全球网络调度MSDN策略、流控策略等,抗弱网能力更强,保证直播流畅率和稳定性 3、有播放器的实时播放数据,云上的调度策略更加准确 4、可以进行端上的调度策略 5、提供端上处理能力,包括3A,前处理等 6、可以基于CDN提供转码、录制等增值服务 7、质量监控更加全面 |
?节点丰富 ?价格较低 ?可以基于CDN提供转码、录制等增值服务 |
?节点丰富 ?价格较低 ?可以基于CDN提供转码、录制等增值服务 |
?基本等同于CDN的价格 ?有播放器的实时播放数据,云上的调度策略更加准确 ?可以进行端上的调度策略 ?SDK端上的各种能力 ?质量监控更加全面 |
支持的连麦人数 | 最多支持50人同时连麦 | 业内首创连麦技术 |
首页 上一页 1 2 3 下一页 尾页 1/3/3 | |
【大 中 小】【打印】 【繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部】 | |
上一篇:类加载机制 | 下一篇:Spring Cloud 最新版发布,Spring.. |