本次分享我将从四个方面向大家介绍一下WebRTC传输是如何保证音视频服务质量的。第一,实时通信的目标。我们首先需要确定实时通信的目标,才能够知道要将实时通信做成怎样的系统、保证怎样的实时性;第二,WebRTC如何保障数据传输的实时性;第三,进行实时传输时,想要满足实时性,网络与服务质量之间可能存在的矛盾;最后,就是WebRTC如何解决网络与服务质量之间的矛盾。
1、实时通信的目标
1.1 实时通信的目标是什么?
![](https://i-blog.csdnimg.cn/blog_migrate/004090d7bb9c58932594569c5fe902a3.png)
首先提出两个问题:第一,开会时你是喜欢在办公室里,还是更喜欢在线上开?第二,如果有一场演唱会,你愿意去现场呢?还是愿意在线上听?
1.2 线上与现在不同的原因
![](https://i-blog.csdnimg.cn/blog_migrate/a1082d3910dd6cdfb6eea730cb408e56.jpeg)
相信大家更多都会选择线下,理由是线上线下感觉不一样。其不同点在于:首先是摄像头与人眼看到的效果不一样,例如摄像头采集的角度过小、无法拍到某些角度的画面;其次是采集设备的质量参差不齐,一场会议中大家所使用的设备有的高清、有的模糊;最后,也是最关键的一点就是现场的气氛无法被摄像头采集到,每个人都有自己的气场,当大家聚集在一起时,现场氛围感非常热烈,但隔着屏幕无法感受到。
1.3 实时通信的目标
![](https://i-blog.csdnimg.cn/blog_migrate/79a946d64f61322d8cbbad2c731d287b.jpeg)
根据以上几点,我们可以总结出实时通信最终的目标是:尽可能逼近或达到面对面交流的效果。从目前的情况来看,超越面对面交流的效果是几乎不可能的。
2、 几个重要指标
2.1 几个重要指标
![](https://i-blog.csdnimg.cn/blog_migrate/9824912db79ff096d8ae26473dedd898.jpeg)
那么如何才能达到面对面交流的效果呢,这里涉及到几个重要指标。
最为关键的是实时通信的延迟指标,只有将延迟指标搞清楚,才能知道做实时通信时,达到怎样的延迟才算符合要求的,即接近面对面交流的效果。然后是音视频服务质量指标,延迟指标达到后,再根据这项指标判断音视频服务质量的好坏。
2.2 实时通信延时指标
![](https://i-blog.csdnimg.cn/blog_migrate/9d971ed279dc55b165b0e73ea69dace4.jpeg)
下面具体看一下延迟指标的分级标准。通过图中表格可以看到,如果端到端延迟在200ms以内,说明整个通话是优质的,通话效果就像大家在同一个房间里聊天一样;300ms以内,大多数人很满意,400ms以内,有小部分人可以感觉到延迟,但互动基本不受影响;500ms以上时,延迟会明显影响互动,大部分人都不满意。
所以最关键的一级是500ms,只有延迟低于500ms,才可以说是合格的实时互动系统。
2.3 音频服务质量指标
![](https://i-blog.csdnimg.cn/blog_migrate/d000c068d847e7b7c7b59ac4e078b0a8.jpeg)
接下来是音频服务质量指标,它根据MOS值来打分。4.0-5.0为“优”,评值标准是听得非常清楚,延时小,交流顺畅;3.5-4.0为“良”,音质稍差,听得清,延时小,有点杂音;3.0-3.5为“中”,音质较可,能听清,有一定时延,可以交流;1.5-3.0为“差”,勉强能够听清,交流时需要重复多次才能够表述清楚;0-1.5为“劣”,完全听不清,延时大,交流不畅。
2.4 视频服务质量指标
![](https://i-blog.csdnimg.cn/blog_migrate/0aea0cd799884008c895ae97cb0c8da5.png)
视频服务质量的评价标准有几个,它们也都是通过MOS值打分来判断质量好坏的,图中参考是以码流大小为标准评估指标。以640480为例,如果想达到MOS值为4.5的优质效果,可以看到产生的码流的大小大概在3Mbps左右。这样的码流对于实时传输来说太大了,如果是640480的视频占用3Mbps的带宽,那是一件非常奢侈的事儿。一般情况下,我们会选择MOS值为3.5(绿色线)的码流,其码流范围在600kbps左右。
从以上可以看到,在保证传输的实时性时,由于带宽是一定的,可能会牺牲一定的服务质量。