科普小知识——音频编码

转自编风网:http://befo.io/2877.html

从模拟信号变成数字信号的过程称为模数转换(AD,AnalogDigital Convert)。AD转换要经过采样、量化、编码三个过程。编码(Code)就是指按照一定的规则将采样所得的信号用一组二进制或者其他进制的数来表示。经过编码后的数据便于在数字网络上传输,到达对端以后,再通过解码(Decode)过程变成原始信号,进而经过数模转换(DA)转为模拟量,即转换为人们能够感知的信号。

一般来说,编码与解码过程都是会成对出现的,所以习惯上人们又喜欢把他们合起来说,称为“编解码(Codec)”,即Co(de)与Dec(ode)的缩写,但有时候为了方便,也简称为“编码”,如我们常说的“音频(或语音)编码”或“视频编码”。

PCM编码

使用PCM方式对原始声音信号经抽样、量化后得到线性编码,然后再进行压缩的编码方式就称为PCM编码。PCM的两种压缩方式A律和u律(alaw和ulaw)对应的名称分别为PCMA和PCMU。PCM编码是在ITU-TRecommendation G.711标准中定义的,因而又称为G.711编码。

经过压缩的PCM编码仍然占用比较高的带宽,因此在带宽比较紧张或比较昂贵的场合(如卫星线路上)又出现了一些更高级的压缩算法,目的都是为了降低带宽,提高传输效率。

另外,由于VoIP是在IP网上传输的,而大多数的网络没有QoS(Quality of Service)保证,容易产生丢包(Packet Loss)、延迟(Delay)或抖动(Jitter)。它们对于普通数据传输影响不是很严重,但对于实时的语音来说,影响就很大,有时会引起声音质量的迅速下降,严重时甚至无法分辨。因此,某些好的压缩算法又平衡了这些因素带来的影响,在质量不好的网络上也能得到较好的声音质量。

PCM编码的采样频率为8000Hz,而随着技术的进步及人们对声音质量的要求的提高,各种高清(HD -High Definition)编码也纷纷涌现,如G.722等。

如果在网络上传输语音,要将编码后的语音数据进行打包。通常使用的打包时间间隔为20ms,即将20毫秒的音频数据放到一个数据包里传送,也可以理解为每20毫秒打一个包。如果采样频率是8000Hz,那么,一秒钟就能传输1000(ms)/20(ms)=50个包,每个包携带8000/50=160个采样数据。在PCMA或PCMU方式中,每个采样数据占1字节,因此一个20ms的PCM包的数据净荷就是160个字节。

语音编码最基本的两个技术参数就是采样频率和打包周期。采样频率越高,声音就越清晰,保留的细节就越多,当然它会占用更大的带宽。对于普通“人声”通话来讲,8000Hz就够了,但对于高品质的音乐来讲,就需要更高的采样率才能保持悦耳,我们通常说的CD音质的声音使用44.1kHz的采样率。打包周期跟传输有关,打包周期越短,延迟越小,相对而言传输开销就会越多,因而需要更大的带宽;打包周期越长,带来的延迟就越大,如果传输过程中有丢包,对语音质量的影响也越大。大部分编码都支持多种打包周期,最常见的是20ms,iLBC,G.723等默认使用30ms,更长的打包周期如60至120ms通常用于卫星链路等高延迟,低带宽的场合。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值