admin 管理员组

文章数量: 1087139


2024年3月13日发(作者:php strpos函数)

FOOBAR2000音质优化指引 (优选.)

rd

FOOBAR2000音质优化指引

FOOBAR2000音质优化指引个是个入门foobar的文章,当在无SRC问题的声卡,比如2496级别的,注重

音质的原汁原味,此时foobar里面DSP无需加载任何插件!输出(输出数据格式)选择24bit或者32bit

即可,输出如果有ASIO可以使用, 如果没有ASIO插件或者声卡不支持ASIO,用KS,KS也用不了就用DS(兼容稳

定), foobar里面输出设备选择ASIO/KS/DS对应的声卡!其它一概无需设置!

Directsound 与 Waveout

Q: Directsound 与 Waveout 有何不同?

A: Waveout 是在32位的Windows上的一种老旧且过时,用来播放数字音讯的应用程序接口

(ApplicationProgramming Interface,简称API)。旧的Windows操作系统(如Win9x WinNT4)在 Waveout的

完成度很高(因为 waveout 是针对这些操作系统设计的),如果你想获得最好的效能,你应该在这些操作系统上使用

Waveout输出。然而Waveout的功能有所局限,它无法支持「混和多重音讯流」的功能。这显示在Win2k/XP下的

Waveout,只是为了旧的软件的兼容性所提供的,也因此Win2k/XP下 Waveout的完成度很糟,它没有使用任何的

硬件加速功能,所有的混音动作都是用软件来执行(因此当CPU的使用率很高时,常常会发生类似CD跳针的断音现

象)。

Directsound 是种较新、较现代化的声音播放 API,都已经内建在最近的32位Windows操作系统中。

Directsound支持混和多重音讯流、独立的音量控制、硬件加速层及硬件仿真层(如果某些功能硬件无法支持 ,可以

用软件来仿真,因此程序设计师无须担心他们的新l33t 码无法在旧的声霸卡16上运作)。一般来说,只要你的操作系

统安装了适当的声卡驱动程序及最新的 DirectX,Direstsound都应该可以运作的很好(除了WinNT4以外)。在

Win2k/XP下,Directsound 比 waveout更好,因为在这些操作系统里,Directsound 的完成度相对的比 waveout

来的更高(比 waveout占用较少的CPU资源,自由度较高,且不会有 Waveout 常见的小毛病)。Directsound原本

是被设计来让游戏利用系统的硬件加速功能,而无须直接接触低阶的硬件函数(就如同 DirectX 其它的组件)。

Q: 为何 Directsound 总是比 waveout 来的小声?

A: 在Win2k/XP中,改变 waveout 的音量似乎会改变整体音量的设定,然而 Directsound的音量是独立控制

的。换句话说,你用 waveout 来播放音乐,你将音量设为50%,你就会得到50%的音量,然后你用Directsound来

播放,你将音量设为50%,你只会得到最大音量的25%。解决之道:别使用waveout,并在Windows的音量控制中

将音量设为最大。

1 / 5doc格式 可编辑

Q: Directsound 及 waveout 之间的声音输出品质有所不同吗?

A1: 在Win2k/XP下(或者使用WDM驱动程序),waveout 及 Directsound 只有在传输 PCM 资料给

Windowskernel mixer 上有两点不同。waveout 只使用软件混音,因此较少造成系统中的特殊问题,而Dircetsound

可以使用硬件混音,因此会造成某些已知的,声音品质的问题。-版主语:混音未必好,听原汁原味的hifi音乐的时候,

建议还是用WAV稳定。

A2: 在Win9x下,Directsound 驱动系统完全的与 waveout分离,并使用低阶的方式来控制硬件,因此这就像

拿两种不同的驱动程序来配合 waveout 及Directsound。在使用某些老旧的ISA接口的声卡时,Directsound为了

节省 ISA 总线的频宽,有着会将音讯资料降低取样率至22khz 8bit (或者其它相近的取样率)的问题。

Q: 对于 Directsound 而言,软件混音及硬件混音有何不同?

A: 在 WinXP sp1、DirectX 8.1 中,无论是使用微软的 Directsound核心或者是驱动程序来进行硬件混音,都

很容易碰到问题。目前已经证实,在 Winxp下使用硬件混音来传输音讯资料时,即使是使用不同的声卡,皆会碰上「取

