LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 5849|回复: 9

插上耳机后笔记本的喇叭还是发声,怎么办啊?

[复制链接]
发表于 2008-2-18 03:25:13 | 显示全部楼层 |阅读模式
ICH8 的芯片组,snd-hda-intel 声卡模块,反正我用最新的CD安装 base 系统后就自动检测到了,然后就装了 alsa-utils 并用 alsaconf 成功配置,可以发出声音了,但插入耳机的时候不能屏蔽自带扬声器的声音,网上搜了一些资料推荐装最新的 alsa 驱动,但安装的时候提示无法安装啊,因为内核有相同的驱动(版本应该不同)。而且 google 的资料都是针对 ubuntu 的,一些步骤没法照着做,,有哪位知道怎么解决的吗? 先谢谢了,搞不好只能用回 XP 啦。
发表于 2008-2-18 09:04:36 | 显示全部楼层
我的笔记本也是ICH8芯片组,snd-hda-intel,一切正常。没用过alsaconf,wiki里说alsaconf配置会在modprobe.conf里加入内容可能会妨碍udev检测,是不是这个原因?
% lsmod|grep snd
snd_seq_oss            33408  0
snd_seq_midi_event      7936  1 snd_seq_oss
snd_seq                55936  4 snd_seq_oss,snd_seq_midi_event
snd_seq_device          7956  2 snd_seq_oss,snd_seq
snd_hda_intel         374568  4
snd_hwdep               9096  1 snd_hda_intel
snd_pcm_oss            42400  0
snd_pcm                82312  2 snd_hda_intel,snd_pcm_oss
snd_timer              22536  2 snd_seq,snd_pcm
snd_page_alloc          9232  2 snd_hda_intel,snd_pcm
snd_mixer_oss          17024  1 snd_pcm_oss
snd                    57320  17 snd_seq_oss,snd_seq,snd_seq_device,snd_hda_intel,snd_hwdep,snd_pcm_oss,snd_pcm,snd_timer,snd_mixer_oss
soundcore               8096  1 snd
回复 支持 反对

使用道具 举报

发表于 2008-2-18 10:29:47 | 显示全部楼层
...重复的回复一次....
到realtek上下载最新的linux 安装包, ./install后,在modprobe.conf中加入:
options YOUR-SOUND-CARD model=auto

BTW, I think YOUR-SOUND-CARD 应该是snd-hda-intel.
然后设定好alsamixer, 还要练习怎么插好音频线:-)...
(其实意味没法完美支持automute, 也没有专门的设置项)
最后就是爆音问题, 看安装包的说明自己在options中加参数
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-2-18 11:52:52 | 显示全部楼层
Post by zlowly;1817223
我的笔记本也是ICH8芯片组,snd-hda-intel,一切正常。没用过alsaconf,wiki里说alsaconf配置会在modprobe.conf里加入内容可能会妨碍udev检测,是不是这个原因?


这位兄弟,不用 alsaconf 是怎么让声卡工作的?我自从学习 linux 以来都是用 alsaconf 配置的,以前台式机的卡没遇到过这样的问题,可以介绍下你的方法或者给个出处的链接吗?

PS:谢谢 kenzhong 兄,我会试试你的方法。
回复 支持 反对

使用道具 举报

发表于 2008-2-18 12:25:57 | 显示全部楼层
反正一装好Arch没任何特别设置声卡就能工作了,唯一的设置就是用alsamixer调音量,daemon加入asla并且用alsactl保存音量,从没用过alsaconf,你可以看官方http://wiki.archlinux.org/index.php/ALSA

ALSA has been included in the 2.6 kernels and is included in all arch kernel26* packages. If you build a custom kernel, do not forget to enable the correct ALSA driver.
All necessary modules should be detected and loaded automatically by udev. No special configuration has to be done unless you use ISA cards. NEVER use alsaconf if you have a PCI or ISAPNP sound card, as the entries alsaconf adds to the modprobe.conf file might break udev's autodetection.

可能是因为2.6内核已经包含了Alsa的缘故了吧。如果你还是按以往Linux老方法设置有可能会冲突的,你还是试试看把/etc/modprobe.conf 里有关的内容都注释掉,看看行不行。
回复 支持 反对

使用道具 举报

发表于 2008-2-18 13:28:01 | 显示全部楼层
如果modprobe.conf注释掉了,是没有声音出来的. 之所以Arch Wiki上说不要运行alsaconf,是因为运行后会自动刷新modprobe.conf里的内容. 特别是options. 像我的notebook运行了alsaconf就没了options了.
我也没注意系统在安装时就检测好alsa的options了, 运行了alsaconf后就要找ALSA-configuration.txt找出与声卡对应的options才可以正常工作(其实不一定).
option 中的module设置为auto也是有问题的, 用其他声卡的module可能工作得更好.

