解决Ubuntu声卡无声问题

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
wzbbj
帖子: 2
注册时间: 2011-04-08 14:28

解决Ubuntu声卡无声问题

#1

帖子 wzbbj » 2011-04-08 14:33

解决Ubuntu声卡无声问题

记得刚开始装ubuntu的时候,这个问题我东撞西撞,花了一天多的时间才解决。后来数次遇到这个问题,在摸索了一阵之后,终于攻克了。在翻阅来很多英文资料,总结了一些经验,所以分享出来,帮助需要解决这个问题的人。

系统:10.10
声卡:ALC269

问题1:aplay -l提示 找不到音效卡
如果事先aplay -l,显示的是ALC259,则安装realtek ALC269的Linux驱动后会出现这个问题。只能怪系统将269识别为259导致无法安装驱动。
解决方法:
1.$ uname -r #查看当前内核版本号 例如:2.6.35-28-generic
2.打开系统 -> 系统管理 -> 新立得软件包管理器
搜索 2.6.35-28
搜索位置 名称
重新安装 linux-backports-modules-alsa-2.6.35-28-generic 和 linux-image-2.6.35-28-generic
重启后硬件会被重新识别(事先没声音,仍然也不会有,看下面)

问题2:检测到声卡,但是没有声音
原因1:之前有声音,进入Win7系统后,再进ubuntu无声音
分析:这个问题我专门测试过,在有声音的情况下,进一次Win7,再进ubuntu就无声。显然配置没有被更改过,故无需进行重新安装alsa等操作。
解决方法:
关机(重启无效),再进ubuntu就有声音了。最好是从Win7退出来的时候,直接关机,再开机进入ubuntu系统。
原因2:用户失去了访问audio设备的权限
解决方法:
可以通过命令
ls -la /dev/snd
来查看音频设备的使用权限。比如在我的系统下,输出
total 0
drwxr-xr-x 2 root root 180 2010-09-16 08:53 .
drwxr-xr-x 12 root root 4580 2010-09-15 13:01 ..
crw-rw---- 1 root root 116, 8 2010-09-16 08:53 controlC0
crw-rw---- 1 root root 116, 7 2010-09-16 08:53 hwC0D2
crw-rw---- 1 root root 116, 6 2010-09-16 08:54 pcmC0D0c
crw-rw---- 1 root root 116, 5 2010-09-16 14:04 pcmC0D0p
crw-rw---- 1 root root 116, 4 2010-09-16 08:53 pcmC0D1p
crw-rw---- 1 root root 116, 3 2010-09-16 08:53 seq
crw-rw---- 1 root root 116, 2 2010-09-16 08:53 timer
这代表只有root和audio组的用户可以使用 音频设备。这也就是为什么
在root下Volume Control工作正常,而在其他用户下无法使用。也许是
一些错误操作将用户从audio组中删除而无法使用音频设备。解决办法是
sudo chmod -R a rwx /dev/snd
这样就会让所有的用户可以访问音频设备。 更加恰当的方法是,
sudo usermod -a -G audio usrname.
上述操作将用户usrname添加到audio组中。

以上操作的先决条件:
1.开启用户权限:系统/系统管理/用户和组/高级 -> 使用 视频设备、音频设备
2.sudo gedit /etc/modprobe.d/alsa-base.conf 添加 options snd-hda-intel model=auto
如果上述操作无效:需要设置声卡设备参数,看附件。
附件
alsa硬件参数设置.tar.gz
【hda-verb的使用】
把 hda-verb-0.3,run.py 拷贝到 /home/用户名/ 目录下

第一步:编译生成hda-verb
sudo cd /home/用户名/hda-verb-0.3/
sudo make

第二步:将hda-verb拷贝到 /usr/bin/ 目录下
sudo cp /home/用户名/hda-verb-0.3/hda-verb /usr/bin/

第三步:添加启动项
sudo gedit /etc/rc.local
添加 hda-verb /dev/snd/hwC0D0 0x14 SET_CONNECT_SEL 0x0d #这一句是根据ALC269被识别为ALC259时,解决了我的问题,可以出声了

【如果你要自己设置参数,就看下面】
hda-verb的使用方法:
hda-verb 声卡设备路径 硬件位置 参数位置 参数值

【生成 HDA Analyzer 工具设置硬件参数】
将run.py放到 /home/用户名/ 里面
执行 sudo python run.py

我所知道的几个关键位置 0x14 0x1a 0x1b 0x21
通常是更改 Connection List 的 Audio Mixer ,更改之后就立刻有效,所以你应该一边修改,一边测试能否出声。
如果发现有效的关键参数,那么需要设置为启动项(见【hda-verb的使用】)
(11.67 KiB) 已下载 47 次
上次由 wzbbj 在 2011-04-08 14:46,总共编辑 4 次。
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

Re: 解决Ubuntu声卡无声问题

#2

帖子 月下叹逍遥 » 2011-04-08 14:35

:em11
浮生七十今三十,从此凄惶未可知
头像
liuenyan
帖子: 127
注册时间: 2008-09-11 21:53
来自: harbin
联系:

Re: 解决Ubuntu声卡无声问题

#3

帖子 liuenyan » 2011-05-04 14:05

我的11.04关机之后再开机,又有声音了。很不解,为什么从windows 7 中直接重启进Ubuntu会没有声音。
njufish
帖子: 13
注册时间: 2012-10-27 14:47
系统: ubuntu/win8

Re: 解决Ubuntu声卡无声问题

#4

帖子 njufish » 2013-09-07 12:08

想知道,为什么从关机直接进ubuntu可以有声音,而从win7重启进入ubuntu就会没有声音?
这个问题的根本到底是什么呢?
有大神知道吗?
yjdeyj
帖子: 10
注册时间: 2013-08-26 20:55
系统: ubuntu

Re: 解决Ubuntu声卡无声问题

#5

帖子 yjdeyj » 2013-09-07 14:03

我也遇到了,我每次都是再次重启次。怎么解决,为什么呢?
回复