自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux設(shè)備配置之聲卡配置

系統(tǒng) Linux
聲卡 (Sound Card)也叫音頻卡(港臺稱之為聲效卡):聲卡是多媒體技術(shù)中最基本的組成部分,是實現(xiàn)聲波/數(shù)字信號相互轉(zhuǎn)換的一種硬件。聲卡的基本功能是把來自話筒、磁帶、光盤的原始聲音信號加以轉(zhuǎn)換,輸出到耳機(jī)、揚(yáng)聲器、擴(kuò)音機(jī)、錄音機(jī)等聲響設(shè)備,或通過音樂設(shè)備數(shù)字接口(MIDI)使樂器發(fā)出美妙的聲音。今天就教大家來在Linux下配置聲卡, 請看下文。

  Linux下設(shè)備的配置過程是指在檢測到設(shè)備類型、設(shè)備當(dāng)前工作參數(shù)等信息之后,使用這些信息來配置設(shè)備的驅(qū)動程序,工作方式等,(設(shè)備的檢測過程參見 《如何在Linux下實現(xiàn)硬件的自動檢測》)。要完成這樣的任務(wù),需要做兩方面的工作:

  其一是需要一個詳盡的設(shè)備信息文件,這個文件描述了設(shè)備標(biāo)識、與設(shè)備標(biāo)識對應(yīng)的設(shè)備驅(qū)動程序、設(shè)備配置參數(shù)(設(shè)備選項)、設(shè)備設(shè)置的詳細(xì)描述、設(shè)備配置方法描述、設(shè)備對應(yīng)的別名、設(shè)備的主設(shè)備號等信息。

  其二是需要根據(jù)設(shè)備的類型,以及安裝的linux系統(tǒng)版本(不同的Linux發(fā)行版對于同一設(shè)備的配置腳本文件存在差異),設(shè)置設(shè)備對應(yīng)的配置腳本文件。
 

  聲卡配置過程

  1. 內(nèi)核聲卡驅(qū)動程序的配置

  現(xiàn)在正在使用的聲卡主要有PCI和ISA兩種。在linux系統(tǒng)下,對這兩種類型聲卡的配置過程實際上是生成配置文件/etc/modules.conf,建立正確的設(shè)備別名和聲卡設(shè)備驅(qū)動程序的對應(yīng)關(guān)系。在正確的設(shè)置驅(qū)動模塊之后,使用混音器程序設(shè)置聲卡的輸出音量。

  若您的聲卡是ISA PnP類型的,那么如果這塊聲卡在dos(windows)系統(tǒng)下也工作良好,那么您可以先記住聲卡的工作參數(shù),包括IRQ、DMA和I/O。一般而言,在linux系統(tǒng)下應(yīng)該使用和DOS下一樣的參數(shù)。

  如果您不知道它的工作參數(shù),您可以通過/proc/isapnp獲得聲卡的配置空間,它包括dma、ioport和irq等信息。然后您可以通過檢查/proc/interrupts,/proc/ioports和/proc/dma文件獲知系統(tǒng)中空閑的irq、ioports和dma等信息,由此您可以選擇合適的聲卡配置參數(shù)。

  在2.4.x內(nèi)核中,實現(xiàn)了ISA PnP支持,同時一部分聲卡驅(qū)動程序現(xiàn)在也支持無需使用isapnp工具完成自動檢測和配置了。關(guān)于聲卡設(shè)備的詳細(xì)信息您也可以查看內(nèi)核文檔/usr/src/linux/Documentation/sound/中的文件。

  對于PCI聲卡而言,它們的驅(qū)動程序包含了自動檢測過程,所以您只需要插入正確的驅(qū)動模塊,聲卡一般就能正常工作了。

  在聲卡模塊被***次引用時,內(nèi)核會要求加載相應(yīng)的驅(qū)動模塊。與聲卡模塊對應(yīng)的設(shè)備別名是sound-slot-0(0表示系統(tǒng)中的一個聲卡,以此類推)。例如,在/etc/modules.conf中加入:

  alias sound-slot-0 esssolo1

  就配置了ESS Solo-1聲卡。這條語句表示在需要聲卡時,自動加載模塊esssolo1。

  有時加載了sound-slot-0對應(yīng)的設(shè)備模塊之后,并不能使聲卡的所有功能生效。這時設(shè)備就會請求訪問sound-service-0-n別名。n代表了不同的設(shè)備:

  編號 對應(yīng)的設(shè)備

  0 混音器(Mixer)

  2 MIDI

  3,4 DSP

  這時就要求您設(shè)置正確的聲卡服務(wù)模塊別名,這樣聲卡才能夠正常工作。聲卡對應(yīng)的設(shè)備文件:

  設(shè)備文件名 設(shè)備描述

  /dev/audio 正常連接到/dev/audio0

  /dev/audio0 sun工作站兼容的聲音設(shè)備(僅部分實現(xiàn),不支持sun ioctl接口,僅支持u-law編碼)

  /dev/audio1 第二個聲音設(shè)備(安裝多個聲卡時使用)

  /dev/dsp 正常連接到/dev/dsp0

  /dev/dsp0 ***個數(shù)字采樣設(shè)備

  /dev/dsp1 第二個數(shù)字采樣設(shè)備

  /dev/mixer 正常連接到/dev/mixer0

  /dev/mixer0 ***個聲音混音器

  /dev/mixer1 第二個聲音混音器

  /dev/music 高級序列化接口

  /dev/sequencer 底層MIDI,F(xiàn)M和GUS存取

  /dev/sequencer2 正常連接到/dev/music

  /dev/midi00 ***個原MIDI端口

  /dev/midi01 第二個原MIDI端口

  /dev/midi02 第三個原MIDI端口

  /dev/midi03 第四個原MIDI端口

  /dev/sndstat 顯示聲音驅(qū)動程序的狀態(tài)

  pc揚(yáng)聲器提供下列設(shè)備:

  /dev/pcaudio 等價于/dev/audio

  /dev/pcsp 等價于/dev/dsp

  /dev/pcmixer 等價于/dev/mixer

  您可以直接將聲音文件送入對應(yīng)的設(shè)備,比如,將.au聲音文件通過將其送入/dev/audio中播放,原始采樣也可被送入/dev/dsp。

  cat sample.su > /dev/audio

  但是這樣做一般效果較差,播放時應(yīng)采用play命令。對于wavplay和vplay(snd-util包)會以***的效果播放wav文件,但是它們不能識別微軟adpcm壓縮的wav文件。若手動設(shè)置爭取正確的參數(shù)之后,splay用于播放大多數(shù)聲音文件。

  讀/dev/audio和/dev/dsp返回的采樣數(shù)據(jù)可以重定向到一個文件。vrec可以使這個過程更容易??赡苄枰粋€混音器程序選擇適當(dāng)?shù)妮斎朐O(shè)備。

  2. ALSA聲卡驅(qū)動程序的配置

  對于聲卡驅(qū)動程序,除了內(nèi)核自帶的驅(qū)動程序之外,您還可以使用Advanced linux Sound Architecture(ALSA,http://www.alsa-project.org/)提供的驅(qū)動程序。它支持一系列主流聲卡,同時它和內(nèi)核的聲音結(jié)構(gòu)互相兼容,在某種程度上,可以說是內(nèi)核的聲卡驅(qū)動模塊的補(bǔ)充。

  ALSA的聲卡驅(qū)動程序的一般命名規(guī)則是snd-card-。soundcard代表不同類型的聲卡。例如,對于所有的16位Soundblaster聲卡,它們對應(yīng)的驅(qū)動程序模塊為snd-card-sb16。

  若與需要linux內(nèi)核聲音驅(qū)動的向后兼容性,您還需要兩個模塊snd-pcm-oss和snd-mixer-oss。對于amixer設(shè)置的多個混音器,它們都是針對不同的設(shè)備的。比如CD通道的設(shè)置是針對CD播放器的。而很多應(yīng)用程序,如象mpg123,xmms,realplayer,都要依賴PCM通道的設(shè)置。MIC代表麥克風(fēng)。不同的Gain部分對于不同的使用能提供特別的增益。

  缺省情況下ALSA靜音所有的輸出。為了獲得聲音,必須解除主音量和PCM音量的靜音。

  amixer -c 0 sset 'Master',0 100%,100% unmute

  amixer -c 0 sset 'PCM ',0 100% unmute

  選項包括mute,unmute,capture,nocapture,rec,norec,數(shù)字或left:right。amixer不帶參數(shù)運行時,返回聲卡上所有通道的設(shè)置情況。

  為了在每次插入聲卡驅(qū)動模塊時,都打開靜音,您可以在/etc/modules.conf加入下列語句:

  post-install snd-card-sb16 amixer -c 0 sset 'Master',0 100%,100% unmute && amixer -c 0 sset 'PCM ',0 100% unmute

  在成功插入了alsa聲卡模塊之后,系統(tǒng)會出現(xiàn)/proc/asound目錄,這個目錄描述了聲卡的工作情況,以及創(chuàng)建的設(shè)備文件。

  在您加載snd-pcm-oss設(shè)備模塊之后,你也能使用與oss兼容的方式存取聲卡,這時如下的映射會被完成:

  ALSA設(shè)備 OSS設(shè)備 次設(shè)備號

  /dev/snd/pcmC0D0 /dev/audio0(/dev/audio) 4

  /dev/snd/pcmC0D0 /dev/dsp0(/dev/dsp) 3

  /dev/snd/pcmC0D1 /dev/adsp(/dev/adsp) 12

  /dev/snd/pcmC1D0 /dev/audio1 20

  /dev/snd/pcmC1D0 /dev/dsp1 19

  /dev/snd/pcmC1D1 /dev/adsp1 28

  /dev/snd/pcmC2D0 /dev/audio2 36

  /dev/snd/pcmC2D0 /dev/dsp2 35

  /dev/snd/pcmC2D1 /dev/adsp2 44

  對于/dev/mixer設(shè)備,要加載snd-mixer-oss,可以保證和老的oss混音器的兼容性。如果您插入了上述設(shè)備之后,聲音系統(tǒng)仍無法正常工作,您可以運行snddevices命令,建立正確的設(shè)備文件。

  由于為使ALSA正常工作,需要設(shè)置大量的設(shè)備別名,下面就給出一個/etc/modules.conf的例子,它能夠完成ESS Solo1聲卡的自動配置工作。其他的ALSA設(shè)備的設(shè)置也基本與此聲卡相同。

  # 設(shè)置ALSA設(shè)備的主設(shè)備號,它固定為116

  alias char-major-116 snd

  # 設(shè)置OSS設(shè)備的主設(shè)備號,它固定為14,這使得ALSA復(fù)用OSS設(shè)備

  alias char-major-14 soundcore

  # ALSA設(shè)備別名

  alias sound-card-0 snd-card-es1938

  # OSS設(shè)備別名

  alias sound-slot-0 sound-card-0

  # 安裝不同的聲卡服務(wù)

  alias sound-service-0-0 snd-mixer-oss

  alias sound-service-0-1 snd-seq-oss

  alias sound-service-0-3 snd-pcm-oss

  alias sound-service-0-8 snd-seq-oss

  alias snd-minor-oss-12 snd-pcm-oss

  # 運行amixer命令,打開聲音輸出

  post-install snd-card-es1938 amixer -c 0 sset 'Master',0 100%,100% unmute && amixer -c 0 sset 'PCM ',0 100% unmute

大家看了上文自己就能在Linux下配置聲卡了,希望對大家有所幫助。

【編輯推薦】

 

責(zé)任編輯:趙鵬 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-01-18 09:41:21

Linux網(wǎng)卡

2011-01-18 09:40:49

Linux顯卡

2011-01-18 09:37:52

Linux鍵盤

2011-01-18 09:40:46

LinuxModem

2011-01-18 09:41:18

Linux鼠標(biāo)

2011-02-25 10:10:41

Proftpd

2011-03-23 11:14:47

LAMP配置

2011-03-22 13:06:18

LAMPMysql

2011-03-25 10:53:33

Nagios 配置

2011-03-25 10:25:19

2011-02-25 17:40:38

2011-07-11 14:03:29

linuxmysql

2011-02-25 10:19:54

Proftpd

2011-02-25 17:07:25

2009-07-17 14:20:31

ibatis Dao

2011-03-14 17:02:36

BGP

2011-02-25 17:30:52

2010-05-19 13:44:42

Subversion+

2011-02-25 10:03:06

Proftpd

2011-04-01 10:07:04

點贊
收藏

51CTO技術(shù)棧公眾號