音视频开发系列(3)音频编解码的原理

本文详细介绍了音频编解码的原理,包括采样率、通道数和量化位数等基本要素,以及压缩音频的重要性。通过举例说明,展示了声音压缩如何显著减少存储需求。文章探讨了编码器设计时需要考虑的因素,如压缩比、算法复杂度和延时,并介绍了经典的语音编码模型,如LPC和G.729。此外,还讨论了听觉模型在音频编码中的作用,如临界频带和绝对听觉阈值。最后,提到了AAC协议族及其低延迟特性,以及在实时通讯领域的应用。
摘要由CSDN通过智能技术生成

详解音频编解码的原理、演进和应用选型等

4、语言/音频编码总表

▲ 语言/音频编码总表

上图展示的是语言/音频编码总表,可以看到其比视频编码要复杂得多,单纯的算法也远远比视频要更加复杂。

5、数字语言基本要素

数字声音具有三个要素:

1)采样率; 2)通道数; 3)量化位数。

​▲ 声音数字化的过程

如上图所示,声音数字化的过程为:

1)采样:在时间轴上对信号数字化; 2)量化:在幅度轴上对信号数字化; 3)编码:按一定格式记录采样和量化后的数字数据。

6、为什么要压缩

压缩音频,主要是为了在降低带宽负担的同时为视频腾出更多带宽空间。存储和带宽二大因素决定了语音压缩的必要性。

我们看看下面的例子。

长度为4分钟,采样频率为44100Hz,采样深度为16bits,双声音Wav文件大小:

44100Hz*16bits*4minutes*2=(44100/1second)*16bits*(4minutes*(60seconds/1minutes)*2=705600bits/second*240seconds=169344000bits=169344000/(8bits/1byte)*2=42336000bytes=42336000/(1048576/1M)bytes=40.37MB

MP3,128kbps压缩后文件大小:

128kbps*4minutes=(128kbits/1second)*(4minutes*(60seconds/1minutes))=(128kbits/1second)*240seconds=30720kbits=30720kbits/(8bits/1byte)=3840kbytes=3840k/(1024k/1M)bytes=3.75Mbytes=3.75MB

正如上面的例子,声音压缩后,存储大小为原大小的十分之一,压缩率十分可观!

7、编码器考虑因素

7.1 基本概念

编码器考虑的因素:

1)最佳压缩比; 2)算法的复杂度; 3)算法延时; 4)针对特殊场景下的特定设计; 5)兼容性。

通过一些特定的压缩算法,可以压缩音频文件至原来的1/10,同时人耳也无法分辨压缩前后的声音质量差异,需要满足多种条件才能实现这种效果;而对于编码器,无论是设计阶段还是使用阶段,我们都需要考虑最佳压缩效果、算法的复杂度与算法的延时,结合特殊场景进行特定的设计;而兼容性也是我们不能不考虑的重点。

7.2 语音经典编码模型:发音模型

▲ 发音模型(原图点击查看

我们的很多编解码器都是基于综合人的发音模型与一些和听觉相关的理论支持研究提出的特定编解码算法。初期我们通过研究人的发音原理来设计音频编解码的算法,包括端到端的滤波或轻浊音等,只有充分理解人的发声原理我们才能在编解码端做出有价值的优化。

【7.2.1】语音编码模型——LPC:

▲ 经典语音编码模型:LPC(原图点击查看

▲ LPC 数学表达

LPC作为经典语音编码模式,其本质是一个线性预测的过程。早期的G

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值