升級以後音效卡突然不能用了,找了好多方法,最後是重新裝alsa驅動解決的。備份一下,以備以後有用。 可以參考 這裡 其中編譯alsa-utils的時候有錯誤,要安裝xmlot,用新得利搜一下安裝就可以了
1157 sudo gedit /etc/modprobe.d/alsa-base.conf
1160 cd alsa/alsa-driver-1.0.23/
1161 ls
1162 ./configure --with-cards=hda-intel
1163 make
1164 sudo make
1165 sudo make install
1166 cd ../alsa-lib-1.0.23/
1167 ./configure
1168 sudo make
1169 sudo make install
1170 cd ../alsa-utils-1.0.23/
1171 ./configure
1172 sudo make
1173 sudo make install 修改alsa-base.conf,我的具體的修改比較亂,都加到了最後。看看吧 # autoloader aliases install sound-slot-0 /sbin/modprobe snd-card-0 install sound-slot-1 /sbin/modprobe snd-card-1 install sound-slot-2 /sbin/modprobe snd-card-2 install sound-slot-3 /sbin/modprobe snd-card-3 install sound-slot-4 /sbin/modprobe snd-card-4 install sound-slot-5 /sbin/modprobe snd-card-5 install sound-slot-6 /sbin/modprobe snd-card-6 install sound-slot-7 /sbin/modprobe snd-card-7 # Cause optional modules to be loaded above generic modules install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; } # # Workaround at bug #499695 (reverted in Ubuntu see LP #319505) install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; } install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; } install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; } # install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; } # Cause optional modules to be loaded above sound card driver modules install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; } install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; } # Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway) install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; } # Prevent abnormal drivers from grabbing index 0 options bt87x index=-2 options cx88_alsa index=-2 options saa7134-alsa index=-2 options snd-atiixp-modem index=-2 options snd-intel8x0m index=-2 options snd-via82xx-modem index=-2 options snd-usb-audio index=-2 options snd-usb-us122l index=-2 options snd-usb-usx2y index=-2 options snd-usb-caiaq index=-2 # Ubuntu #62691, enable MPU for snd-cmipci options snd-cmipci mpu_port=0x330 fm_port=0x388 # Keep snd-pcsp from being loaded as first soundcard options snd-pcsp index=-2 options snd_hda_intel model=6stack-dell alias char-major-116 snd alias snd-card-0 snd-hda_intel # OSS/Free portion alias char-major-14 ALC888 alias sound-slot-0 snd-card-0 # card #1 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 sound-service-0-12 snd-pcm-oss alias snd-card-0 snd-hda-intel alias sound-slot-0 snd-hda-intel options snd-hda-intel model=dell-m44
發現一個新的問題,聲音雖然有了但是出現聲音搶佔的問題,一個程式調用了聲音資訊,另一個就不可以用了。很討厭,查詢了一下 ,目前這個方法可以解決:
第一:sudo apt-get install libesd-alsa0
第二:sudo gedit /etc/asound.conf(建立的)
填入:
pcm.card0 {
type hw
card 0
}
pcm.!default {
type plug
slave.pcm "dmixer"
}
pcm.dmixer {
type dmix
ipc_key 1025
slave {
pcm "hw:0,0"
period_time 0
period_size 1024
buffer_size 4096
periods 128
rate 44100
}
bindings {
0 0
1 1
}
}
(上面的檔案可以在大多數音效卡上正常運行…儘管我成功地測試了三個不同的音效卡,但我還是不能確保它可以使所有音效卡都能正常運行)
第三:sudo gedit /etc/esound/esd.conf(已有的檔案,做好備份)
改成:
[esd]
auto_spawn=1
spawn_options=-terminate -nobeeps -as 2 -d default
spawn_wait_ms=100
# default options are used in spawned and non-spawned mode
default_options=