GBgba.com | PC Games | PS2 | PS3 | PSP | Xbox | Xbox 360 | GC | Wii | DS | GBA | 怀旧 | DC | SS | MD | N64 | SFC | FC | 街机
PSP:最专业的PSP网站

PSP相关新闻

PSP选机中心

PSP相关软件

PSP游戏下载

PSP电影下载

PSP玩家论坛

PSP在线商城
频道首页 | 资讯中心 | 硬件周边 | 游戏攻略 | 游戏秘技 | 相关教程 | 游戏视频 | 游戏介绍 | 文摘杂谈 | 游戏存档 | 二手主机 | DVhook
  您现在的位置: 掌机之王 >> PSP >> 相关教程 >> 文章正文 加入收藏↑
PSP音频全攻略之初识有损压缩格式
 

作者:Joylin1984    

来自:电玩巴士

我是一个Protable Audio小烧,所以,对PSP的音频功能也很好奇。而且,我想与大家分享我的看法。希望对大家有用!

    前言,作为一部Protable Audio,其解码芯片的能力将影响整体的效果。PSP并不是专业的Protable Audio,所以对机器的原声不能要求过高,但SONY的功力深厚,PSP的音频潜力还是很大的。在此,我不想评论PSP的原音音质,这是有局限性的。因为音质的好坏往往带有主观性,而没有编码算法来的这么客观。我想告诉大家的就是,在有限的条件下,发挥PSP的最大潜力。

   PSP的音频解码为软件解码,但就其效果来看,与普通的Protable Audio有的一拼。作为一部Protable Audio,数字音频格式是他的灵魂,而数字音频格式的核心就是算法。PSP的储存介质空间有限,如果用无损压缩格式(WAV/*.plm)聆听音乐,就因其体积较大而显得捉襟见肘。所以,在此我主要介绍有损压缩格式——MP3( MP3PRO\MP3 SURROUND)、AAC(*.3gp/*.mp4/*.m4v)、ATRAC3/ATRAC3+(*.aa3)。

    先来明白音频压缩的原理:利用人耳听觉的心理声学特性(频谱掩蔽特性和时间掩蔽特性等)以及人耳对信号幅度、频率、时间的有限分辨能力,编码时凡是人耳感觉不到的频率不编码、不传送,即凡是对人耳辨别声音信号的强度、声调、方位没有贡献的部分(称为不相关部分或无关部分)都不编码和传送。对感觉不到的部分进行编码时,允许有较大的量化失真、并使其处于听阈(即人耳所能听到的最低音量)以下,人耳仍然感觉不到。音频的压缩就是利用这些特点来工作的。

PS:心理声学的几个基本概念

1、等响度曲线
   

    人的听觉的灵敏度随着频率而改变。即通常两个功率一样但频率不同的音调听起来并不一样响。通过等响度曲线,我们可以看出,人耳对4KHz的频率最灵敏,即在4KHz下能被察觉出来的声音压力水平(响度),在其他频率下并不能被察觉。这就给在一些不太灵敏的频率下失真提供了条件。

2、屏蔽

   

    我们上高中物理时学过屏蔽。就是强的声音信号把弱的声音信号覆盖,导致我们无法察觉。而且,当两个声音在时间和频率上很接近时,屏蔽效应就会很强。因此,我们可以在编码时对被屏蔽的部分不编码、不传送。这样,音质依然没有大的损失,人耳也不易察觉。

3、临界频带

    对于人类的听觉来说,对声音的感知特性并不是以线形频率为尺度来变化的(人的听觉还没那么好),而是可以用被称为临界频带的一系列有限的频段来表达。简单的说,把整个频带划分成几段,在这每个频段里,人耳的听觉感知是相同的,即心理声学特性都是一样的。

言归正传,编码的精髓就是算法。
下面我就谈谈几种主流编码及其算法

1、MP3( MP3PRO \ MP3 SURROUND)
  
    MP3应该算目前应用最广泛的有损压缩数字音频格式了。它的全称是MPEG(Moving Picture Experts Group)Audio Layer-3。1987年德国Fraunhofer研究院研制成功的一种有损压缩数字音频格式,并于1989年取得专利。起初,它并不完善,它更像一个编码标准框架,留待人们去完善。1992年,这一技术并入了MPEG规范,并有了正式名号——MP3。

    MP3文件是由帧(frame)构成的,帧是MP3文件最小的组成单位。什么是帧?还记得最初的动画是怎么做的吗?不同的连续画面切换以达到动态效果,每幅画面就是一个“帧”,不同的是MP3里面的帧记录的是音频数据而不是图形数据。MP3的帧速度大概是30帧/秒。

  每个帧又由帧头和帧数据组成,帧头记录着该帧的基本信息,包括位率索引和采样率索引(这对理解ABR和VBR编码方式很重要)。帧数据,顾名思义就是记录着主体音频数据。

  上面说的都是MP3编码的基础,但事实上,早期的编码器都非常不完善,压缩算法近于粗暴,音质很不理想。MP3的音质达到现在的水平有两次飞跃:人体听觉心理学模型(Perceptual Model)的导入和VBR技术的应用。
     
    PS: VBR是variable bitrate的缩写,意思是可变比率, 就是MP3文件压制的时候声音元素较多,比率较高时,将自动减低压缩比特率,在比特率需求比较低时自动升高比特率,这样做的目的是在保证音质基本不被损害的情况下增加文件在线播放时的速度,和减少在本机播放时所占的系统资源……这是Xing发展的算法,他们将一首歌的复杂部分用高Bitrate编码,简单部分用低Bitrate编码。主意虽然不错,可惜Xing编码器的VBR算法很差,音质与CBR相去甚远。幸运的是,Lame完美地优化了VBR算法,使之成为MP3的最佳编码模式。这是以质量为前提兼顾文件大小的方式,推荐编码模式。

    MP3能生存到今天,它的发展仍未止步。2001年6月14日,法国汤姆森与美国RCA两家公司联合推出了一种新的压缩格式:MP3PRO。MP3PRO是基于MP3技术改良而来,它利用了Coding Technologies公司开发的编解码增强技术,该术称为SBR(Spectral Band Replication)。当制作MP3PRO文件时,编码器将音频分为两部分。一部分是将音频数据中的低频部分分离出来,通过传统的MP3技术编码得出正常的MP3音频流。此举使MP3编码器专注于低频段信号的压缩从而获得更好的质量,而且使原来的MP3播放器也能播放MP3PRO文件。另一部分则是将分离出来的高频信号进行编码并嵌入MP3流中。传统的MP3播放器会将其忽略掉,而新的MP3PRO播放器会将其还原出来并进行组合,得到高质量的全带宽的声音。通过这项技术,使得MP3PRO 64Kbps 的编码率便可提供128Kbps的MP3相同的质量,且具有相差无几的音质,而体积只有MP3 的一半大小。

图表 - SBR技术在音频编码/解码过程中的应用

    PSP就支持MP3PRO,而且支持MP3PRO的格式转换软件也很多,大家可以去网上找找。有兴趣的话可以试试,绝对比mp3强啊。

    Thomson在2004年12月初正式宣布世界上最流行的音乐压缩格式MP3迈进多声道时代。MP3 SURROUND是由Fraunhofer IIS和Agere联合开发的,使用了binaural Cue Coding(BCC)技术心理声学编码,可以在实现多声道环绕的同时保证文件的大小。同时加入的Agere Systems公司则主要负责将多声道MP3格式——MP3 SURROUND进行推广。 MP3 SURROUND技术实现了5.1声道环绕的高品质音频,应用范围相当广泛,可以在网络音乐发布、广播系统、PC视听应用、游戏音效、消费电子产品和车载音响等方面发挥作用。尽管集成了多个声道,但是Thomson表示MP3 SURROUND文件相对于普通MP3(采样率相当)并没有太大的增加,相对于其他环绕多声道音频格式就只有它们的一半了。更为重要的,MP3 SURROUND提供了良好的兼容性,可以在现有的MP3软件、MP3播放器上正常使用。

    图为MP3 SURROUND的编码原理

    目前网上出现了MP3 SURROUND的专门网站(http://www.mp3surround-format.com),大家从这里可以下载到MP3 SURROUND的解码/编码工具以及已经做好的MP3文件,对MP3 SURROUND有兴趣的朋友还可以下载到技术文档。psp2.80支持7.1声道,2.80的玩家不妨体验一下MP3 SURROUND的魅力!


2、AAC(*.3gp/*.mp4/*.m4v)

   AAC是高级音频编码(Advanced Audio Coding)的缩写,它是由Fraunhofer研究院、杜比和AT&T共同研发的。AAC是MPEG-2规范的一部分,它适用于从速率8Kbps的单声道电话音质到160Kbps多声道的超高质量音频范围内的编码。AAC与MP3相比,增加了诸如对立体声的完美再现、码流效果音扫描、多媒体控制、降噪优化等MP3音频格式所没有的特性,使得在音频压缩后仍能完美地再现CD音质。它还同时支持多达48个音轨、15个低频音轨、更多种采样率和比特率、多种语言的兼容性、更高的解码效率。总之,AAC可以在比MP3文件缩小30%的前提下提供更好的音质。

图为 MPEG-2 AAC编码器框图

图为 MPEG-2 AAC解码器框图

现将其中的几个模块作一些说明:
 
         增益控制(Gain control)

    增益控制模块用在可变采样率配置中,它由多相正交滤波器PQF(polyphase quadrature filter)、增益检测器(gain detector)和增益修正器(gain modifier)组成。这个模块把输入信号分离到4个相等带宽的频带中。在解码器中也有增益控制模块,通过忽略PQF的高子带信号获得低采样率输出信号。

          滤波器组(Filter Bank)

    滤波器组是把输入信号从时域变换到频域的转换模块,它是MPEG-2 AAC系统的基本模块。这个模块采用了改进离散余弦变换MDCT,它是一种线性正交交迭变换,使用了一种称为时域混迭取消TDAC(time domain aliasing cancellation)技术。MDCT使用KBD(Kaiser-Bessel derived)窗口或者使用正弦(sine)窗口,正向MDCT变换可使用下式表示:

逆向MDCT变换可使用下式表示:


其中,
n=样本号,
N=变换块长度,
i=块号

    以上两个离散余弦变换公式在《离散函数》和《数理方程》中有详细介绍,只为帮助有兴趣的玩家了解,不必深究。

         瞬时噪声定形TNS

    在感知声音编码中,TNS模块是用来控制量化噪声的瞬时形状的一种方法,解决掩蔽阈值和量化噪声的错误匹配问题。这种技术的基本想法是,在时域中的音调声信号在频域中有一个瞬时尖峰,TNS使用这种双重性来扩展已知的预测编码技术,把量化噪声置于实际的信号之下以避免错误匹配。

         联合立体声编码

    联合立体声编码(joint stereo coding)是一种空间编码技术,其目的是为了去掉空间的冗余信息。MPEG-2 AAC系统包含两种空间编码技术:M/S编码(Mid/Side encoding)和声强/耦合(Intensity /Coupling)。M/S编码使用矩阵运算,因此把M/S编码称为矩阵立体声编码(matrixed stereocoding)。M/S编码不传送左右声道信号,而是使用标称化的“和”信号与“差”信号,前者用于中央M(middle)声道,后者用于边S(side)声道,因此M/S编码也叫做“和-差编码(sum-difference coding)”。声强/耦合编码的名称也很多,有的叫做声强立体声编码(intensity stereo coding),或者叫做声道耦合编码(channel coupling coding),它们探索的基本问题是声道间的不相关性(irrelevance)。

          预测(Prediction)

这是在话音编码系统中普遍使用的一种技术,它主要用来减少平稳(stationary)信号的冗余度。

          量化器(Quantizer)

使用了非均匀量化器。

          无噪声编码(Noiseless coding)

无噪声编码实际上就是霍夫曼编码,它对被量化的谱系数、比例因子和方向信息进行编码。

    PS:我个人比较喜欢AAC,所以写的较为详细,大家也不妨试试,绝对比MP3优秀。大家可以使用iTunes 6来转换AAC(*.m4v)。iTunes 6下载地址: http://www.apple.com.cn/itunes/download/   AAC的操作很简单,你可以直接把AAC(*.3gp\*.mp4\*.m4v)拷贝到[MUSIC]就能播。

     3、ATRAC3/ATRAC3+(*.aa3)

      我想早年玩MD的朋友都知道SONY专为MD量身定做的ATRAC音频格式算法,后来又广泛应用于SONY的 Network Walkman和其他便携音频设备。"ATRAC3plus"代表“自适应转换声音编码3+”,是一套基于心理声学原理的音频压缩技术,从ATRAC3格式发展而来,到2002年这项技术才日趋完美。这一技术是把MD随身听的体积缩小到很小的理论基础。

    要分析 ATRAC3/ATRAC3+,我们先要谈谈它的大哥——ATRAC算法。当数字音频数据被压缩时,通常都会把一定数量的量化噪音带入信号。为了不让这些信号被人耳感知,通常的做法是,音频编码把信号分解为一组单元,每组单元都对应着特定的时间频率范围。编码器会依据前文提到的心理声学原理来分析,对重要的单元进行高精度编码,对不敏感的单元可以保留一些量化的噪音但不影响人耳的感知质量。解码时,量化频谱会根据比特分配重新建立,然后合成音频信号。

    ATRAC也不例外,但有一些改进。ATRAC还应用了子频带译码和转换译码技术,输入的信号被分配得到不均匀的强调重要低音区的频率分割。另外,ATRAC使用一个可变块长度改变输入的信号,这可以确保在稳定通过时高效的译码,不会在瞬间通过时影响时间的分辨率。具体说,输入的信号在5.5125KHz和11.025KHz被分为3个频带。子频带的分解使用QMF (Quadrature Mirror Filters积分映射过滤器)来完成;这3个频带被MDCT(Modified Discrete Cosine Transform 变址离散余弦变换——类似于通常的快速傅里叶变换,《高等数学二》和《数理方程》中有相关介绍。) 转换成频谱值,MDCT允许块之间有达50%的交迭,使得在维持临界采样时能提高频率解析度。块的长度可以根据信号的种类改变,这就是ATRAC的自适应部分(这一做法主要是为了利用屏蔽掩盖初始量化噪音)。

图为ATRAC3/ATRAC3+的编解码框架。

    当ATRAC算法发展了10年,已经满足不了市场的需求,SONY于2002年8月推出了新的算法——
ATRAC3/ATRAC3+。其核心算法较ATRAC没有本质的大改变,只是采用了改进的频带分离过滤和MDCT,并使用增益调节、音调成分分离、联合立体声(Joint-Stereo)等技术,使得音频压缩数据的体积进一步缩小。


PS:下面我介绍一下用组棒听ATRAC3音乐的最简方法:

    用sonicstage CP(或sonicstage 3.4)将CD音轨(或MP3、WMA文件)转换为ATRAC文件,其中包括ATRAC3、ATRAC3plus两种格式。注意:在转换时千万不要选择添加复制保护,否则由于版权保护信息不正确,PSP将不能播放文件。这是关键的操作!!!!!!!!!!!!!生成的ATRAC文件的后缀为.oma ,我们只要将后缀改为.aa3即可。然后将ATRAC 文件拷贝到[MUSIC]目录(或其子目录)里,这时你的PSP将能够完美播放ATRAC3音乐。

4、AAL(ATRAC Advanced  Lossless)

    AAL是ATRAC Advanced  Lossless(自适应声学转换高级无损编码)的缩写,是SONY新开发的一个音频压缩格式其特点是无损压缩,不损失一点音频信息,一张CD可以压缩到原来的30%--80%但目前PSP还不支持ATRAC Advanced  Lossless,但我相信在PSP3.0里极有可能对其支持。目前,其技术资料我还没有见到,所以暂不作分析。

结束语

      我想大家都会问我写的这些有什么用?我认为一个音乐文件从录制到播放,有3个重要环节:编码(算法)、解码(硬件解码器)、输出(耳机、耳塞)。这每个环节都对最终我们聆听到的声音音质有着重要的意义,缺一不可。今天,我谈的是基础的编码(算法),希望大家能找到最适合你的编码,我个人的看法是AAC 256Kbps 和ATRAC3plus 256Kbps 。AAC的算法是“精致”,ATRAC的算法是“巧妙”。以后,我将和大家谈谈 输出(耳机、耳塞)方面的问题,敬请等待,希望大家喜欢。

  • 上一个文章:

  • 下一个文章:
  • 相关文章
    PSP韩版《FIFA 07》游戏封面正式公布!
    《合金装备 OPS》预约特典版外壳公开
    全速自制PSP专用PS模拟器PS1P诞生!
    IR Shell 特别版支持PSP外接电脑键盘!
    PSP版《SOINC 竞争者》最新游戏画面
    PSP画面顶级水准《Test Drive》正式公布!
    PSP卡片游戏《战锤》海量游戏画面放出
    PSP版《魔界战记》预约特典公布!
    PSP版《皇牌空战X》汉化补丁发布!
    PSX-P模拟器运行《FF 7》视频截图
    广告时间
    GBgba.com | PC Games | PS2 | PS3 | PSP | Xbox | Xbox 360 | GC | Wii | DS | GBA | 怀旧 | DC | SS | MD | N64 | SFC | FC | 街机
    GBgba.com 力倡游戏文化,崇尚互联共享,欢迎各种媒体转载我们的原创作品[转载请注明出处]。
    EMAIL:gbgame@163.com 本站ICP备案号:陇ICP备05003286号

    为让更多的朋友体验数字娱乐的快乐,请向你的5个QQ好友宣传gbgba.com,多谢支持!
     [设为首页]
    PSP:最专业的PSP网站