直播视频卡顿延迟时如何优化
试想一下,当你和朋友进行视频时,这时突然画面卡住不动了,而且声音变得断断续续,是不是会感到特别的尴尬?为了避免这些情况,那么在直播app开发过程中,针对于延迟,在技术上能对哪些方面进行优化呢?下面拓幻科技就来简单介绍下。 一、编码优化 首先,确保Codec开启了最低延迟的设置。Codec一般都会有低延迟优化的开关,对于H.264来说其效果尤其明显。另外,编码器一般都会有码控造成的延迟,把它当成编码器和解码器比特流之间的缓存,在不影响视频质量的情况下,将其设置得尽可能小也可以降低延迟。还有,最好不要使用视频MJPEG的视频压缩格式,至少使用不带B帧的MPEG4视频压缩格式,最好使用H.264baseline profile这样一个简单的优化。这样一个简单的优化可以降低延迟,因为它能够以更低的码率编码全帧率视频。 二、传输协议优化 在服务端节点和节点之间尽量使用RTMP而非HLS协议进行传输,这样可以降低整体的传输延迟。如果终端用户使用RTMP来播放,尽量在靠近推流端的收流节点进行转码,这样传输的视频流要比原始视频流更小。此外,如果有必要,可以使用定制的 UDP 协议来替换 TCP 协议,省去弱网环节下的丢包重传可以降低延迟。 三、传输网络优化 在服务器节点中缓存当前GOP,配合播放端优化视频首开时间。还可以让服务端实时记录每个视频流流向每个环节时的秒级帧率和码率