发新话题
打印

MD的基本算法原理(查找到的资料)

MD的基本算法原理(查找到的资料)

MD的基本算法原理--ATRAC
??ATRAC(Adaptive Transform Acoustic Coding自适应声学转换编码)是一套基于心理声学原理的音响译码

系统,它可以把CD唱片的音频压缩到原来数据量的大约1/5而声音质量没有明显的损失。这一技术可以说是把MD

的体积缩到这么小的算法基础。

ATRAC主要被设计完成如下任务:
*把16位、44.1KHz的立体声音频压缩到小于原数据量的1/5,而声音质量的损失最小
*硬件执行简单便宜,适合便携的播放和录放机

??统计分析表明,声音信号中存在多种冗余度,编码时可以去除这些冗余,在解码时这些冗余可以重建。利用

人耳听觉的心理声学特性(频谱掩蔽特性和时间掩蔽特性)以及人耳对信号幅度、频率、时间的有限分辩能力,编

码时凡是入耳感觉不到的成分不编码,不传送,即凡是对人耳辨别声音信号的强度、音调、方位没有贡献的部分

(称为不相关部分或无关部分)都不编码和传送。对感觉到的部分,进行编码时,允许有较大的量化失真、并使其

处于听阈以下,人耳仍然感觉不到。ATRAC就是利用这些特点来工作的。

心理声学

??为了了解ATRAC的原理,我们先来大致看一看心理声学的基本特性。这里主要包括几个概念:

等响曲线

??听觉的灵敏度随着频率而改变,人的耳朵对4kHZ的频率最灵敏,只在4kHz频率下能被察觉来出的声音压力水

平,在其它频率时并不能被觉察出来。而通常两个功率一样但频率不同的音调听起来并不一样响。一个声音的感

知响度可以用多少个"sone"来表述,1 sone定义为一个40分贝的音调在1kHz下的响度。



屏蔽

??屏蔽是指一个声音(弱信号)被另一个声音(强信号)屏蔽导致不可察觉。它包括同时屏蔽、后屏蔽和前屏

蔽。同时屏蔽发生在强信号和弱信号同时发生的时侯,例如一段会话(弱信号)被一列路过的火车(强信号)淹

没。前屏蔽发生在强信号产生之前的极短的时间里;后屏蔽发生在强信号刚结束之后极短的时间里。

??当两个声音在时间和频率上很接近的时候,屏蔽效应就会很强。例如同时屏蔽的效应比前效应和后效应要强

,因为声音是同时发生的。屏蔽试验通常用一个频带很窄的白噪音作为屏蔽信号,然后测量一个纯净的音调在不

同的时间和频率下刚好能被察觉的水平。





??这里表现了两个重要的结论:首先,当强信号的频率与弱信号相同或比它高时,同时屏蔽效应最有效;其次

,在强信号停止后比较长的时间里后屏蔽有效,但前屏蔽只在强信号开始前2、3毫秒内有效。

临界频带

??对于人类的听觉来说,对声音的感知特性并不是以线性频率为尺度来变化的,而是可以用称之为临界频带的

一系列有限频段来表达。在同一个临界频段内(即在一个确定的频率范围内)的频率,耳朵的听觉感知是相类似

的,即心理声学特性都是一样的。在有屏蔽信号的情况下,一个临界频带之内的声音感知程度与等带宽划分的跨

越几个临界频带的声音感知程度并不相同。



ATRAC的编码和解码

??当数字音频数据被压缩时,通常都会把一定数量的量化噪音带入信号。许多音频编码系统通过控制这些噪音

的时间-频率分配使得它们在人耳中不被察觉。如果这一点做得很成功的话,那么经过处理的信号与原信号将难

以区别。

??通常的做法是,音频编码器把信号分解为一组单元,每一单元都对应特定的时间和频率范围。音频信号会被

使用这些时间-频率分配并根据心理声学原理来分析。分析指出那些单元是重要的,必须高精度编码,那些单元

不敏感,可以容忍一些量化噪音而不会降低声音的感知质量。基于这些信息,可用的比特被分配到时间-频率单

