视频直播软件开发中如何解决连接小麦的问题

视频直播软件开发中如何解决连接小麦的问题

在视频直播过程中,用户看到的主持人直播画面实际上是单向直播。视频直播软件开发的服务器接收到主持人发送的图片后,将其分发给每个请求端,属于单向内容输出。当用户请求与主机连接时,性质会发生变化。信息流的传输从单向传输变为双向传输。如果用户正在观看直播,他接收的信息流包括主机和中继的用户。

为了确保用户能够及时收到语音信息,直播平台将使用CDN分发直播内容。也就是说,用户接收到的信息流线路不一定是它请求获取信息的线路,但是CDN节点根据服务器的负载情况重新选择最优的线路进行分配。对于许多用户组的交互式直播公共服务,不同地区的用户必须能够同时接收相同的直播内容,以确保图像流畅和视频传输延迟低。

如今,RTMP协议被广泛应用于视频直播软件中。绝大多数现场视频广播也基于RTMP协议和CDN技术。当主机和用户连接小麦时,他们将根据RTMP协议将主机和用户的流分别推送到CDN。CDN会将两个视频流推送到播放端,播放端会将两个视频流混合在一起,形成一幅供播放的画面。

小麦与RTMP和CDN节点的连接问题

RTMP协议可以保证直播延迟控制在5s以内,不会影响观看用户的观看体验,但对于联麦用户来说,会感觉到明显的延迟,影响交互体验。

当主机和用户连接小麦时,他们会听到明显的回声。目前,这一问题较为普遍,尚未得到解决。

如果实现连接小麦,消耗的流量将大大增加。视频直播软件本身将在宽带、流量支出和CDN节点使用方面使用大量流量。为了实现连接小麦,传输两个信息流所消耗的流量将会更高。

如果已经有很大的用户群,并且有必要适应高并发性,那么基于RTMP和CDN技术的解决方案必须是最好的,这可以保证大多数用户的观看体验。如果对高并发性的要求不高,但对直播流的要求较高或者对直播流延迟的要求较低,则可以采用专用的UDP协议解决方案,适用于一对一的流媒体或语音聊天室。

这篇文章已被宣布为原创,请注明转载来源。

大家都在看

相关专题