样频率」的问题。特别是某些驱动程序存在已久的问题(著名的创新未来Audigy 声卡Skipping问题,在某些设定中

会出现不间断、静态的杂音,甚至在某些例子中,会发生声音品质骤降的情形,天晓得为何会如此!)。如果你想稳定的

运作计算机,那建议你最好把硬件加速给关掉。硬件混音可以foobar2000 的偏好设定中的 Driectsound 这个字段里

找到 "allowhardware acceleration"。开启它不代表你就真的激活了这个功能(Directsound会在没有可用资源时自

动使用软件混音)。

关于重新取样(resampling)

Q: 如果我使用重新取样的功能,能够增进(improve)声音的品质吗?

A: 不行,你无法利用重新取样来「增进」声音的品质,重新取样是个有耗损的过程。你可以试看看改变一张bmp

图片的大小,改过大小的图片会和原本的图片极为相似,不过假如你把两张图都放大(zoom-in)来看,你会发现它们在

细节上并不相同。在某些硬件上,如果你使用高品质的重新取样软件,来避免让你的驱动程序/硬件处理重新取样的过

程,你可以避免大量资料的损失(也就是避免音讯品质降低)。我知道某些人在他们的声霸卡16上将取样率提升为

96khz 24bit,并且声称这样能听到较「明亮」的声音(事实上 Windows kernelmixer会将取样率降回 44khz 16bit),

别听他们所说的屁话。

Q: 我应该将重新取样的参数设为多少比较好?

A: 首先,你应该查询你声卡的硬件资料。某些声卡(例:在SBAwesome系列以前发售的声霸卡)不需要重新取

样,这表示你不需要额外的重新取样就已经得到最好的品质了(不会有重新取样造成的品质降低)。所有的SBLive!系列

/Audigy系列/AC97兼容的声卡,都已经将输出的取样频率固定为48khz,重新取样的品质会因为驱动程序/硬件装置

/Windows混音设定而改变。在许多例子中,SSRC重新取样软件会优先于你的硬件/驱动程序,因此你需要将重新取

2 / 5doc格式 可编辑

样的参数设为 48khz/16bits,以避免你的硬件/驱动程序来进行它们较差的重新取样。

Q: 但是我在我的声霸卡上可以重新取样为 96khz/24bits ...

A: 当然可以,Windows混音器会将取样率降回你硬件能够接受的格式(例如:48khz/16bits),这会造成额外的

品质降低。不要提升取样率,除非你的硬件真的能够接受这些格式。Dithering dither在计算机绘图上称为「递色」,

而在处理音讯上,也有着相似的意思。以下有三张图,大家可以看看dither 的差异在何处。原始的图(24bit高彩),

左上角的小方块是从黑框中放大的。有 dither 的图(8bit 256色),较远处看可以说看不出与原图的差异。无 dither

的图(8bit256色),色彩的分布不平顺,与原图可以看出根本的差异。启用这个功能,将会在播放波形时Dithering。

如果dithering没有激活,那么foobar2000将会改用切平。这意指没有用到的位会被砍掉并丢弃。在许多较安静的音

乐中有淡入或淡出的情况时,会造成「断裂」的听觉效果(也就是淡入/出的效果不平顺)。Dithering只有在你将高位

(例如:32bit)的音讯以低位(例如:16bit)来播放时才真正有用。输出位设定(Output bit depth) 这里有个下拉

式选单,可以让你选择输出的位率。如果你有张 24bit的声卡,你当然会想让那些没有用到的位使用 dither to 24bit 来

输出。即使是 16bit 的声卡,在播放 32bit 的音讯时使用dither to 16bit 也能增进音质。foobar2000 处理音讯资

料的管道如下——decoder(32 bitfp)=>[replaygain]=>[DSP]=>downsample to 16/24 bit withoptional

dithering 因此当你选择 dither to 16/24bit 时,建议你激活dithering。然而如果设为32bit 是不需要激活

dithering,因为从译码器直接传送过来的资料就是 32bit。

关于 Kernel Streaming

Q: 何谓 Kernel Streaming ?

A: Kernel Streaming 会绕过 Windows kernel mixer,直接输出音讯资料给声卡。这种方式有着较低的输出延迟,

也许可以被视为 ASIO output 之外的另一种选择。

Q:在Kernel Streaming 和ASIO输出都能正常使用的情况下,一般哪个输出音质会比较好?

A:说实在的,我没有听出来有什么区别,两者输出本是同根生,KS和ASIO 2个随便用,不要用其他的就可以。

