大家所熟知的直播平台虎牙、斗鱼、快手、抖音、B 站,直播功能看似普遍,但从零到一开发却不简单。直播中运用到的技术难点非常之多,音频视频处理/编解码,前后处理,直播分发,即时通讯等技术,学好任何一项都需要比较高的成本,将它们融合到直播功能上更是难上加难。
由于公司新项目计划做直播产品,开发周期比较紧。经过调研:最快搭建一个直播功能的方案就是运用第三方直播 SDK ,低成本、效率高、风险低。本文将整理介绍几款主流的直播 SDK ,便于音视频直播的开发者清晰快速选择适合项目的 SDK ,开发者最重要的是:学会站在巨人的肩膀上编程,效率更高。
以下所有信息都是从官网文档收集人工整理汇总而成,有部分信息不确定或未提及若存在偏差,欢迎大家随时指正便于修改,希望能帮助到大家选择产品和服务快速搭建线上直播间。
直播产品定义:一个通用的直播模型一般包括三个模块:主播方、服务器端和播放端。
业务视角分类:一般分为单主播直播、多主播直播。主要区别在推流端的数量。单主播直播的特点是只有一个推流端(主播),多个拉流端(观众)。多主播直播的特点是有多个主播(推流端),和多个观众(拉流端)。
直播根据延迟角度分类:分为 CDN 直播和超低延迟直播,CDN 直播延迟通常延迟 3s 以上,超低延迟直播通常延迟小于 1s 。
直播所需产品 | 实时音视频产品 | 直播分发产品 | ||
---|---|---|---|---|
产品定义 | 低至 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 人同时连麦 | 业内首创连麦技术,最多支持 10000 人同时连麦 | 最多支持 16 人直播连麦 | 支持 60 人同时语音、视频连麦互动 | 最多支持 128 人同时互动 |
劣势 | 受限于 CDN 本身的能力,在流畅率、稳定性、实时性上表现不佳 | 要做 CDN 、L3 的目前有一些限制(播放器等),不如 CDN 有通用型 | 受限于 CDN 本身的能力,在流畅率、稳定性、实时性上表现不佳 | 受限于 CDN 本身的能力,在流畅率、稳定性、实时性上表现不佳 | 受限于 CDN 厂商本身的限制,很难进行进一步质量提升 |
推流协议支持 | •RTMP •TCP/QUIC/SRT |
•私有协议/RTMP •TCP/QUIC |
•RTMP •TCP/QUIC/SRT |
•RTMP •TCP/QUIC/SRT |
•私有协议/RTMP •TCP/QUIC/SRT |
拉流协议支持 | •RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•私有协议/RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
•RTMP/HTTP-FLV/HTTP-HLS •TCP/QUIC |
调度模式 | 云上的调度策略 | •云上调度策略 •端上的调度策略 跨 CDN 厂商切换 •跨 IP 切换 •Quic→TCP 切换 •提供基于不同场景需求的多档位方案,支持无缝切换 |
云上的调度策略 | 云上的调度策略 | •云上调度策略 •端上的调度策略 •跨 CDN 厂商切换 •跨 IP 切换 •httpDNS→DNS •Quic→TCP |
腾讯、阿里的视频直播 是最常见的 CDN 直播,基于 RTMP 等 TCP 协议实现,延迟一般在 3-10S 左右,抗弱网能力较差,卡顿率较高。 声网的融合 CDN 直播融合了多家 CDN ,与声网媒体服务进行了协同,针对 CDN 的卡顿率问题进行了优化,但仍受限于 CDN 本身的能力。 即构的畅直播提供了多种直播档位,其中的超低延迟直播基于即构自研 UDP 传输协议实现,使用了海量数据分发网络( MSDN 网络),可以认为复用了 RTC 的部分优势,因此延迟低至 600ms 、弱网抗性超强、卡顿率极低。
除直播的核心推拉流功能之外,直播产品快速迭代了许多功能满足多场景需求,基本厂商们都支持,详见以下表格。
产品功能 | 腾讯云 | 阿里云 | 即构 | 网易云信 | 声网 | 七牛云 | 金山云 |
---|---|---|---|---|---|---|---|
推流地址自定义 | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
视频软编码 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
视频硬编码 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
美颜 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
第三方美颜接口 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
水印 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
截图 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
多视频分辨率支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
横竖屏推流 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
动态横竖屏切换 | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
连麦 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
画中画 | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
对焦/变焦 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
镜像 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
闪光灯 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
耳返 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
蓝牙耳机 | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
混音 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
混响 | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
纯音频推流 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
后台音频推流 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
录屏 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
短视频录制 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
动态帧率 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
变声 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
升降调 | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
立体声推流 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
悬浮窗 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
降噪 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
手机摄像头/麦克风采集 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
手机屏幕采集 | 支持 | 支持 | 支持 | 支持 | N/A | 支持 | 支持 |
自定义采集(外部采集) | 支持 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 |
推流码率自适应 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | N/A |
填充/旋转模式 | 支持 | N/A | 支持 | 支持 | N/A | 支持 | 支持 |
SEI 消息接收 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | N/A |
推流录制 | 支持 | 支持 | 支持 | N/A | 支持 | 支持 | 支持 |
背景音乐播放 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
音乐与人声混音 | 支持 | 支持 | 支持 | N/A | N/A | N/A | N/A |
H.265 硬解 | 支持 | 支持 | 支持 | N/A | N/A | 支持 | 支持 |
超分 | N/A | N/A | 支持 | N/A | 支持 | N/A | 支持 |
音量均衡 | N/A | 支持 | 支持 | N/A | N/A | 支持 | 支持 |
秒开优化 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | N/A |
自动增益补充( AGC ) | N/A | N/A | 支持 | N/A | 支持 | 支持 | N/A |
回声消除( AEC ) | N/A | N/A | 支持 | N/A | N/A | 支持 | N/A |
自定义视频渲染 | N/A | 支持 | 支持 | N/A | 支持 | 支持 | 支持 |
音视频流加密 | N/A | 支持 | 支持 | 支持 | 支持 | 支持 | N/A |
网络直播作为新兴的传播形式能量巨大,技术进步也改变了视频直播平台、主播和观众之间的互动方式。近些年,随着网络直播的市场规模不断增长,同时也衍生了许多新的业务场景和互动玩法,直播产品的激烈竞争倒逼厂商开启了自研技术之路,提升直播平台用户体验。笔者关注到一些新兴功能,进一步提升了对直播产品形态的演进和用户体验,以下为相关功能的横向对比。
产品功能 | 即构 | 声网 | 火山引擎 |
---|---|---|---|
场景化 AI 降噪 | 非音乐场景:人声保真效果较好,降噪效果较好 音乐场景:支持 99%以上的音乐场景识别并应用对应的降噪策略 |
非音乐场景:降噪效果最好,但是人声保真效果差 音乐场景:没有 |
非音乐场景:人声保真效果较好,降噪效果最差 音乐场景:没有 |
万人连麦 | 最多支持 10000 人同时上麦 | 最多支持 128 人上麦 | 最多支持 1000 人同时上麦 |
状态同步 | 最多支持 10000 人的状态同步; | 不支持 | 不支持 |
分割和传输视频中的主体 | 将主体外的区域设置为透明,实现只传输主体的效果。 多人异地同台:将身处不同城市的嘉宾渲染到同一个虚拟舞台上,实现发布会、企业年会、演唱会等场景的多人异地同台 同场互动:只需一张虚拟背景图,即可让所有麦上用户同处一个空间。在同一个“健身房”一起健身、在同一片“广场”一起跳广场舞,尽享沉浸式的趣味视频连麦体验 |
分割:有 传输:无 |
传输:无 |
视频超分辨率 | 最大支持 540P 超分至 1080P | 最大支持 360P 超分至 720P | 无 |
暗光增强 | 所有机型全覆盖; | 部分覆盖,存在性能问题 | 无 |
因各大厂商直播 SDK 计费模式较多且差异不大,价格对比环节只列举部分厂商的报价供参考,大家可根据实际业务需求进行选择,同时笔者也附上厂商官方地址有任何价格相关的疑问可直接咨询官方。
官网地址:https://helpcdn.aliyun.com
1 、按量后付费模式
1.1 按使用流量计费
按不同区域使用的流量阶梯价格计费,当月分别超额累进(以自然月为一个累计周期,下个月自动清零重新累积)。定价受区域和带宽阶梯影响。
流量阶梯(计费单位:元/GB ) | 中国内地-CN | 北美-NA | 欧洲-EU | 亚太 1 区-AP1 | 亚太 2 区-AP2 | 亚太 3 区-AP3 | 中东非洲-MEAA | 南美-SA |
---|---|---|---|---|---|---|---|---|
0~10 TB (含) | 0.528 | 0.920 | 0.920 | 1.580 | 1.700 | 1.700 | 2.620 | 2.620 |
10 TB~50 TB (含) | 0.506 | 0.920 | 0.920 | 1.580 | 1.700 | 1.700 | 2.620 | 2.620 |
50 TB~100 TB (含) | 0.462 | 0.780 | 0.780 | 1.320 | 1.440 | 1.440 | 2.360 | 2.360 |
100 TB~1 PB (含) | 0.396 | 0.400 | 0.400 | 1.040 | 1.320 | 1.240 | 1.960 | 1.840 |
大于 1 PB | 0.330 | 0.320 | 0.320 | 0.920 | 1.180 | 1.180 | 1.840 | 1.700 |
1.2 按峰值带宽计费
以当日您直播观看区域所在节点,直播加速服务分别产生的带宽最高值(单位 Mbps )为结算标准。定价受区域和带宽阶梯影响。
带宽阶梯(计费单位:元/Mbps/天) | 中国内地-CN | 北美-NA | 欧洲-EU | 亚太 1 区-AP1 | 亚太 2 区-AP2 | 亚太 3 区-AP3 | 中东非洲-MEAA | 南美-SA |
---|---|---|---|---|---|---|---|---|
0~500 Mbps (含) | 1.320 | 3.280 | 3.280 | 6.560 | 7.880 | 7.880 | 11.820 | 10.640 |
500 Mbps~5 Gbps (含) | 1.276 | 3.020 | 3.020 | 6.300 | 7.620 | 7.620 | 11.540 | 10.360 |
5 Gbps~20 Gbps (含) | 1.232 | 2.760 | 2.760 | 6.040 | 7.340 | 7.340 | 11.280 | 10.100 |
大于 20Gbps | 1.188 | 2.620 | 2.620 | 5.900 | 7.220 | 7.220 | 11.160 | 9.980 |
官网网址:https://www.zego.im/
每月免费使用 10000 分钟,不超过完全免费,超过部分单独计算:
他家官网报价常规可以拿到 5%-15%的优惠折扣,如果有活动赶上大促,比如今年是他们 7 周年,部分产品折扣力度非常大。
1.CDN 直播
用量统计方式:CDN 目前默认为后付费按量计费,并提供两种计费类型:带宽计费和流量计费,您可根据自身业务形态,选择适合的计费模式。
服务定价
计费档位 | 计费类型 | 档位说明 | 价格 |
---|---|---|---|
(0Mbps,500Mbps] | 带宽 | 月峰值带宽 | 26 元/Mbps/月 |
(500Mbps,2Gbps] | 带宽 | 月峰值带宽 | 24 元/Mbps/月 |
(2Gbps,∞] | 带宽 | 月峰值带宽 | 22 元/Mbps/月 |
不区分阶梯用量 | 流量 | 拉流累计 | 0.5 元/GB |
2.超低延迟直播
用量统计方式:目前默认为后付费按量计费,按照用户实际拉取音视频流的时长来统计超低延迟直播服务的用量。
服务定价
计费档位 | 计费类型 | 档位说明 | 价格(元/千分钟) |
---|---|---|---|
高音质纯音频 | 时长 | 纯音频 | 4.00 |
标清视频( SD ) | 时长 | 分辨率 ≤ 360P ( 480 x 360 ) | 7.00 |
高清视频( HD ) | 时长 | 360P < 分辨率 ≤ 720P ( 1280 × 720 ) | 14.50 |
超清视频( HD+) | 时长 | 720P < 分辨率 ≤ 1080P ( 1920 × 1080 ) | 57.00 |
官网网址:
融合 CDN 直播
流量阶梯单价:下表列出各个流量阶梯下每个地区的流量单价,价格单位:元/GB 。
月度总流量 (GB) | 中国内地 | 北美 | 欧洲 | 亚太 1 区 | 亚太 2 区 | 大洋洲 | 中东非洲 | 南美 |
---|---|---|---|---|---|---|---|---|
0 - 10,000 | 0.25 | 0.48 | 0.48 | 0.48 | 0.73 | 0.96 | 0.73 | 0.73 |
10,000 (含)- 50,000 | 0.23 | 0.46 | 0.46 | 0.46 | 0.69 | 0.92 | 0.69 | 0.69 |
50,000 (含)- 100,000 | 0.21 | 0.42 | 0.42 | 0.42 | 0.63 | 0.84 | 0.63 | 0.63 |
100,000 (含)- 1,000,000 | 0.19 | 0.38 | 0.38 | 0.38 | 0.57 | 0.76 | 0.57 | 0.57 |
大于 1,000,000 | 0.16 | 0.32 | 0.32 | 0.32 | 0.48 | 0.64 | 0.48 | 0.48 |
官网地址:https://netease.im
直播服务计费项由两部分组成:日峰值带宽费+增值服务费(可选)
1.普通直播
近几年直播行业飞速发展,从早期的秀场直播到电商直播,以及如今火爆的互动直播。直播技术不仅对延时的要求越来越高,还加入了各类美颜特效和互动玩法,全方位提升 APP 的活跃留存。
同时也加速了直播技术的发展,线上直播间的搭建涉及到的技术难点非常多,直播 SDK 加快了直播程序开发的效率,技术成熟的直播 SDK 也更加稳定可靠。大家可以根据项目需求选择合适的服务搭建直播间,也可下载演示 demo 具体体验后再选择。
1
prosgtsr 1 天前
我们公司用的是即构
|
2
leexsh31 1 天前
火山引擎 RTC 吧 抖音直播用的
|
3
liu731 1 天前
就用过腾讯 声网 网易,网易是最垃圾的
|
4
nicoljiang 1 天前
用过即构、腾讯和声网。
即构唯一的优点就是便宜; 腾讯中规中矩; 声网基本上唯一的有点就是偏贵。 声网即便是大陆跟墨西哥视频电话质量也非常好,而即构连北京到上海的链路都做不明白。 然后是文档极差。 这是 4 年前的经验,也许过时了,但个人是不太可能再去碰即构。 |
5
cyningxu 1 天前
快手直播用的腾讯云?
|
6
afeiche 1 天前
3 ,4 年前还挺多小公司做这个的,现在都已经半死不活了,大部分公司对标的都是声网,不过现在腾讯感觉也赶上来了,阿里的钉钉收购了拍乐云,感觉没发展起来
|
7
lekai63 13 小时 22 分钟前
看到火山引擎 RTC 这块,还带了 AI 语音,考虑试试火山。
话说新人注册火山引擎,新户优惠 哪个最划算?? |
8
chanChristin 13 小时 0 分钟前
我们用的声网
不知道是我们的需求太奇怪还是声网的问题,老是碰到各种各样的问题需要联系声网排查。 |
9
holouser 12 小时 22 分钟前
公司用的腾讯和即构混流
|
10
xingfu0539 10 小时 27 分钟前
@chanChristin 大概率声网问题,我看我们同事也是很频繁找声网。
|