编者按:企业在挑选实时音视频服务时除了关注功能、费用这些基本的指标之外,还需要服务的可靠性,特别是在弱网环境下音视频服务的实时性和流畅性。除了服务商官方宣称的延时、抖动和丢包数据之外,企业可通过服务商采用的传输优化策略判断其在实时音视频传输方面做的怎么样。

一、传输层协议的选择

传输层协议是选择是音视频传输的基础,因此我们在选择第三方音视频服务平台时,除了关注前端能够实现哪些功能之外,还需要特别关注底层的产品服务架构,包括实现逻辑和采用的传输协议等。其中传输层协议的选择会直接影响后续的传输效果。关于音视频传输协议的选择,主要是TCP和UDP协议的选择,其他的RTMP协议、RTP/RTCP协议(或者类RTP的私有协议)也都是基于TCPUDP协议的。不同的传输协议在网络兼容性、CDN支持、开发难度、传输可靠性等方面都会有所不同。目前第三方的实时音视频服务产品中,视频直播SDK多采用基于TCP协议的RTMP 协议,以兼容 CDN 分发网络,向用户进行直播;而音视频社交通话、聊天室等多采用基于UDPRTP协议,以保障弱网环境下音视频传输的可靠性。

二、信道保护纠错机制

实时音视频服务中的延时、卡顿等问题会直接影响用户的使用体验,信道保护就是为了保障传输可靠性的一种纠错机制,常用的信道保护技术有四类,分别是:前向纠错FEC,丢包重传ARQ 、码率自适应ABC和错误隐藏PLC

▌前向纠错FEC前向纠错FEC是一种通过增加冗余数据对丢失的数据包进行恢复的信道编码算法,属于前向的策略,好处延迟最小,不足之处需要增加冗余数据包,降低了传输信道的利用率;

▌丢包重传ARQ通过重传关键数据包来纠错的信道保护算法,属于后验的策略,能够一定程度上弥补传输效果,虽然会有一定的延时,但好处是不会明显增加额外的带宽。

▌码率自适应ABC:技术指的是服务端和推流端协作控制码率来自动适应网络环境,在网络好的情况下,适当提高码率,提高语音视频的质量和降低延迟;在网络差的情况下,适当降低码率,保障语音视频通话的可用性和流畅性,适当牺牲音画质量。

▌隐藏错误PLC:主要应用于实时语音通话的场景,避免语音数据包的丢失会造成语音的歪曲。具体来说,是由算法通过前一个语音数据包和后一个语音数据包的相关性来“推测出”当前丢失的语音数据包,从而“隐藏”了信道传输所造成的错误。

三、智能QoS策略

以上我们简单介绍了常用的信道保护算法技术,在实际的音视频传输处理中需要根据实际情况将这几类技术配合使用。智能QoS策略指的就是根据网络情况综合多种算法配合使用。混合型方案的设计需要审视检测网络状况,根据带宽估算结果自动调节码率,并在发送端进行带宽分配,把带宽分配给原始数据包、FEC校验包和 ARQ重传包。智能QoS策略能够在音视频质量和信道保护算法纠错能力之间寻找平衡。最终达到一种最优的状态:即在网络带宽允许的情况下提供尽可能好的视频质量;当带宽够用时,可以适当提供高码流高分辨率的视频;当网络拥塞时,应该降低码流和分辨率,提供流畅实时的音视频。

 

➤  小结

网络状况是影响实时音视频应用效果的重要因素,相应地,实时音视频应用构建的关键就在于通过优化编码、推流、传输及播放的各个环节来提升音视频呈现效果。传输优化除了针对各个节点的优化之外,更重要的是对实时的传输机制进行优化,从而能够在不同的网络环境实现最佳的音视频传输。以上,我们为您介绍了实时音视频传输机制优化的一些思路,包括网络传输层协议的选择、信道保护纠错机制、智能QoS策略等,以实现弱网环境下音视频传输服务的实时性和流畅性。

立即注册查看完整版评测报告
马上注册         立即登录