Linux下音效卡通 (轉)

worldblog發表於2007-12-07
Linux下音效卡通 (轉)[@more@]下音效卡通
推薦:weed  發表日期:2001年4月19日  閱讀次數:380
--------------------------------------------------------------------------------

一些Linux經常詢問這樣的問題:Linux能相容XXX卡麼?其實,Linux是一個開放性的,只要透過Linux愛好者們的努力,Linux可以相容任何。

  先來說說音效卡。首先要知道音效卡的型別,或者是某種音效卡相容的。如果核心不能把這種音效卡檢測出來,那麼就需要這種音效卡的模組,來安裝音效卡。

  例如,市面上常見的音效卡Creative Vibra 128使用的驅動模組是es1371,Creative PCI 128使用的模組是es1370等等。

  linux中用sndconfig來設定音效卡,如果沒有某個模組,就需要重新編譯核心(編譯最新發布的linux核心),如果還不行,只好用ALSA 音效驅動程式。

  ALSA 音效驅動程式原本是寫來取代 Gravis UltraSound 卡的Linux核心驅動程式的。當實證這取代得很成功,它和OSS/Free 及OSS/Linux音效驅動程式相容(核心的驅動程式),但它有比OSS驅動程式更好的本身介面。

  ALSA音效驅動程式可在找到。到發稿時最新版本為0.5.9d ALSA 音效驅動程式是建為模組的。下面是ALSA支援的音效卡型別。

  ALSA Supported SoundCards

  Advanced Linux Sound Architecture - Supported SoundCards

  ==========================================================

  ID: SoundCard chipset/type

  SC: SoundCard name

  IF: Supported interfaces (MIXER,PCM,SYNTH,SYNTH_MIDI,SEQ,OPL,MIDI,EMUL,HWDEP)

  MA: Maintainer

  CO: Coder

  This file is maintained by Jaroslav Kysela .

  Note: OPL -> Raw (native) OPL

  Note: MIDI -> external MIDI port

  Note: EMUL -> MIDI emulation

  Note: SYNTH -> yeah, well ?

  Note: SYNTH_MIDI -> internal synth that handles MIDI data

  Note: SEQ -> kernel client for ALSA sequencer

  Note: HWDEP -> various hardware-dependent interfaces/devices

  =====

  ID: InterWave

  SC: Gravis UltraSound Plug & Play

  SC: Dynasonic 3-D

  SC: STB Sound Rage 32

  SC: UltraSound 32-Pro (STB)

  SC: MED3210

  IF: MIXER,PCM,MIDI,SYNTH

  MA: Jaroslav Kysela

  ID: Gravis UltraSound MAX

  IF: MIXER,PCM,MIDI,SYNTH

  MA: Jaroslav Kysela

  ID: Gravis UltraSound Extreme

  IF: MIXER,PCM,MIDI,SYNTH

  MA: Jaroslav Kysela

  ID: Gravis UltraSound Classic/ACE

  IF: MIXER,PCM,SYNTH

  MA: Jaroslav Kysela

  ID: ESS AudioDrive ESx688

  IF: MIXER,PCM,MIDI(1688)

  MA: Jaroslav Kysela

  ID: Sounlaster 1.0/2.0/Pro

  IF: MIXER (Pro only),PCM,MIDI

  CO: Jaroslav Kysela

  MA: Chris Butler

  ID: SoundBlaster 16/AWE

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: Yamaha OPL3-SA2/SA3

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: OAK Mozart

  IF: MIXER,PCM

  CO: Jaroslav Kysela

  MA: ???

  ID: S3 SonicVibes PCI

  SC: Schubert 32 PCI (PINE)

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: Ensoniq AudioPCI (ES1370,ES1371)

  SC: SoundBlaster PCI 64

  SC: SoundBlaster PCI 128

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: Cirrus Logic / Crystal Semiconductors CS4232/CS4232A

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: Cirrus Logic / Crystal Semiconductors CS4235/CS4236/CS4236B/CS4237B/CS4238B/CS4239

  SC: Turtle Beach Malibu

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: Cirrus Logic / Crystal Semiconductors CS4610/CS4612/CS4615/CS4280

  IF: MIXER,PCM

  MA: Jaroslav Kysela

  ID: ESS Solo-1 ES1938

  IF: MIXER,PCM

  MA: Jaromir Koutek

  ID: ESS ES18XX

  IF: MIXER,PCM,MIDI

  MA: Abramo Bagnara

  ID: OPTi 82C9xx

  SC: Audio 16 Pro EPC-SOUN9301 (82C930 based)

  SC: ExpertColor MED-3931 v2.0 (82C931 based)

  SC: ExpertMedia Sound 16 MED-1600 (82C928 based - AD1848)

  SC: Mozart S601206-G (OTI601 based - CS4231)

  SC: Sound S-928 (82C928 based - AD1848)

  IF: MIXER,PCM,OPL,MIDI

  MA: Massimo Piccioni

  ID: Trnt 4DWave DX/NX

  SC: Best Union Miss Melody 4DWave PCI

  SC: HIS 4DWave PCI

  SC: Wspeed ONSpeed 4DWave PCI

  SC: AzTech PCI 64-Q3D

  SC: Addonics SV 750

  SC: CHIC True Sound 4Dwave

  SC: Shark Predator4D-PCI

  SC: Jaton SonicWave 4D

  SC: Hoontech SoundTrack Digital 4DWave NX

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  ID: ForteMedia FM801

  SC: DT-0398

  IF: MIXER,PCM,MIDI

  MA: perex@suse.cz

  ID: SGI Indy (HAL2)

  IF: PCM

  MA: Ulf Carlsson

  ID: Turtle Beach WaveFront

  SC: Tropez Plus (Tropez+)

  SC: Tropez

  SC: Maui (models with CS4232; others use OPTi 16 which is not handled)

  IF: MIXER,PCM,MIDI,OPL,SYNTH_MIDI,HWDEP

  CO: pbd@op

  MA: pbd@op.net

  ID: C-Media CMI8330

  IF: MIXER,PCM

  MA: George Talusan

  ID: C-Media CMI8338/8738

  IF: MIXER,PCM,MIDI

  MA: Takashi Iwai

  ID: Avance Logic ALS100/ALS120

  IF: MIXER,PCM,MIDI

  MA: Massimo Piccioni

  ID: Diamond Technologies DT-0197H

  IF: MIXER,PCM,MIDI

  MA: Massimo Piccioni

  ID: Aztech Sound Galaxy

  IF: MIXER,PCM,MIDI

  MA: Christopher Butler

  ID: MOTU MidiTimePiece AV multiport MIDI interface

  IF: MIDI

  MA: Michael T。Mayers

  ID: EMU10K1

  SC: Sound Blaster Live!

  SC: Sound Blaster PCI 512

  SC: E-mu APS

  IF: MIXER,PCM,MIDI,SYNTH_MIDI

  MA: Jaroslav Kysela

  ID: RME Digi9652 (Hammerfall, Hammerfall light)

  IF: PCM

  MA: Paul Barton-Davis

  ID: i810/i820/i830/i840/MX440

  IF: MIXER,PCM

  MA: Jaroslav Kysela

  ID: ESS Maestro 1/2/2E

  IF: MIXER,PCM

  MA: Matze Braun

  ID: VIA 82C686A (South Bridge)

  IF: MIXER,PCM,MIDI

  MA: Jaroslav Kysela

  請注意如果您想使用 ALSA 驅動程式, 那麼您不應該先載入任何其它音效驅動程式。如果您的核心中內含音效驅動程式, 那麼有必要重編譯核心。如果您正在使用舊的 sound.o 模組, 您必須解除它。如果您使用 kerneld, 這可能就是要您刪去 /lib/modules//misc 目錄下的 sound.o。新的 RedHat 系統的音效驅動程式組織方式不太一樣, 要載入好幾個模組, 這種情況您需要解除全部的模組。

  2.2 版核心對音效則採用了新的方式。您應該要包含音效的支援! 是的, 沒有說錯, 您在核心中加入了對音效的支援, 但沒有包含任何音效卡的部份。然後重編譯及安裝核心, 接著編譯 ALSA驅動程式。

  編譯 ALSA驅動程式的步驟:

  zxvf alsa--0.3.5.9d.tar.gz

  tar zxvf alsa-lib-0.3.5.9d.tar.gz

  tar zxvf alsa-utils-0.3.5.9d.tar.gz

  cd alsa-driver-0.3.5.9d

  ./configure

  make

  make install

  cd ../alas-lib-0.3.5.9d

  ./configure

  make

  make install

  cd ../alas-utils-0.3.5.9d

  ./configure

  make

  make install

  驅動程式目錄下有個命令稿(script)可以把 ALSA 的音效裝置檔安裝進 /dev 目錄。

  在驅動程式目錄下打入./snddevices

  有兩種使用 ALSA 音效模組的方法:

  A.用 modprobe 安插驅動程式

  如果您有 PnP 音效卡, 您首先要設定正確的(或至少是已知的) IO/IRQ/DMA.

  舉兩個例子:

  Gravis UltraSound (GUS) 及相容卡:

  /sbin/modprobe snd-gusclassic

  對完全 16 位元的 SoundBlaster 卡 (SoundBlaster 16 (PnP), SoundBlaster AWE 32 (PnP), Sound BlasterAWE 64 (PnP):

  /sbin/modprobe snd-sb16

  B.使用 kerneld 來載入

  kerneld 是個在需要時插入模組, 並在不再使用時卸除它們的服務程式(daemon).

  編輯 /etc/conf.modules

   modprobe snd-card, 其中 snd-card 是您的音效卡名稱。

  這是 Gravis UltraSound PnP 音效卡的 /etc/conf.modules:

  alias char-major-14 snd

  alias snd-minor-oss-0 snd-interwave

  alias snd-minor-oss-3 snd-pcm1-oss

  alias snd-minor-oss-4 snd-pcm1-oss

  alias snd-minor-oss-5 snd-pcm1-oss

  alias snd-minor-oss-12 snd-pcm1-oss

  alias snd-card-0 snd-interwave

  options snd snd_major=14 snd_cards_limit=1

  options snd-interwave snd_index=1 snd_id="guspnp" snd_port=0x220 snd_irq=5

  snd_dma1=5 snd_dma2=6


原作者:hubertzou  
來源:LinuxAid 專業技術服務 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-989583/,如需轉載,請註明出處,否則將追究法律責任。

相關文章