1.了解你的聲卡
聲卡如同計算機的喉舌和耳朵,負責計算機音頻的輸入、信號轉換、輸出的工作,有了聲卡,我們才能通過電腦欣賞美妙的音樂,才能對著話筒怒吼。99年後,隨著計算機的進一步發展,聲卡已經由獨立的板卡變為PC主板上的一部分,而且聲卡已經由獨立的DSP芯片模塊組變為了一顆小小的dsp信號I/O codec,而原來DSP的處理工作就移交給CPU完成,所以一般我們集成主板的dsp就稱為“軟聲卡”,這類聲卡工作時的系統開銷比較大,甚至會嚴重影響系統速度。
關於AC97
AC'97是Audio Codec'97的縮寫,它所定義的是一種在主流PC中實現音頻特性的方法,後來又擴展了實現Modem的功能。AC'97利用核心芯片組的功能和外圍的模擬設備共同實現音頻卡/Modem的功能。目前主要有三種AC'97設備:
Audio Codec,通常縮寫為AC'97或AC;
Modem Codec,通常縮寫為MC'97或MC;
Audio/Modem合成Codec,通常縮寫為AMC'97或AM
AC97只是一種規范,不是聲卡的名稱,並不是說不符合AC97規范的就不是好聲卡,比如SoundBlaster AWE這樣的古董級ISA聲卡,其性能指標在現在也是非常了得;而像MAYA等專業級聲卡也不符合AC97的規范。
AC97也不是軟聲卡的代名詞,YAMAHA的YMF724、744、創新的CT5880(PCI128)、SB live系列、FortMedia FM801等性能極佳的“硬”聲卡,也符合AC97規范
你的聲卡是什麼?
我們要如何知道我們主板上的聲卡是什麼呢?方法很簡單,在linux的終端下,運行lspci | grep audio,比如我的機器運行命令後得出結果:
00:0b.0 Multimedia audio controller: Yamaha Corporation YMF-724F [DS-1 Audio Controller] (rev 03)
很明顯,這是一塊YAMAHA的YMF724聲卡
如果是一塊AC97的“軟聲卡”呢?
比如我在一塊KT333主板上測試:
00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235 AC97 Audio Controller (rev 50)
主板上的AC97 codec為瑞昱的ALC650,而系統直接給出了南橋芯片的型號,這樣更驗證了AC97 codec並不是一塊獨立運行的DSP芯片模塊,此時我們選擇聲卡驅動,應以主板南橋為基准:http://www.linuxsir.org/bbs/showthread.php?s=&threadid=76509
2、通過簡單設置在fedora下讓你的聲卡發聲
想檢測並啟動聲卡,安裝後就會有一個向導做指示,多數朋友就可以使自己的聲卡工作了,這個圖形界面的配置程序在系統設置-聲卡檢測中
如果你需要一個文本界面的聲卡檢測軟件,可以下載:
http://mirrors.kernel.org/fedora/cor……70-2.i386.rpm
並安裝上,這樣在終端下輸入sndconfig就可以檢測聲卡了。如果你的聲卡是ISA的,還需要手動分配IRQ等主板資源。
如果這樣還不行?
如果聲卡檢測程序不能正常檢測你的聲卡或不能使用,此時應該了解一下你的聲卡是否已經接好,音頻線聯接是否正確。如果確認以上的情況都正常,那你需要上Redhat官方網站了解一下你的聲卡是否被支持:http://hardware.redhat.com/hcl/
另一方案:官方驅動 (未測試)
首先你必須確認你已經裝了內核源碼(即內核開發軟件包集合)
如果你的主板AC97 codec為CMI9738/9739,且內核內建驅動不能運行 的朋友,可以下載驅動:
http://www.cmedia.com.tw/driver/Linu……dio-041.tar.gz
解壓,命令終端中進入驅動目錄,裡面有Readme.txt說明,先運行modprobe soundcore
然後
make
make install
如果成功,安裝就完成了,此時還要修改/etc/modules.conf
alias sound-slot-0 cmaudio
post-install sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -L >/dev/null 2>&1 || :
pre-remove sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -S >/dev/null 2>&1 || :
重啟計算機後就可使用。
VIA AC97combo for Linux驅動
如果你的主板是VIA的主板,
http://downloads.viaarena.com/driver……o-2.3-1.tar.gz
下載後解壓,進入驅動目錄裡會有一個viaudiocombo-2.3-1.src.rpm
運行rpmbuild ——rebuild viaudiocombo-2.3-1.src.rpm
成功的話二進制rpm文件會在/usr/src/redhat/RPMS/i386裡,安裝後便可直接使用。
Aureal AU8820(帝盟S90)驅動
看看這裡的方法:http://www.linuxfans.org/nuke/module……ninfo&did=1611
注意!:如果內核聲卡驅動已經加載並已經可以正常使用,官方驅動很可能根本無須安裝,也無法安裝。
以上方法如果都無法驅動你的聲卡,您還有兩種選擇:一是花幾十元買一塊像YMF724、744、FM801、CM8738那樣的聲卡,Linux環境下支持絕對沒問題,而且占用主板資源遠小於AC97 codec,二就是花4元錢買一張D版的windows安裝盤(我推薦您花1XXX元買正版,利國利民),不再指望用Linux聽音樂。
3、一些小技巧
1,不支持多分頻流怎麼辦?
答:內核驅動不能很好的支持多分頻流,但是只要我們用esound等聲音進程,也可以使用多分頻。
XMMS下菜單-選項-首選項-音頻輸入輸出插件中,輸出插件選esound輸出插件就可以了。
Gaim下,首選項-聲音-聲音方式改為ESD.
注意:MPlayer不能很好支持esound,還是使用OSS的模塊好些
2,如果KDE下沒有聲音,可能是KDE的arts占用了聲卡資源。可以先在控制中心-聲音系統中關閉arts聲音系統,並運行如下命令:
killall artsd
esd &
這樣在KDE環境下也能用esound了。
3、XMMS不能播放音樂(MP3)
這是個頭疼的問題,如果你聲卡檢測正常通過,卻不能播放MP3.不過這並不是聲卡或系統的問題,你可以下載一個新版本的xmms:http://www.xmms.org/files/1.2.x/rpm/……2.8-1.i386.rpm
先把舊版的卸載了,rpm -e ——nodeps xmms
再安裝新的。
如果你有一塊ALS4000這樣的聲卡呢?恐怕我們要出動ALSA了。