Chinaunix首页 | 论坛 | 博客
  • 博客访问: 533670
  • 博文数量: 526
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 3235
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-29 17:52
文章分类

全部博文(526)

文章存档

2011年(1)

2008年(525)

我的朋友

分类: LINUX

2008-08-29 18:06:38

 
  之前在机器上安Gentoo,声卡模块加载了去没有正常工作,查了些资料终于搞定。总结一下。

  -1.安装alsa驱动,内核带的alsa驱动可能版本不够,可先不做这个,还是不工作可尝试这个。

  0.重启让udev自动检测或运行alsaconf检测声卡。用

   lsmod|grepsnd

  查看声卡模块是否被加载,如果没有跳至-1步,如果还没有就搜索或去BBS/IRC/论坛问。

  1.安装alsa-utils。

  2.运行alsamixer,查看芯片型号,即Chip后面的内容。

  3.从下载alsa-driver,找到ALSA-Configuration.txt,从中用Chip型号中的关键字,一般是最后一段搜索,或lsmod得到的声卡模块名搜索,再用Chip型号定位。查出可用的参数。如我的声卡:Chip:AnalogDevicesAD1986A,模块是snd-hda-intel。

  4.尝试里面的参数,加在/etc/modprobe.conf或/etc/modprobe.d/options中,具体取决于发行版,一般说来前一个总是可用的,如在gentoo中,在ubuntu里后面的是标准的位置,别的发行版可能略有不同。

  如我的声卡,在ALSA-Configuration.txt中相关的内容:

   model-forcethemodelname
   position_fix-FixDMApointer(0=auto,1=none,2=POSBUF,3=FIFOsiz
   e)
   single_cmd-Usesingleimmediatecommandstocommunicatewith
   codecs(fordebuggingonly)
   enable_msi-EnableMessageSignaledInterrupt(MSI)(default=off)

   AD1986A
   6stack6-jack,separatesurrounds(default)
   3stack3-stack,sharedsurrounds
   laptop2-channelonly(FSCV2060,SamsungM50)
   laptop-eapd2-channelwithEAPD(SamsungR65,ASUSA6J)

  经过测试知道,以下的参数是可以工作的。

   optionssnd-hda-intelsingle_cmd=1model=laptop-eapd

  测试时可杀掉占用声卡的程序,重新加载声卡模块。

  有些系统的/etc/init.d/或/etc/rc.d下有alsas相关的init脚本,可直接使用,如果没有可用lsof/dev查看一下声卡相关的设备是什么设备打开的,杀掉即可。

Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题Linux下的声卡问题
阅读(437) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~