首先说一下alsa的配置文件。alsa的配置文件是alsa.conf位于/usr/share/alsa目录下,通常还有/usr/share/alsa/card和/usr/share/alsa/pcm两个子目录用来设置card相关的参数,别名以及一些PCM默认设置。以上配置文件,我等凡夫从不用修改,修改它们是大神的工作。

还有两个配置文件/etc/asound.conf和~/.asoundrc,它俩有效是因为它俩被alsa.conf引用。以下是alsa.conf的原文:

[plain] view plaincopy
  1. # pre-load the configuration files
  2. @hooks [
  3. {
  4. func load
  5. files [
  6. {
  7. @func concat
  8. strings [
  9. { @func datadir }
  10. "/alsa.conf.d/"
  11. ]
  12. }
  13. "/etc/asound.conf"
  14. "~/.asoundrc"
  15. ]
  16. errors false
  17. }
  18. ]

然后说我遇到的问题。为了提高本人的台式机的性能,在没有换主板的情况下升级了CPU和显卡。CPU没有造成什么影响,显卡是淘来的微星R6750暴雪1G,芯片为AMD Radeon HD 6750。由于它提供了一个HDMI接口,该接口还支持音频输出,于是麻烦出现了,在gentoo下,声音不走板载的HDA VIA VT82xx集成声卡,不知道走到哪里出去了,反正我的耳机没有声音。

找了好多文档,终于然我弄明白怎么回事了。

首先,如果机器有多于一个声卡,可以用下面的命令显示出来:

[plain] view plaincopy
  1. $ cat /proc/asound/cards
  2. 0 [Generic        ]: HDA-Intel - HD-Audio Generic
  3. HD-Audio Generic at 0xfe9bc000 irq 25
  4. 1 [VT82xx         ]: HDA-Intel - HDA VIA VT82xx
  5. HDA VIA VT82xx at 0xfeafc000 irq 17

其次,每一个声卡有一个card number和一个device number,可以用下面命令显示出来:

[plain] view plaincopy
  1. $ aplay -l
  2. **** List of PLAYBACK Hardware Devices ****
  3. card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  4. Subdevices: 1/1
  5. Subdevice #0: subdevice #0
  6. card 1: VT82xx [HDA VIA VT82xx], device 0: AD1986A Analog [AD1986A Analog]
  7. Subdevices: 1/1
  8. Subdevice #0: subdevice #0

最后,alsa设置了一个defaults设备,音频播放软件默认使用defaults设备输出声音。defaults设备定义在alsa.conf中,内容如下:

[plain] view plaincopy
  1. #
  2. # defaults
  3. #
  4. # show all name hints also for definitions without hint {} section
  5. defaults.namehint.showall off
  6. # show just basic name hints
  7. defaults.namehint.basic on
  8. # show extended name hints
  9. defaults.namehint.extended off
  10. #
  11. defaults.ctl.card 0
  12. defaults.pcm.card 0
  13. defaults.pcm.device 0
  14. defaults.pcm.subdevice -1
  15. ……
  16. ……
  17. ……

所以defaults会默认匹配card number和device number比较小的声卡。比如我这里(看上面aplay -l的输出显示),就会匹配到HDMI 0上。

如果要修改,则修改/etc/asound.conf或~/.asoundrc。比如我要把defaults匹配到card 1,device 0上,则添加一下几行:

[plain] view plaincopy
  1. $ sudo vim /etc/asound.conf
  2. defaults.pcm.card 1
  3. defaults.pcm.device 3
  4. defaults.ctl.card 1

参考文档:

[csdn blog]alsa config
[csdn blog]理解和使用Alsa的配置文件
[arch wiki]设置默认声卡

