测试和使用声音工具

所有的库文件和驱动程序安装之后,就可以着手测试声音了。做这件事,最好从最简单的工具入手 ── 即那些不依赖于驱动程序的。然后,再逐步向“上”测试用到不同的库文件的其它工具。

* play
play命令直接通过OSS驱动(或者ALSA对OSS的兼容层)播放声音文件。例如,输入 play test.wav 来播放 test.wav。除了用 cat 直接发送一个声音文件到声音设备文件(这将极大地扭曲声音)之外,这是测试你的声音系统的功能和可操作性的最简单办法了。如果你使用了ALSA但是没能成功编译或加载OSS兼容支持,play命令将不起作用。
* aplay
aplay在ALSA中的作用等同于play,用法也完全一样。如果你用ALSA,两个工具都应该试一下。如果aplay能用而play不行,通常表明你没能成功编译或加载OSS兼容支持。
* esdplay
这个命令与play,aplay非常类似,只是它通过EsounD播放文件。

这些程序都只播放相对简单的文件,例如.wav文件。它们不能正确处理MP3、Ogg Vorbis或其它复杂的文件类型。

理想情况下,你能以普通用户的身份使用这些程序。然而,如果你在OSS设备文件上的权限不正确,你可能只能以root身份播放声音。果真如此,检查一下你的设备文件的权限然后再试试。

这些程序都有对应的录音程序:rec,arecord和esdrec。你应该能够用这些命令来录制一个声音文件。取决于你的混音器设置,生成的文件可能完全是空白的,即使你已经给了声卡一个适当的输入。

谈到混音器(mixer),这里需要注意一下,特别当你使用ALSA的时候。按照默认设置,ALSA启动时所有的输出频道都是静音的。因此,你可能能播放一个声音文件,但是却什么都听不到(播放程序可能暂时“冻住”了,但过了一会儿当文件静悄悄地播放完,又“解冻”了)。有很多种混音器程序,包括mixer,amixer,alsamixer,kmix以及gnome-volume-control。前三个是文本界面的,其余是图形界面的。amixer和alsamixer仅使用ALSA接口,其它的使用OSS接口或者两者都支持。图2显示了gnome音量调节程序。
sound_02
图2: 混音器使你能够设置声卡的音量

你应该确保你所需的频道解除了静音并且音量调节滑块设置在恰当的水平(你需要通过试验才知道何谓“恰当”)。“Mater”和“PCM”选项对于放音至关重要。如果想播放音乐CD,你可能还需要设置CD选项。

为了录音,通常你必须对“Mic”(麦克风)或者“Line”选项解除静音。许多声卡提供了额外的选项,可能很重要,也可能无关紧要。例如,假如你只有传统的2个喇叭,环绕声的音量选项就不重要,然而如果你用了全套的环绕声系统则另当别论。

当重新启动计算机时,混音器的设置将被重置。为解决这个问题,你可以用一个能从文本文件中读入音量设置的文本界面的混音器。在本地的启动脚本中,如/etc/rc.d/rc.local,加入对这个程序的调用,或者从一个SysV风格的启动脚本中设置调用。

对于OSS来说,mixer程序是个好选择,但是你要从试验中找出最好的选项。详情请查看manpage。对于ALSA,一个捷径是用 alsactl。这个程序能把当前的混音器设置存到一个文件中或者从文件中读出来。当你用自己喜欢的混音程序调节满意之后,用root身份输入 alsactl store 。这个命令将把混音设置储存到 /etc/asound.state 中。此后,你就能在一个启动脚本中调用 alsactl restore 来恢复设置(有些发行版的ALSA启动脚本已经包括了这个功能)。

除了简单的放音、录音和混音程序之外,还有许多更为复杂的音频工具。例如,xmms是播放Ogg Vorbis和MP3文件的常用程序,xine是播放MPEG流媒体的工具,当然,还有许多游戏也播放声音。事实上,声音已经用在许多你通常意识不到会放音的程序中。例如,大多数桌面环境,像KDE和GNOME,都能把声音和特定事件联系起来,比如说启动一个程序或控制台铃声。

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License