| FreeBSDhandbook中文版14声卡 | | 发布日期:2005-3-28 浏览:441次 | | 关键字: | 目录 14声卡 14.1概要 14.2寻找正确的设备 14.3重新编译内核 14.4创建和测试设备装载的节点 14.5常见的问题 14.6MP3音乐 ============================================================= 第14章声卡 ============================================================= (翻译中出现的任何问题或错误,请广大读者及时反馈给我:FreeBSDhandbook@163.com) 14.1概要 FreeBSD支持很多种声卡,允许你输出各种格式的音乐。包括MP3,WAV,OggVorbis等 等格式的音乐。FreeBSDPorts中也包含了很多应用程序可以允许你编辑音乐文件。 读完这章,你将了解到这些: .如何定位你的声卡。 .如何配置你的系统以便你的声卡能达到最佳状态。 .通过使用专门的程序测试你的声卡的工作状态的方法。 .如何解决声卡安装的一些问题。 读这章之前,你应当了解这些: .如何配置和安装一个新内核(第9章) 14.2寻找正确的设备 在开始以前,应该要知道你拥有的声卡的型号,它所用的芯片,还有它是PCI还是ISA 卡。FreeBSD广泛地支持多种PCI及ISA卡。如果在下面列表中没有发现与你一样的卡,请 参考pcm联机手册。这不是完整的列表;不过已经列出了大部分通用的声卡。 .Crystal4237,4236,4232,4231 .YamahaOPL-SAx .OPTi931 .EnsoniqAudioPCI1370/1371 .ESSSolo-1/1E .NeoMagic256AV/ZX .SoundBlasterPro,16,32,AWE64,AWE128,Live 第1页FreeBSD使用手册 .CreativeViBRA16 .AdvancedAsound100,110,andLogicALS120 .ES1868,1869,1879,1888 .GravisUltraSound .AurealVortex1or2 内核中使用的驱动程序视所拥有的声卡而定。下面的段落提供了更多的信息以及那些需 要加入内核设置的资料。 14.2.1Creative,Advance和ESSSoundCards 如果有上面这些卡之一,请在内核中加入 devicepcm 如果有PnPISA卡,也请在内核中加入 devicesbc 对于非PnPISA卡,请在内核中加入 devicepcm和devicesbc0atisa?port0x220irq5drq1flags0x15 那些是默认的设置。可能需要改变IRQ或其它。其它信息请参考sbc联机手册。 注意:未经修补的FreeBSD4.0不支持SoundBlasterLive;这不包含在这份文件中。 建议在尝试使用这张卡以前更新到最新版的-STABLE。 14.2.2GravisUltraSoundCards 对于PnPISA卡,请在内核中加入 devicepcm 和 devicegusc 如果有非PnPISA卡,请在内核中加入 devicepcm 和 devicegus0atisa?port0x220irq5drq1flags0x13 可能需要更改IRQ或其它。其它信息请参考gusc联机手册。 第2页FreeBSD使用手册 14.2.3Crystal声卡 对于Crystal卡,请在内核中加入 devicepcm 和 devicecsa 14.2.4一般支持 对于PnPISA或PCI卡,请在内核设置中加入 devicepcm 如果有不含bridge驱动程序的非PnPISA声卡,请在内核中加入 devicepcm0atisa?irq10drq1flags0x0 可能需要改变IRQ或其它,以符合硬件设置。 14.3重新编译内核 在加入所需的驱动程序至内核设置后,请重新编译内核。其它信息请参考手册的第9.3 节。 14.4建立和测试设备装载的节点 重新启动后,登陆并执行cat/dev/sndstat。会出现类似下面的输出信息: FreeBSDAudioDriver(newpcm)Sep21200018:29:53 Installeddevices: pcm0:atmemory0xfeb40000irq5(4p/1r channelsduplex) 如果看到错误信息,表示前面某个步骤错了。如果发生了,请重新检查一次内核设置以 确定选择了正确的设备。 如果没有错误信息而且显示pcm0,请执行su变成root并如下执行: #cd/dev #shMAKEDEVsnd0 如果没有错误信息而且显示pcm1,使用su变成root并如下执行: #cd/dev #shMAKEDEVsnd1 请注意上面任一个命令将不会产生/dev/snd设备!而是产生一组设备节点包括: 第3页FreeBSD使用手册 说明设备 与SPARC兼容的声音设备/dev/audio 数字声音设备/dev/dsp 象/dev/dsp,但每次取样为16bits/dev/dspW /dev/midimidi访问设备 控制端口混音设备/dev/mixer /dev/musicLevel2音序接口 /dev/sequencer音序设备 可编程设备接口/dev/pss 如果顺利,现在应该有个可正常工作的声卡了。如果没有,请参考下一节。 14.5常见的问题 14.5.1.我遇到一个unsupportedsubdeviceXXerror! 一个或多个设备节点没有被正确的产生。请重复上面的步骤。 14.5.2.我遇到一个sb_dspwr(XX)timedout的错误! I/Oport没有设置正确。 14.5.3.我遇到abadirqXX的错误! IRQ设置有误。请确定设置的IRQ和声卡IRQ一致。 14.5.4.我遇到“xxx:guspcmnotattached,outofmemory”的错误。这是什么造成 的? 如果发生了,表示没有足够的内存来使用这个设备。 14.6MP3音乐 14.6.1MP3播放器 最流行的XFree86MP3播放器是XMMS。Winamp的skins也能被用在XMMS上。XMMS也 支持插件。 XMMS能从audio/xmmsport或package中安装。XMMS接口是很直观的,它有一个播放 目录,一个图形的均衡器等。这些都很象winamp。也可以在audio/mpg123port中选择一 个命令行的MP3播放器。可以这样做: 第4页FreeBSD使用手册 #mpg123-a/dev/dsp1.0Foobar-GreatestHits.mp3 HighPerformanceMPEG1.0/2.0/2.5AudioPlayerforLayer1,2and3. Version0.59r(1999/Jun/15).WrittenandcopyrightsbyMichaelHipp. Usescodefromvariouspeople.See'README'formore! THISSOFTWARECOMESWITHABSOLUTELYNOWARRANTY!USEATYOUROWNRISK! PlayingMPEGstreamfromBT-Foobar-GreastHits.mp3... MPEG1.0layerIII,128kbit/s,44100Hzjoint-stereo 在你的系统中,/dev/dsp1.0应该被dsp设备接口所替换。 14.6.2转换CD音轨 在把CD或CD音轨转换成MP3时,在CD上的声音数据必须被转到硬盘上。这可以把CDDA 数据转成WAV文件来完成。cdda2wav工具,是sysutils/cdrtools套件的一部分。下面的 命令可以把整个CD转成一个个(每个音轨)WAV文件: #cdda2wav-D0,1,0-B -D0,1,0指出了SCSI设备是0,1,0,它是与cdrecord-scanbus输出相符合的。转换 每个音轨,可以加上-t选项: #cdda2wav-D0,1,0-t7 这个例子可以从CD上抓取7个音轨。可以指定一个范围,如1到7: #cdda2wav-D0,1,0-t1 7 cdda2wav只支持SCSICDROM驱动器。对于IDE驱动器可以选择其它的工具。 14.6.3MP3编码 现在,可以选择lame这个mp3编码器。可以在audio/lame中找到。 第5页FreeBSD使用手册 使用转换的WAV文件,可以使用下面的命令把audio01.wav转成audio01.mp3: #lame-h-b128\ --tt"FooSongTitle"\ --ta"FooBarArtist"\ --tl"FooBarAlbum"\ --ty"2001"\ --tc"RippedandencodedbyFoo"\ --tg"Genre"\ audio01.wavaudio01.mp3 128K是标准的MP3比特率。多数使用160,或192。更高的比特率,可能需要更多的磁 盘空间。-h选项可以打开“higherqualitybutalittleslower”模式。 14.6.4MP3解码 为了把mp3转成CD,它们必须被转成不被压缩的WAV格式。XMMS和mpg123都支持这些。 在XMMS中写入磁盘: 1.运行XMMS. 2.在窗口上单击右键打开XMMS菜单。 3.在Options中选择Preference。 4.改变OutputPlugin为DiskWriterPlugin。 5.键入Configure. 6.键入一个要写的非压缩文件的目录。 7.打开一个MP3文件,把volume设成100,EQ设为关闭。 8.键入Play--XMMS将显示正在播放的MP3文件,但听不见声音。说明它正在 转换MP3. 第6页FreeBSD使用手册 9.如果要听MP3,记得将OutputPlugin设回默认值。 在mpg123中写成stdout: 1.Runmpg123-saudio01.mp3>audio01.pcm XMMS用WAV格式写一个文件,而mpg123把MP3写成PCM音乐格式。这些格式能用 cdrecord或burncd程序来写成CDR光盘。可以看看第12.6节的在FreeBSD中使用CD burner。 第7页 | | 关键字: |
|