alsa设置默认声卡相关推荐

  1. Linux alsa 声卡驱动 安装 卸载 设置默认声卡

    环境 ubuntu12.04 因为桌面版的默认装了,而且调声音也很方便,这里说一下server版下的配置,毕竟做开发经常还是用server版的 1.安装 apt-get install alsa-ba ...

  2. 在多声卡的情况下使用修改注册表的方法设置默认声卡

    计算机中有两块声卡,使用 regsnap 工具 对比不同默认声卡下的注册表变化发现下列键值被修改了 修改的主键 HKEY_CURRENT_USER/Software/Microsoft/Multime ...

  3. debian中设置默认声卡

    alsamixer 设置默认声卡 sudo nano /etc/asound.conf        #设置声卡1为默认 则写入以下内容: defaults.ctl.card 1 defaults.p ...

  4. 英伟达tegra210 连接电视/hifi,设置默认声卡HDMI,

    设置开机默认输出是hdmi,陆续尝试了几个星期,昨天终于成功了,现将方法记录下来分享. 1.查询声卡详细信息: pacmd list-cards 2.找到你要设置的默认声卡的 索引号和 有效文件:如下 ...

  5. 理解和使用alsa配置-默认静音,必须先用amixer解除主音量和pcm音量的静音

     ALSA声卡驱动程序的配置 对于声卡驱动程序,除了内核自带的驱动程序之外,您还可以使用Advanced Linux Sound Architecture(ALSA,http://www.alsa ...

  6. python pcm 静音_理解和使用alsa配置-默认静音,必须先用amixer解除主音量和pcm音量的静音 | 学步园...

    ALSA声卡驱动程序的配置 对于声卡驱动程序,除了内核自带的驱动程序之外,您还可以使用Advanced Linux Sound Architecture(ALSA,http://www.alsa-pr ...

  7. mysql关于时间的面试题,mysql时间设置默认值MySQL常见面试题

    1.limit(选出10 到20 条) select * from students order by id limit 9,10; 2.MySQL 会使用索引的操作符号 =,>,=,betwe ...

  8. 为绑定的NSArrayController设置默认的排序

    当NSArrayController与一个class或者entity进行绑定(Binding)之后,可以为这个NSArrayController设置默认的排序.通过在Bindings Insepect ...

  9. word笔记之选择性粘贴-设置默认粘贴为当前格式

    最近一段时间,经常要写文档,将一些项目的内容从申请单上抄写到报告上,发现word的默认是使用复制的格式,而不是使用目标的格式,弄的我还要使用鼠标右键选择使用当前格式.如下图 这样太没效率了. 解决方法 ...

  10. SDK与IDE的选择(附上设置默认SDK)

    1设置默认的SDK: 作为第二版最早的版本为:Default device: Series60_v20:com.nokia.series60 2nd_FP2:Default device: S60_2 ...

最新文章

  1. linux下源码安装rabbitMq
  2. vue+element-ui实现表格的增删改查
  3. 贪心/二分查找 BestCoder Round #43 1002 pog loves szh II
  4. 根据后序和中序求二叉树的先序
  5. pv实现前趋图_Excel 数据透视图实现简易交互式数据面板
  6. (3.2)HarmonyOS鸿蒙双击事件
  7. java 序列化 uid,Java中的序列化版本uid
  8. 神秘TTY:The TTY demystified
  9. linux 文件差异备份,Linux使用 tar命令-g参数进行增量+差异备份、还原文件
  10. sftp api java_SFTP例子2----使用JSch实现SFTP文件传输
  11. rscp胎位图_4种胎位图解,孕30周这个姿势最适合顺产
  12. 宁波注塑电子塑料件加工
  13. java 图片压缩 base64,图片的尺寸 大小压缩 和转化为base64
  14. buu刷题日记 asis2016_b00ks
  15. FTP软件的安装及上传/下载方法
  16. BIM模型文件下载——某幼儿园设计方案Revit模型
  17. pico-ctf-2013 overflow-2
  18. (洛谷刷题)P1830 轰炸机III
  19. 数学之美—泰勒展开式
  20. springMVC注解定时器Cron表达式编写

热门文章

  1. 最新互联网架构师视频教程+源码20G
  2. 富途、小牛与亿航股价齐飞, “新三傻”是大泡沫还是好未来?
  3. ThreadPoolExecutor线程池参数设置技巧
  4. 《现代汉语》北大公开课
  5. HTML5背景颜色表格作业,HTML快速入门5——不规则表格、表格背景、边框颜色
  6. SEO需要每天写文章吗?
  7. python爬取豆瓣电影250_利用Python爬取豆瓣TOP250的电影
  8. 【回溯】B033_LQ_填字母游戏(暴搜+注意参数传递机制)
  9. Teamviewer解决许可证授权的问题
  10. 区块链 之 以太坊的那些坑