下一页 上一页 目录

3. 开始之前

3.1 简介

本文档旨在帮助您在 Linux 系统中安装和使用 ALSA 声卡驱动程序。参考系统是在 AMD/K6 计算机(x86 兼容)上运行的 Slackware 4.0 Linux 发行版,但它应该适用于任何其他 Linux 发行版。我不确定 ALSA 驱动程序是否适用于其他平台,根据文档,Alpha 平台已经过测试并证明可以工作。我这里只有 x86 PC,因此如果您有任何其他信息,我将不胜感激。

阅读 Linux Sound HOWTO(参见“其他 HOWTO”部分)可能很有用,但该 HOWTO 侧重于内置的内核驱动程序。

3.2 关于 ALSA 驱动程序的一般信息

ALSA 声卡驱动程序最初是作为 Linux 内核声卡驱动程序的替代品而编写的,用于 Gravis UltraSound (GUS) 声卡。由于这种 GUS 替代方案被证明是成功的,作者启动了 ALSA 项目,旨在为多种声卡芯片提供通用驱动程序,并采用完全模块化的设计。

它与 OSS/Free 和 OSS/Linux 声卡驱动程序(内核中的驱动程序)兼容,但具有比 OSS 驱动程序更好的自有接口。功能列表可以在 http://www.alsa-project.org/intro.html 找到

请注意,ALSA 驱动程序仍在开发中。情况可能会随着时间推移而变化,某些依赖 ALSA 的程序可能仅在特定版本下才能工作。除此之外:我认为它们很棒。我已经使用 ALSA 10 个月了,并且永远不会回到闭源声卡驱动程序的黑暗时代 - 暗示 ;)

ALSA 项目的主页是 http://www.alsa-project.org/

3.3 支持的硬件

ALSA 驱动程序仅支持所有可用声卡的一个子集。在撰写本文时,支持以下声卡。

然后,支持大量基于 Crystal Semiconductors 芯片的声卡。这些芯片可以在很多硬件中找到,包括独立声卡(一些 Philips PCA 系列)和主板(例如 IBM Aptiva、戴尔计算机)。支持基于以下芯片组的声卡最棒的是:ALSA 现在支持没有声卡的计算机生成视频!这是通过虚拟驱动程序完成的,该驱动程序欺骗 Realplayer 等程序,使其认为有可用的声卡。

更新的列表可以在驱动程序包本身中找到,即在 doc/SOUNDCARDS 中

3.4 其他 HOWTO

这个 ALSA-sound-mini-HOWTO 只是一个迷你版 - 虽然它似乎增长很快。如果这个版本过于简洁,其他 HOWTO 可能会对您有所帮助。我将列出一些您在尝试安装 ALSA 驱动程序时可能会遇到的事情。HOWTO 通常可以在 Metalab(以前的 Sunsite)的镜像站点中找到。因此,请查看 http://metalab.unc.edu/LDP/mirrors.html 并选择您最近的镜像站点。您可以在目录 LDP/HOWTO/ 中找到 HOWTO。请注意:本文档中的链接都将相对于 /LDP/HOWTO/mini。如果您从一个相当不错的镜像站点查看本文档,您将找到这些 HOWTO。

然后是关于 2.2.x 内核系列的说明。对于 2.2.x 内核系列,声音支持与其他任何支持一样:它可以工作,但与您过去使用的有所不同。本 HOWTO(像任何其他 HOWTO 一样)将从 2.0pre1 版本开始专注于 2.2 系列内核,尽管我会尽量指出差异。

声卡

也许您已经购买了声卡,或者它可能已经在您的计算机中安装了很久。现在您要使用它了!请查看 Sound-HOWTO,看看这一切是否值得麻烦。(您可能想先购买这款新的 Mega-Rumble-Blaster,然后再尝试 ALSA 驱动程序。)

即插即用声卡

英特尔平台的大多数现代声卡都是 ISA PnP 声卡,这是“即插即用”的缩写。这意味着,声卡必须由操作系统配置。这必须通过启动时的初始化例程来完成。您可能需要使用 PnP-utils 软件包配置您的声卡。每个最新的 Linux 发行版都包含这些工具。有关用法,请查看 Plug-and-Play-HOWTO

ALSA 驱动程序似乎内置了它们自己的 ISA-PnP 支持,用于一些声卡。不幸的是,由于我找不到关于这方面的文档,我无法告诉您它是如何工作的。如果有人想在故意不使用 ISA-PnP 工具的情况下尝试 ALSA 声卡支持,请给我发消息。

可加载模块

ALSA 声卡驱动程序是作为模块构建的。您可以在 Kernel-HOWTO 中找到有关模块的更多信息。还有一个 module-HOWTO,但目前未维护;请查看 Howto-HOWTO 的未维护部分。不过,有一个 Modules-mini-HOWTO 可能会有用。

Kerneld

另一个对某些人有用的 HOWTO 是 Kerneld-mini-HOWTO。Kerneld 是一个守护进程,可以根据需要安装和删除内核模块。(我对此零经验,因此欢迎提供有关该主题的更多信息。ALSA 驱动程序文档包含一些关于 kerneld 配置的信息,这已包含在本 mini-HOWTO 中。)

由于内核模块加载器已包含在内核 2.2.x 中,因此情况发生了变化。但由于我是那些宁愿 modprobe 某些东西也不愿让守护进程处理它的人之一,所以我没有关于这方面的信息。


下一页 上一页 目录