Zlowly, 你的modprobe.conf没改变过,请贴出来看看吧.
ljx980645, 我说说用module为auto的问题吧, 其实工作是稳定的不正常的.
先不接音频线, 开headphone开音乐再接音频线, 自带扬声器正常转为音箱, 反过来也正常.
在mixer中PCM是音量控制, 如果不小心点到front....-_-!...音频线插着也会自动变为扬声器播放.
那么再在mixer中把front调整到适当的音量(你自己喜欢多少就多少,但不是0), 再mute了front.
然后拔出再插入音频线, 回复正常.............这可能只是我notebook的问题吧...(who knows?)
有爆音就看Alsa的configuration的内容加options的参数吧.

BTW, 我的声卡是Realtek ALC262, snd-hda-intel的,谁有未运行过alsaconf的帮忙贴一下modprobe.conf来分享一下吧.
回复 支持 反对

使用道具 举报

发表于 2008-2-18 14:12:40 | 显示全部楼层
我的modprobe.conf只有这点东西:
#
# /etc/modprobe.conf (for v2.6 kernels)
#
alias wlan0 ndiswrapper

# disable autoload of ipv6
alias net-pf-10 off
完全没有和声卡有关的东西。另外一台台式机也是这样,不过是ICH7芯片组的。

硬件是:
HARDWARE DETECT ver 5.3.2 (simple mode)
  Kernel     : 2.6.24-ARCH
  CPU & Cache: Processor 0: Intel(R) Core(TM)2 Duo CPU     T7500  @ 2.20GHz 2194MHz, 4096 KB Cache
Processor 1: Intel(R) Core(TM)2 Duo CPU     T7500  @ 2.20GHz 2194MHz, 4096 KB Cache

  Sound(a)   : 82801H ICH8 Family HD Audio Controller module: snd-hda-intel
  Video      : Mobile GM965/GL960 Integrated Graphics Controller server: Xorg (intel)  
  Driver     : xf86-video-intel   module: -
  Monitor    : Generic Monitor  H: 28.0-96.0kHz V: 50.0-75.0Hz
  Mouse      : Touch Pad xtype: IMPS2 device: /dev/input/mice
  HDD        : 82801HBM/HEM ICH8M/ICH8M-E IDE Controller module: ata_piix
  USB        : 82801H ICH8 Family USB2 EHCI Controller #1 module: ehci_hcd
  USB2       : 82801H ICH8 Family USB2 EHCI Controller #2 module: ehci_hcd

  Ethernet   : NetLink BCM5787M Gigabit Ethernet PCI Express module: tg3
  Network    : PRO/Wireless 3945ABG Network Connection module: iwl3945

  Menu       : Main menu: hwd
  All        : Detect all hardwares: hwd -e
  X sample   : Generate X sample: hwd -x
回复 支持 反对

使用道具 举报

发表于 2008-2-19 13:41:45 | 显示全部楼层
ljx980645, 对不起啊,是我错了, zlowly说的是对的, kernel能直接支持的声卡是不需要alsa-driver和alsaconf的, 只有是kernel不支持时要alsaconf的.
昨天我试了下把modprobe.conf注释掉了,重启是没有声音出来的.
后来想想还是不明不白的, 今天再查找相关的网页..其实没什么收获.
但又试了一下alsaconf后再把modprobe.conf注释掉, 重启声音正常出来.
证实zlowly是正确的.
当然还有一些地方要注意, 在rc.conf中的MODULES要加上snd-hda-intel, snd-mixer-oss, snd-pcm-oss, soundcore而!snd-page-alloc, !snd-pcm, !snd-timer, !snd, 是不需要的(如果有).并可能出现冲突.
如果真没办法就在modprobe.conf中加alias和options, 用aplay -l查出你的声卡是ALC???
到网上google一下就有一大堆modprobe.conf.
(从modinfo soundcore的输入来看, 有char-major-14-的modprobe.conf可靠点,..因为我没试过)
PS:不用alsaconf也就是不在modprobe.conf中设置声卡是最好的选择.
但我现在还有问题啊.就是我在console用alsamixer设定音量是正常的,但在xfce4-mixer中是出问题的,PCM项无效, Front的显示是错误的, 一打开就是0, 其实不是的, Front一改变扬声器就自动出声...
zlowly, 你的Arch会这样吗?有什么好建议?
回复 支持 反对

使用道具 举报

发表于 2008-2-19 14:51:09 | 显示全部楼层
我的xfce4-mixer没什么问题,Master和PCM都可以正常显示音量。
你之前应该有运行过sudo alsactl store吧?
回复 支持 反对

使用道具 举报

发表于 2008-2-21 12:33:45 | 显示全部楼层
在官方论坛上看到和楼主类似的问题:
http://bbs.archlinux.org/viewtopic.php?id=43914
(其中的#9楼的帖子说的就是楼主的现象)
解决方法和#3楼kenzhong所说的类似。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表