作者: 张纪青编译
目录
14 声卡
14.1 概要
14.2 寻找正确的设备
14.3 重新编译内核
14.4 创建和测试设备装载的节点
14.5 常见的问题
14.6 MP3 音乐
=============================================================
第14 章声卡
=============================================================
(翻译中出现的任何问题或错误,请广大读者及时反馈给我:freebsdhandbook@163.com)
14.1 概要
FreeBSD 支持很多种声卡,允许你输出各种格式的音乐。包括MP3,WAV,Ogg Vorbis 等
等格式的音乐。FreeBSD Ports 中也包含了很多应用程序可以允许你编辑音乐文件。
读完这章,你将了解到这些:
. 如何定位你的声卡。
. 如何配置你的系统以便你的声卡能达到最佳状态。
. 通过使用专门的程序测试你的声卡的工作状态的方法。
. 如何解决声卡安装的一些问题。
读这章之前,你应当了解这些:
. 如何配置和安装一个新内核(第9 章)
14.2 寻找正确的设备
在开始以前,应该要知道你拥有的声卡的型号,它所用的芯片,还有它是PCI 还是ISA
卡。FreeBSD 广泛地支持多种PCI 及ISA 卡。如果在下面列表中没有发现与你一样的卡,请
参考pcm 联机手册。这不是完整的列表;不过已经列出了大部分通用的声卡。
. Crystal 4237, 4236, 4232, 4231
. Yamaha OPL-SAx
. OPTi931
. Ensoniq AudioPCI 1370/1371
. ESS Solo-1/1E
. NeoMagic 256AV/ZX
. Sound Blaster Pro, 16, 32, AWE64, AWE128, Live
第1 页FreeBSD 使用手册
. Creative ViBRA16
. Advanced Asound 100, 110, and Logic ALS120
. ES 1868, 1869, 1879, 1888
. Gravis UltraSound
. Aureal Vortex 1 or 2
内核中使用的驱动程序视所拥有的声卡而定。下面的段落提供了更多的信息以及那些需
要加入内核设置的资料。
14.2.1 Creative, Advance 和ESS Sound Cards
如果有上面这些卡之一,请在内核中加入
device pcm
如果有PnP ISA 卡,也请在内核中加入
device sbc
对于非PnP ISA 卡,请在内核中加入
device pcm 和device sbc0 at isa? port0x220 irq 5 drq 1 flags 0x15
那些是默认的设置。可能需要改变IRQ 或其它。其它信息请参考sbc 联机手册。
注意: 未经修补的FreeBSD 4.0 不支持Sound Blaster Live;这不包含在这份文件中。
建议在尝试使用这张卡以前更新到最新版的-STABLE。
14.2.2 Gravis UltraSound Cards
对于PnP ISA 卡,请在内核中加入
device pcm
和
device gusc
如果有非PnP ISA 卡,请在内核中加入
device pcm
和
device gus0 at isa? port 0x220 irq 5 drq 1 flags 0x13
可能需要更改IRQ 或其它。其它信息请参考gusc 联机手册。
第2 页FreeBSD 使用手册
14.2.3 Crystal 声卡
对于Crystal 卡,请在内核中加入
device pcm
和
device csa
14.2.4 一般支持
对于PnP ISA 或PCI 卡,请在内核设置中加入
device pcm
如果有不含bridge 驱动程序的非PnP ISA 声卡,请在内核中加入
device pcm0 at isa? irq 10 drq 1 flags 0x0
可能需要改变IRQ 或其它,以符合硬件设置。
14.3 重新编译内核
在加入所需的驱动程序至内核设置后,请重新编译内核。其它信息请参考手册的第9.3
节。
14.4 建立和测试设备装载的节点
重新启动后,登陆并执行cat /dev/sndstat。会出现类似下面的输出信息:
FreeBSD Audio Driver (newpcm) Sep 21 2000 18:29:53
Installed devices:
pcm0: <Aureal Vortex 8830> at memory 0xfeb40000 irq 5 (4p/1r +channels duplex)
如果看到错误信息,表示前面某个步骤错了。如果发生了,请重新检查一次内核设置以
0
顶一下0
踩一下