声卡ABC
-
-
fanxueling
2008-01-29
声音是重要的信息表现手段,在最初的IBM PC上就配有PC喇叭,通过它长短不同的叫声报告机器的运行状态。PC技术的发展使人们不满足于这种单调的叫声,于是发明了声效卡,它不仅能播放各种各样的声音,还能录音、创造声音,把我们带入美妙的声音世界。随着多媒体技术的发展,Inter在其Pentium MMX中集成了MMX指令集,使CPU的多媒体处理能力大为增加,为声卡的发展提供了更为广阔的空间。
一、 波表合成技术
您一定听说过MIDI吧?MIDI是Musical Instrument Digital Interface的简称,意思是音乐设备数字接口。它是一种电子乐器之间以及电子乐器与电脑之间的统一交流协议。在一些游戏和娱乐软件中您可以发现很多MID、RMI扩展名的文件,其实它们就是在电脑上最常用的MIDI格式文件。
可能您已经发现,一首4分钟左右长度的MIDI文件容量只有百余K字节,而同样长度的音乐文件(*.WAV)则高达40MB左右。为什么MIDI文件会如此小巧玲珑呢?其实MIDI文件并不像WAV、MP3文件那样记录乐曲每一时刻的声音变化,它只是将要演奏的乐曲信息表述下来。譬如在某一时刻,使用何种乐器,以什么音符开始,以什么音调结束,加以什么伴奏等等,它并不包含任何可供回放的声音信息。在进行声音回放时,需要通过声卡进行回放处理。目前主要的合成手段有:FM合成和波表合成。前者多用于以前的ISA声卡;波表合成是现在最先进的声音合成方法,它的合成原理要比FM合成复杂得多。
波表合成技术是将各种真实乐器所能发出的所有声音录制下来,存储为一个波表文件。播放时,根据MIDI文件纪录的乐曲信息,从波表中找出对应的声音信息,进行加工合成后播放出来,其效果较FM合成方式真实。
最早出现的波表合成技术是软波表技术,这需要CPU完成声音合成,占用了相当的系统资源。在ISA声卡一统天下的时代,采用硬件波表合成技术有相当难度,这是因为要高精度的纪录乐器声音,需要的存储量是相当巨大的。当时也出现过一些附带硬波表的声卡,这类产品在板卡上集成了音色库内存,而这类ROM在当时的价格不斐,部分集成了大容量音色库的声卡市场价格达到了惊人的2000元,而一些产品为了降低成本只集成了512K波表,虽然降低了成本但其效果却不尽如人意。在那时“波表”成为人们心目中一个既神奇又叫人向往的东西。
PCI声卡的出现为波表合成技术的发展创造了条件。ISA总线的传输带宽为8Mbps,而PCI总线的传输带宽达到了133Mbps,这样PCI声卡可以利用系统主内存代替价格昂贵的专用声音存储器,从而解决了以前ISA声卡中的最大矛盾——音色库存储空间与硬件成本的冲突。同时PCI声卡还采用了一种叫做DLS(Down Loadable Sample,可供下载的采样音色库)的技术。它依靠声卡自己的音频处理芯片对调如内存的音色库进行合成,从而大大降低了CPU占用率。同时,这种音色库可以随时更新,并利用DLS音色编辑软件进行修改,这是传统波表所无法比拟的。因此PCI声卡成为现在的首选。
二、 3D音频API简介
对于声卡来说,MIDI只是其应用的一部分,另一个重要的应用是音频。对于过去的绝大多数声卡而言,音频应用只是“平面”或“2D”的。而随着技术的发展,人们对声音效果的要求越来越高,要求能真实地模拟现实世界中可分辨的空间位置(上/下,左/右、前/后、远/近等),于是出现了3D音效声卡。对于3D音效声卡,其声音处理的算法是非常重要的,它往往决定了产品定位和音频效果的好坏。目前有不少音频技术公司和声卡厂商开发出各种各样的算法和技术,这些算法和技术一般都有自己的编程接口,即API。
1、 Aureal 3D(A3D)
A3D是由傲锐公司开发的一种突破性的新的互动3D音效技术,使用这一技术的应用程序可以根据用户的输入而决定音效的变化,产生围绕听者的3D定位音效,带来真实的听觉体验。A3D原本是为美国航天局宇航员培训计划开发的,其关键技术是基于HRTF的理论和算法,并采用了独特的波形寻迹功能。A3D技术包含“环绕”和“互动”两部分内容,允许只用两只普通的音箱或一对耳机,在环绕着听者的三维空间中精确地定位声源。A3D技术由Aureal公司自制的音效芯片Vortexl系列实现,此外也可在别的硬件产品上用软件模拟的方法来实现A3D的部分功能。
2、 Direct Sound 3D(DS3D)
由Microsofe开发,创立了在三维空间定位音频文件的标准方式。和应用于图形领域的D3D比起来,作为3D音频应用的DS3D似乎没有那么有名,但它却拥有D3D没有的优点——具有扩展能力。它提供了可以同时控制多达32个音频文件的指令工具。由于DS3D与MS DirectX的接口一致性和扩展能力非常好,因此习惯了Windows9x平台的程序员和用户们很容易接受和应用。DS3D仅仅是一个API,具体的3D算法要硬件厂家自己去实现,并且还可以在DS3D API的基础上进行改进和扩充提供更加丰富的功能,如EAX就是其中一个
著名的扩展API。
3、 EAX
EAX是创新公司开发的,其全称是Enviromental Audio Extensions(环境音效扩展集)。是一套公开的、基于DS3D的扩展API,运用起子公司E-mu为好莱坞开发的专业音效技术,通过调节混响、合成、原音的音频参数,可以实时地再现多声道声音的混响、回声、变调及延时等多种3D音效。EAX1.0标准在DS3D的基础上提供了混响效果;EAX2.0又加入了occlusion(声波穿越障碍物)和obstruction(声波的衍射现象)等高级环境音效;EAX3.0则提供了更为强大的开发工具并公开了环境的全部参数,使开发和创建特别音效更为容易和直观。作为一个开放的音频接口,只要硬件厂家愿意,都可以给自己的PCI声卡产品开发相应的驱动程序实现EAX。
4、 Qsound(Q3D)
是由Qsound实验室推出的一种可升级的环绕音频技术,兼容众多的3D音效。最新的Q3D2.0 标准支持混响功能,还提供了对四声道音效的良好支持。Q3D技术由于无需硬件加速而被广泛应用于游戏机和电子娱乐市场。
5、 Sensaura 3D
Sensaura 3D和Aureal等其他公司的技术一样,在耳机模式中采用了HRTF技术,在两个喇叭模式中采用了交错抵消的HRTF技术,也提供了一种四喇叭解决方案,称为Sensaura Drive。同时Sensaura 3D同样支持DS3D,并和Creative(创新公司)一样通过把A3D调用转化为DS3D调用方式支持A3D1.0。Sensaura 凭借悠久的历史,将是新一代3D音频技术的有力竞争者。
6、 SRS
即声音补偿系统,是由SRS实验室开发的一种三维空间立体声扩展技术,可以同DS3D、EAX、A3D等3D音效相结合共同发挥效力。SRS音效主要由特殊的硬件电路来实现,但也有纯软件版本,广泛应用于声卡、汽车音响、多媒体音箱以及家庭影院中,只须一对音箱就能使人完全置身于广大而又逼真的三维空间声场中。
三、 PCI声卡的主要性能指标
1、 复音数量
声卡中“32”、“64”的含义是指声卡的复音数,而不是声卡上的DAC(数模变换)和ADC(数模变换)的转换位数(bit)。它代表了声卡能够同时发出多少种声音。复音数越大,音色就越好,播放MIDI时可以听到的声部越多、越细腻。如果一首MIDI乐曲中的复音数超过了声卡的复音数,则将丢失某些声部,但一般不会丢失主旋律。目前声卡的硬件复音数都不超过64位。
2、 采用位数
是将声音从模拟信号转化为数字信号的二进制位数,即进行A/D、D/A转换的精度。目前有8位、12位和16位三种,将来还有24位的DVD音频采样标准。位数越高,采样精度越高。
3、 采样频率
即每秒采集声音样本的数量。标准的采样频率有三种:11.025KHz(语音)、22.05KHz(音乐)和44.1KHz(高保真),有些高档声卡能提供5KHz—48KHz的连续采样频率。采样频率越高,记录声音的波形就越准确,保真度就越高,但采样产生的数据量也越大,要求的存储空间也越多。
4、 波表合成方式和波表库容量
早期高档的ISA声卡主要采用硬件波表合成方式,中、低档声卡主要采用软件波表。而现在的PCI声卡则大量采用更加先进的DSL波表合成方式,其波表库容量通常是2MB、4MB、8MB,而像SB Live!声卡甚至可以扩展到32MB。波表库容量的大小和三种波表合成方式的优劣不能一概而论,这同波表库声音样本的质量和音效芯片采用的声音合成技术还有很大关系。同时我们还要注意在进行MIDI音乐播放时的CPU占用率。
5、 三维效果
在众多的PCI声卡3D效果中,最好的还是A3D和EAX两种。A3D技术一般为帝盟所独用。不少声卡都标榜支持EAX技术,其实只是一种软件上的部分模拟,这些声卡只是模拟EAX的3D定位效果,不能够完全模拟它的效果,因此该技术一般以创新为最佳。三维效果可以通过仔细分辨声音与程序之间的互动效果得出。此外,声卡是否支持多音箱也是值得考虑的地方,两个音箱听3D效果未免单薄,四个以上的才够爽。
6、 驱动程序
驱动程序的作用不容小视。我们要查看驱动程序的功能是否完全,版本是否最新,语言界面是否有中文版,是否能较好地在DOS和Windows环境下工作,还有生产厂家是否有能力继续开发新的驱动程序。一些用户使用的MVP3和ALI5芯片组的主板和一些声卡存在兼容性问题,购买时应特别注意。另外,主板上集成的声卡多为抵档声卡,因此建议对声音效果要求较高的用户最好不要购买这类主板。