音频编码压缩的必要性【音视频编码基础知识】

我们都知道,要想把音视频数据实时分享到世界的各个角落,有一个传输工具必不可少:网络。而要用好这个传输工具,有一个必须关注的点:网络带宽。

作为资深网民,大家肯定都了解过带宽。它指的是网络链路1秒钟内能传输的最大数据量,其单位一般使用 bps(bit per second),对应到推流(上传)/拉流(下载),可以相应分为上行带宽和下行带宽。如果把网络比喻为高速路,那么带宽就相当于这条路的宽度,音视频数据相当于路上来往的车辆。公路越宽,则允许并行通过的车辆越多,其运输能力就越强,如果道路太窄、需要并行通过的车辆又太多,可能会出现阻塞、甚至是车祸。对应的,网络带宽越大,单位时间能传输的数据越多,如果带宽不足,势必导致传输异常,产生卡顿、甚至数据丢失等影响用户体验的问题。

基于对带宽的了解,我们进一步看看纯音频场景对带宽的需求情况。我们已经知道,音频模拟信号经数字化处理会得到标准的数字⾳频数据裸流,其格式为 PCM。不妨先来计算一下,如果直接传输 PCM 数据需要多少带宽。

音频数据传输所需的带宽,可以通过音频码率来度量,在 音频必知必会之音频要素 一讲中,我们已经学习了音频码率的概念及计算方式。对于采样率 44.1K Hz,位深 16 bit 的双声道音频 PCM 数据,它的码率为:

采样率/Hz * 位深/bit * 声道数 * 时长(1s) = 44100 * 16 * 2 * 1 = 1411200 bps = 1.4112 Mbps(bps = bit per second)

也就是说,要求推流用户的上行带宽、拉流用户的下行带宽至少为:1.4112 Mbps。这是单条音频流的情况,如果将场景扩展到语聊房或在线会议,带宽要求还需要依据上麦人数翻 N 倍。而在一些特殊场景,比如曾风靡一时的 ClubHouse 或 势头正旺的 MetaWorld,它们甚至号称“不限制上麦人数”,对于带宽的要求必然会更高。根据统计数据显示,2021年我国宽带网络的上行速率中值约为35Mbps,考虑到实际场景中除了音频之外,还有其他数据需要传输(比如视频数据,所需带宽是音频的数十倍),综合考量下来,带宽也算是“寸土寸金”了,PCM 数据的码率着实让人“高攀不起”。

所以,如何高效利用带宽,如何在有限的带宽下传输更多的音频数据,是我们的重要课题。而音频编解码,就是这个课题的一个有效解决方案。

音频编码压缩的必要性【音视频编码基础知识】

在 RTC 音视频数据的处理链路上,音频编码模块位于音频前处理模块之后、网络传输模块之前,其主要作用就是对原始音频数据进行编码压缩,以减小数据量、降低带宽消耗(音频解码模块位于网络接收之后,可以认为是音频编码的反向流程,也即对压缩后的数据进行解压缩、还原)。常见的编码算法,比如 AAC,能够实现相对于 PCM 数据1/15以上的压缩率,也即将码率 1.4112 Mbps 降低至 0.094 Mbps,带宽占用将得到显著的优化。对于 RTC 场景来说,更低的带宽消耗意味着更好的场景适配性、更好的弱网适应性,这对于 RTC 应用的普及、用户体验的保障都有裨益。除了带宽优化外,如果有保存音频为文件的需求,编码还能极大减轻存储空间的压力。

综上,“降低带宽消耗”“降低存储空间占用”构成了音频编解码存在的必要性。了解其必要性之后,我们再进一步探究,为什么音频数据可以被编码压缩,编码压缩的“可行性”基础究竟是什么呢?

原创文章,作者:ZEGO即构科技,如若转载,请注明出处:https://market-blogs.zego.im/reports-technique/511/

(0)
上一篇 8月 4, 2022 11:02 上午
下一篇 8月 11, 2022 11:12 上午

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注