linux音頻驅動
⑴ linux查看音效卡驅動
在終端輸入 alsamixer
就可以看到了,順便還可以調節下系統聲音的大小 :)
⑵ 為什麼Linux的音頻驅動位於sound目錄下而不是driver/sound
1、早期的2.4內核所有的音頻驅動和其他驅動一樣都是位於drivers目錄下的:drivers/sound
2、到了2.5開發版內核,所有的音頻驅動包括音頻框架代碼由drivers/sound移到了sound目錄下:
(1)2.6內核之前的git記錄查找:http://git.kernel.org/?p=linux/kernel/git/tglx/history.git;a=summary
(2)音頻驅動代碼被移動的git提交:
http://git.kernel.org/?p=linux/kernel/git/tglx/history.git;a=commit;h=
author Jaroslav Kysela <[email protected]>
Wed, 13 Feb 2002 03:32:11 +0000 (19:32 -0800)
committer Jaroslav Kysela <[email protected]>
Wed, 13 Feb 2002 03:32:11 +0000 (19:32 -0800)
commit
tree tree | snapshot
parent commit | diff
[PATCH] ALSA patch for 2.5.4
Integrate ALSA into v2.5.4
Jaroslav
這個提交是在2.5.4~2.5.5-pre1之間發生的
從這個提交信息可以看出,是在Linux內核正式引入ALSA音頻構架的時候,所有的代碼都被移動到了drivers/sound下。
也就是在同一天,音頻子系統的維護由原來的Alan Cox轉為Jaroslav Kysela:
http://git.kernel.org/?p=linux/kernel/git/tglx/history.git;a=commit;h=
Make Jaroslav the sound maintainer, remove Alan on his request.
author Linus Torvalds <[email protected]>
Wed, 13 Feb 2002 04:05:43 +0000 (20:05 -0800)
committer Linus Torvalds <[email protected]>
Wed, 13 Feb 2002 04:05:43 +0000 (20:05 -0800)
commit
tree tree | snapshot
parent commit | diff
Make Jaroslav the sound maintainer, remove Alan on his request.
所以這個代碼的移動應該是在ALSA那個分支開發的時候就已經是這樣的了
⑶ linux如何安裝音效卡驅動呢
在Linux系統上有兩種驅動程序可以彌補Linux系統的不足。一種是OSS(開放聲音系統),一種是ALSA(先進Linux聲音架構)。OSS是一個商業音效卡驅動程序,需要花錢購買,否則每次啟動後,你只可以免費使用240分鍾;ALSA是自由軟體,可以免費使用。
一、安裝ALSA音效卡驅動程序
1.ALSA包含下面四個軟體包:
alsa-driver-0.5.9.tar.bz2
alsaconf-0.4.3b.tar.gz
alsa-lib-0.5.9.tar.bz2
alsa-utils-0.5.9.tar.bz2
2.先安裝alsa-driver-0.5.9.tar.bz2這個文件:
(1)cp alsa-driver-0.5.9.tar.bz2 /tmp
將alsa-driver-0.5.9.tar.bz2 拷到/tmp目錄下。
(2)bunzip2 alsa-driver-0.5.9.tar.bz2
解壓縮這個文件,會在/tmp目錄下生成一個文件叫做alsa-driver-0.5.9.tar。
(3)tar xvf alsa-driver-0.5.9.tar
將會在/tmp目錄下產生一個子目錄叫做alsa-driver-0.5.9,alsa的所有文件就存放在這個目錄下。
(4)cd alsa-driver-0.5.9
進入alsa的驅動程序所存放的目錄,准備配置和編譯它。這時你可以看一下目錄下的INSTALL文件來了解安裝的步驟和注意事項。
(5)依次運行下面三個命令:
./configure
make install
./snddevices
3.編輯/etc/ moles.conf文件
這個文件的配置雖然比較麻煩,但用alsaconf-0.4.3b.tar.gz也可以配好它,運行命令:
(1)cp alsaconf-0.4.3b.tar.gz /tmp
將alsaconf-0.4.3b.tar.gz 拷到/tmp目錄下。
(2)tar zxvf alsaconf-0.4.3b.tar.gz
解壓縮這個文件,會在/tmp目錄下生成一個子目錄叫做alsaconf-0.4.3b。
(3)./alsaconf
會出現一個窗口叫你選擇音效卡,像SoundBlaster及ESS1868、S3_SonicVibes_PCI、Ensoniq_AudioPCI_ES1370 1371等,很多目前的kernel還不支持的音效卡它都可以支持了。
選好音效卡之後系統會問你一些問題,都回答OK,然後會回到第一個畫面問你要不要繼續設第二張音效卡,選「No_more_cards」退出即可。完成這個步驟之後,/etc/moles.conf這個文件就基本上自動配置好了,重新啟動電腦後音效卡就可以發聲了。
4.如果還不行,那麼你就還需要安裝alsa-lib和alsa-utils,安裝方法和alsa-driver一樣,注意要先安裝alsa-lib,再安裝alsa-utils。將文件拷到/tmp目錄,解壓縮,然後運行命令make和make install,具體請參照上面alsa-driver的安裝步驟。
安裝後到alsa-utils(解開alsa-utils-0.5.9.tar.bz2會產生該目錄)目錄下的alsamixer子目錄執行
./alsamixer
二、安裝OSS音效卡驅動程序
1、OSS音效卡只有一個安裝包:osslinux393q-2217-UP.tar.gz。
2.啟動Linux,把下載下來的osslinux393q-2217-UP.tar.gz拷到一個臨時目錄中,如:
cp osslinux393q-2217-UP.tar.gz /tmp/
cd /tmp
tar zxvf osslinux392v-glibc-2212-UP.tar.gz
此時文件已經解開,你可以看到在當前目錄下有四個文件:INSTALL、LICENSE、oss-install和oss.pkg文件,其中INSTALL是安裝幫助文件,如果你是第一次安裝一定要好好看一看。
3.配置
以root用戶身份運行oss-install:
./oss-install
如果出現了「No such file or directory」的錯誤信息,那是因為你下載的OSS驅動程序的版本和你用的Linux不匹配,可以重新到上述站點,下載相應的驅動程序就可以了。
這時候一般會提示:你的Linux以模塊的形式載入了音效卡驅動程序,要不要安裝程序自動將它去掉?選擇去掉就可以了。
接下來就是處理過程、協議及一大堆東西,接受協議安裝,使用默認安裝路徑即可(/usr/lib/oss)。oss一般可以自動檢測出大部分音效卡,你可以看看結果是不是和你的音效卡相符,如果相符,直接在菜單中選擇「Save changes and Exit..」即可。對於那些不能直接探測到的音效卡,你就只有用手工方法選擇了。如對Yamaha OPL3-SAX (YMF715/YMF719) chip 可以選擇:「Generic Yamaha OPL3-SAx (YMF715/YMF719) non-PnP」driver。
4.打開/關閉音效卡
在默認的安裝目錄/usr/local/bin里有一個soundon命令,它可以用來打開oss驅動,同樣的你也可以用soundoff命令關閉oss驅動。
5.疑難解決
有時也可能出現這樣的情況,你的音效卡檢測到了,而且安裝過程也好像一切正常,但是音效卡就是不能正常工作。不要急,OSS還有可以讓你手工調節設置參數的地方,其實,在「Save changes and Exit」的同一個窗口中,還有一個選項「Manual Configuration」,它就是讓你手工調整設置參數的,你可以在這里設置音效卡的IO、DMA等參數。