作者:浪子一品香_938 | 来源:互联网 | 2024-11-14 23:35
什么是RTMP?
RTMP(Real Time Messaging Protocol)是实时消息传输协议的缩写。该协议基于TCP,是一组协议的集合,包括基本的RTMP协议以及RTMPT、RTMPS和RTMPE等多种变体。RTMP主要用于在Flash/AIR平台和RTMP协议支持的流媒体/交互服务器之间进行音视频和数据通信。支持该协议的软件包括Adobe Media Server、Ultrant Media Server和Red5等。RTMP与HTTP一样,属于TCP/IP四层模型的应用层。
RTMP传输协议
RTMP是由Adobe Systems开发的开放协议,用于在Flash播放器和服务器之间传输音频、视频和数据。它有多种变体:
1. RTMP工作在TCP之上,默认使用端口1935;
2. RTMPE在RTMP基础上增加了加密功能;
3. RTMPT封装在HTTP请求中,可以穿透防火墙;
4. RTMPS类似于RTMPT,增加了TLS/SSL的安全功能。
RTMP协议像一个容器,可以封装AMF格式的数据或FLV中的视/音频数据。一个单一的连接可以通过不同的通道传输多路网络流,这些通道中的数据包按固定大小传输。
带货直播系统的连麦方案
目前市场上带货直播系统的连麦方案主要有两种:CDN连麦和RTC连麦。以下是RTC连麦方案的详细介绍。
方案一:服务端合流
优势:
- 发热量低,电量损耗小;
- 在客户端网络不佳时,对直播的影响较小。
劣势:
- 成本高:云服务商按分钟计费;
- 延迟大:音视频流需经过服务端中转并进行合成转码再推流。
方案二:客户端合流
优势:
- 节省成本:无需支付旁路推流费用;
- 延迟小:主播端直接推流,减少传输过程中的延迟。
劣势:
- 手机发热量大:手机端直接推流,对性能有一定损耗;
- 在弱网环境下,影响直播效果,主播端需同时推送两路流,考验上行网络。
推流小助手
推流小助手采用客户端合流方案,虽然会导致手机发热量增加,但为了节省成本,这一点牺牲是可以接受的。
何时使用推流小助手?
- 音频连麦:带货直播系统音频连麦对设备性能消耗小,带宽占用低,能实现低延迟和低成本;
- 视频PK模式:两人进行直播连麦,对带宽和性能消耗较小,适合使用;
- 单主播模式:单主播模式客户端无需转码,直接推流,不损耗客户端性能;
- 多人连麦(超过2人):连麦人数超过2人时,建议连麦人数不超过6人,超过6人建议使用服务端旁路推流。
高效的省钱连麦方式
市场上大多数连麦方式采用服务端合流,这对RTC提供商非常有利。然而,随着RTC市场的竞争加剧,许多提供商开始通过增值服务增加收入,因此市场上较少见到客户端合流的方案。
在网络条件较差时,可以关闭本地推流,开启服务端旁路推流;在网络条件良好时,关闭服务端旁路推流,开启本地推流。
推流小助手功能介绍
推流方式:
- 视频直播,音频连麦方式;
- 视频直播,视频连麦方式;
- 音频直播,音频连麦方式;
- 视频直播,音频连麦/视频连麦可相互切换;
- 设置直播推流转码。
功能 | 描述 |
用户视图布局 | 自定义视图布局 |
背景颜色 | 可自定义背景颜色 |
水印 | 可在直播房间内添加水印(包括网站logo或名称和时间) |
拓展信息-SEI | 直播:推流端将歌词/字幕分发到播放端,播放端实时绘制出歌词 |
音频采样率/声道/音频编码格式 | 保证声音还原真实自然 |
视频分辨率/码率/帧率以及输出的视频编码格式 | 保证视频流畅度和清晰度 |
CDN旁路推流
CDN(Content Delivery Network)是内容分发网络,旨在避免互联网上的传输瓶颈和不稳定环节,使内容传输更快、更稳定。其目标是让带货直播系统的用户能够就近获取所需内容,解决Internet网络拥堵问题,提高用户访问网站的响应速度。
简而言之,CDN利用遍布各省份和运营商的节点资源,优化跨运营商和跨区域的访问问题。在网络稳定的情况下,延迟时间可控制在80ms~100ms,几乎可以认为是同步的。
CDN的主要流程如下:
1. 主播开始直播,向调度服务器发送请求,调度服务器返回推流域名和sn;
2. 主播端采集音视频数据,发送给CDN节点,CDN节点进行处理;
3. 观众端要观看主播的视频,向调度服务器发送请求,返回拉流域名;
4. 观众端向CDN节点请求音视频数据。
带货直播系统对网络要求极高,任何问题都会导致卡顿、花屏或掉线。CDN通过负载均衡系统将内容推送到接近用户的边缘节点,显著提高了用户的访问速度和稳定性,非常符合直播的需求。