元。通过使用这些比特,每一个单元的频谱范围被量化。而在解码器中,量化频谱会根据比特分配重新建立,然

后合成为音频信号。

??ATRAC也是这样操作的,但有一些改进。ATRAC不但把心理声学应用在比特分配运算中,而且还应用在时间-

频率的分割过程中。通过结合子频带译码和转换译码技术,输入的信号被分析到不均匀的强调重要低音区域的频

率分割。另外,ATRAC使用一个可变块长度改编输入的信号。这可以确保在稳定通过时高效的译码而不会在瞬时

通过时影响时间的分辨率。

编码过程

??ATRAC系统同时采用了子频带技术和转换技术。为了减轻芯片处理编码时的负担,输入信号在5.5125kHz和

11.025kHz被分成三个频带。子频带的分解使用QMF(Quadrature Mirror Filters积分映射过滤器)来完成。



??这三个频带被MDCT(Modified Discrete Cosine Transform变址离散余弦变换--类似于通常的快速傅里叶变

换)转换成频谱值,MDCT允许块之间有达50%的交迭,使得在维持临界采样时能提高频率解析度。块的长度可以

根据信号的种类改变,这就是ATRAC的自适应部分(这一做法主要是为了利用前屏蔽掩盖初始量化噪声)。MDCT

出来的结果是一系列的频谱值,这些频谱值,被使用浮点数量化,然后被一些BFU(Block Floating Units块浮

动单元)聚合起来,每一个BFU使用一样的比例系数和字长来分配比特。

??ATRAC并没有详细说明比特分配的算法和心理声学模型。每一个BFU的字长存贮在经过量化频谱值的比特流里

,所以解码器与比特分配算法是完全分开的,这使得改进比特分配算法(改进音质)可以不用改变现有的解码器

基础。

解码过程

??ATRAC的解码要比编码过程简单得多。除了(或多或少)复杂的比特分配阶段,这个过程类似于编码过程的

反过程。解码器把频谱值重组(使用比例系数和字长),这些频谱值使用参数给出的适当块长通过IMDCT

(Inverse MDCT)转换成时域,最后,三个时域信号被QMF综合过滤器综合成输出信号。



??ATRAC压缩后的数据量还有多大?用一个专用的名词bitrate(位速率--常常在压缩相关的东西中见到它)来

表示的话,ATRAC压缩后立体信号的Bitrate是292162.5bit/sec,即约285Kbit/sec。这个Bitrate其实是根据

ATRAC的算法处理过程计算出来的。由于ATRAC把每512个16比特的采样压缩成一个ATRAC"声组"(212bytes),所

以详细的计算可以归结为:
44100 samples/sec(每通道采样率)/512 sample/soundgroup(按每512个采样一个声组分开)*2 channels(

两个通道)*212bytes/soundgroup*8bit/bytes=292162.5bit/sec
简单的说,就是压缩比为4.83:1。
QQ:86933109 来自上海,愿和大家交朋友

TOP

已加精华
qq:53863100(技术担当/好友数已满)173902641(技术支持)154097266(原厂零件查询/订购)497552123(前台担当)送修热线:0731-6588498(仓库)0731-8645497-010(投诉/建议) 0731-8645497(vaio咨询,4S服务[10线])0731-6588498(零部件中心)(1号双机)msn:echostyle@hotmail.com email:webmaster@esdigi.com尽享索尼产品,品味满意服务

TOP

这个好像以前有人发过。。。。。

TOP

  高手啊
出来混,总是要还的

TOP

这个帖子可以做导游^_^[em17]

TOP

支持lz和楼上
qq:53863100(技术担当/好友数已满)173902641(技术支持)154097266(原厂零件查询/订购)497552123(前台担当)送修热线:0731-6588498(仓库)0731-8645497-010(投诉/建议) 0731-8645497(vaio咨询,4S服务[10线])0731-6588498(零部件中心)(1号双机)msn:echostyle@hotmail.com email:webmaster@esdigi.com尽享索尼产品,品味满意服务

TOP

引用:
以下是引用echo在2005-9-11 5:07:37的发言: 支持lz和楼上
已经导游了,支持您的支持^_^!!!!

TOP

发新话题