直播教育app开发过程中,需要解决的“老朋友”

2020-05-13 10:30:34 浏览数 (1)

  要说在直播教育app开发的过程中,什么是技术人员最头疼的?肯定有人会毫无疑问的回答:直播的卡顿和延时!没错,这两位可以说是直播过程中的“老朋友”了。毫不夸张的说,每一个直播平台都遇到过这两种问题。所以,今天我们就来聊一下直播教育app开发存在的延时是怎么个情况。

直播教育app开发直播教育app开发

  音视频数据在直播教育app端产生的延时是可以进行细分的。直播教育app端的延时主要是与编解码算法、音视频数据量和硬件性能相关的,并且直播教育app端的延时可以达到30-200ms甚至更高。因此,音频和视频在采集端或者是播放端所产生延时的过程是基本一致的,但原因不同。

1、音频在app端的延时

  (1)采集后的音频会先经过声卡进行信号转换,声卡的本身会产生延时。

  (2)音频进入前处理和编码阶段后,如果采取标准编码,那么最低算法的延时就需要2.5-60ms。

  (3)音频播放过程中出现延时,大多数与app端的硬件性能相关。

  (4)在前处理和后处理这些算法的过程中,都会带来算法延时。

  (5)如果在抗丢包处理中,增加重传算法和前向纠错算法的话,延时一般会在20-200ms左右。但是如果受到了jitterbuffer影响,可能会更高。

2、视频在直播教育app端的延时

  (1)一般视频在进行采集时都会遇到成像延时,主要是由CCD相关的硬件产生。目前市面上较好的CCD一秒可以达到50帧,延时约为20ms。

  (2)用H.264举例的话,主要包含I、B、P帧。如果是每秒30帧相连帧,并且不包括B帧。因为B帧的解码,依赖于前后视频帧会增加一定的延时,所以采集到的一帧数据可能就会直接进入编码器。没有B帧时,编码的帧延时可以忽略不计。但如果有B帧,就会带来算法延时。

  (3)在渲染情况下,一般延时比较,但是也会受到音画同步和系统性能的影响增大延时。

  (4)与音频相同的是,视频也会遇到直播教育app端网络延时的状况。

直播教育app开发直播教育app开发

  直播教育app开发时,在设备端,CPU和缓冲都会同时处理来自多个应用和外接设备的请求。如果某个出现问题的设备请求占用了CPU,那么就会导致音视频的处理请求出现延时的情况。就拿音频来说吧,如果出现上述情况,CPU可能会没办法及时填充音频缓冲区,音频也会出现卡顿。

  由此可见,在直播教育app开发的过程中设备整体的性能,还是会给音视频的采集、编解码和播放造成一定影响从而产生延时的。所以,还需要在这方面多多注意。

0 人点赞