Q: 我应该用 Kernel Streaming 吗?

A: 如果你的声卡及驱动程序能支持,且你使用 Kernel Streaming 没有什么问题的情况下,我会建议你使用

Kernel Streaming 。

Q: 为何使用 Kernel Streaming 来输出,比使用 Directsound 输出,感觉声音变的更大声或者明亮?

A: 声音并没有变的明亮,只有变大声。

3 / 5doc格式 可编辑

(版主语:实际上还是稍微有区别的,条件好的情况下能听出区别的)

Q: 哪些操作系统可以使用 Kernel Streaming ?

A: Kernel Streaming 只能在 Windows 2000 Windows 2003及 Windows XP上运作,有人说应该可以在

Windows ME 上运作一打开 foobar2000, 你会发现它连 play, stop 这些基本的按钮都没有,你可以到

Foobar2000>references>Display 里, 选 Show buttons, 接着到 DSPManager, 把右边的 Resampler 移

到左边, 然后在 DSP Manager 下的 Resampler 里, 把 Targetsample rate 设定成你 soundcard 本身的sample

rate 以下是一些建议数值 (参考自 DearHoney 的RMAA 数据库):

44100 - SB16, AWE32, AWE64 和其它类似的 ISA soundcard

48000 - SB PCI, SBLive, Audigy1, Audigy2, Extigy, Philips AE, Sonic Fury, Yamaha 7x4 和一般的 onboard

soundcard

96000 - Audigy2 和一些真正支持 96khz 的 soundcard, 例如 Terratec 的

在使用 Resampler 之后, 再试试播放上面提及的两个测试讯号, 听听是否只听到很纯很尖的超高频声音,而且听

不出两个档案的分别。如果是的话, 高质素的 src已经成功了。否则请到foobar2000>preferences>Output 里,

试试选用不同的 Output, 如Kernel Streaming (只限 WDM driver), 变更 DirectSound/WaveOut 里的各种设定再

试试看,如果仍然失败的话, 试试在 Windows 音量控制里按选项>进阶控制, 看看是否有高低音控制, 如果有的话,

把高低音都移到正中间再试试看 (如果本身已经在中间就不用移了), 如果还是不行的话, 我也无话可说。注意使用

Kernel Streaming时 Windows 音量控制里的 wave 输出可能会无法控制, 那是正常的现象。接着到 Playback 一

栏, 会有一个 Outputbit depth 的选项, 只有 soundcard 真正支持 24-bit 时才选择 24-bit (Audigy1 是

16-bit,Audigy2 才是 24-bit), 因为在不支持 24-bit 的 soundcard 上选 24-bit 只会令音质比 16-bit更差, 即使

你可能听不出。

ASIO support for foobar2000 0.9x软件介绍:

ASIO 的全称是Audio Stream InputOutput,直译过来就是音频流输入输出接口的意思。采用ASIO技术可以减

少系统对音频流信号的延迟,增强声卡硬件的处理能力。同样一块声卡,假设使用MME驱动时的延迟时间为750毫

秒,那么当换成 ASIO 驱动后延迟量就有可能会降低到40毫秒以下。

ASIO Output Plug-in for Foorbar 是可以让 Foorbar 0.8.X 支持 ASIO 的输出插件,需要注意的是使用该插件

前必须确认你的声卡驱动支持ASIO。

使用说明:

4 / 5doc格式 可编辑

解压缩,释放到 Foorbar 的 components 文件夹内。然后运行Foorbar,在选项的 Output 那里即可看到 ASIO

并设置。

如果要使这套插件(DLL,EXE)正确工作在ASIO4ALL(Wuschel's ASIO4ALL)下,需要把回放输出数据格式

设置为32位(如果32位不出声换24位)。

AP2496,DSP中什么都不要(SSRC也不要了,均衡器也不要了)音量控制和高级限幅器都不要。

2496级别卡,或者VIA芯片的,还有水晶芯片比如黑金卡,海龟cs4630等,这写卡的芯片已经能够避开SRC问

题,为求好的原汁原味音质,DSP中最好不要加载任何东西。这时候,对比一下输出bit的不同对音质影响吧,相信大

家会明白的。

赠人玫瑰,手留余香。

感谢您使用本店文档 您的满意是我们的永恒的追求! (本句可删)

------------------------------------------------------------------------------------------------------------

5 / 5doc格式 可编辑


本文标签: 硬件 使用 声卡 输出 取样