博客列表 >开发网络视频直播系统应该重点标记的几个方面

开发网络视频直播系统应该重点标记的几个方面

一只可爱居的博客
一只可爱居的博客原创
2019年03月29日 17:04:27620浏览

一个直播平台的好坏除了跟长期的用户体验有关,还跟用户的第一印象有关。也就是说,从用户打开网络视频直播系统的那一刻起,就已经算是第一印象的开始了。所以,用户体验对于大部分直播平台来说是非常重要并且十分头疼的事情。

1.首屏打开

当用户进入直播间后,播放器就会向CDN请求数据,CDN接收到拉取音视频流的请求之后就会向前回溯一段时局。如果回溯了2秒钟,就会到达音视频流的第5帧,从而CDN会将第5帧开始往后的数据,通过RTMP或者是其他的直播协议源源不断的发送到播放器。由于CDN是从第5帧开始发送数据的,之后数据会全部缓存在CDN服务器中,所以才可以将数据源源不断的发送到客户端。这些数据通常会全部缓存在播放器的内存中,主要用于有效的抵抗网络波动所造成的影响。但是这样做的缺点就是:播放器相比起主播,延迟的时间会增加。

25356495.gif

2.网络拥塞

这应该是互联网中十分常见的现象了,但是这一现象给直播带来的影响也是比较严重的。举个简单的例子,如果用户在观看直播时,播放到第150帧时用户的下行网络出现了问题,再加上播放器还没有接收到新的数据,那么直播画面肯定就会出现卡顿现象。但这个时候主播端并不知情,所以主播还在继续推送音视频流数据。在经历几秒左右的卡顿之后,用户端的网络恢复后,音视频数据又会源源不断的从CDN开始流向播放器。但是这里可能会出现一个问题:由于播放器播放音视频数据时,是需要按照每一帧的时间戳进行匀速播放,如果不做任何的优化,就表明每出现一次卡顿的现象,直播的延迟就会增加一段时间,从而我们可以得知增加的时间和卡顿的时间是一样的。

3. 延时累积

在直播中也会出现延时累积的现象,这个时候就要求播放器进行延时追赶。也就是说,播放器必须实施侦测缓存中的数据情况,一旦大于其中的某一个值就需要启动延时追赶。可以直接扔掉多余的数据,也可以采用快进的方式。对于用户来说,快进不会产生明显的跳跃,但需要注意的是不要因为快进而产生尖刺,并且在追赶时不要太过激进,应该在缓存中留存一段数据用于缓解可能再次发生的网络拥塞。

0b45fd11f22a4a82970d822a1ca3a3a9_th-wps图片.jpg

以上内容就是网络视频直播系统中较为常见的几个问题,要想优化用户体验就应该从以上几个方面入手,从而增强产品体验和用户粘性。如果大家对于直播相关知识感兴趣,欢迎关注我!

本文声明原创,转载请注明出处。


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议