Project

General

Profile

ALSA

  1. 配置文件位置
    /usr/share/alsa
    ~/.asoundrc
    /etc/asound.conf
    
    1)/etc/alsa:
    /etc/alsa/conf.d:10-speexrate.conf、50-jack.conf等类似的脚本
    2)/usr/share/sounds/alsa:
    这个目录包含 ALSA 使用的音效文件,通常是系统声音或提示音。它们可以用于音频设备的测试或作为默认音效。
    3)/run/alsa:
    这个目录用于存储 ALSA 的运行时数据,例如音频设备的状态信息。它是一个临时目录,通常在系统启动时创建,并在系统关闭时删除。
    4)/var/lib/alsa:
    这个目录用于存储 ALSA 的持久性数据,例如声卡的配置和状态信息。它可能包含有关音频设备的详细信息,以便在系统重启后恢复设备状态。
    
  2. amixer
    # amixer和alsamixer默认不保存,如果不保存可以使用: alsactl store/alsactl restore。
    # Ubuntu 20.04.6 LTS下,如果发现音量设置在重启后仍然有效,可能是因为 PulseAudio 的配置文件或其他系统设置在起作用。
    amixer cset iface=CARD,name='Headphone Jack' off  #(执行报错)
    amixer cset iface=CARD,name='Headset Mic Jack' off  #(执行报错)
    amixer cset name='Headphone Switch' off
    amixer cset name='Headset Mic Switch' off
    amixer cset name='Speaker Switch' on
    
    # 主要
    amixer cget numid=29,iface=MIXER,name='Speaker Switch'
    amixer cget numid=28,iface=MIXER,name='Headphone Switch'
    
  3. 解释
    # 1. 检测耳机是否插入
    numid=26, iface=CARD, name='Headphone Jack'
    
    # 2. 检测外部麦克风的连接
    numid=27, iface=CARD, name='Headset Mic Jack'
    
    # 3. 启用或禁用耳机输出
    numid=28, iface=MIXER, name='Headphone Switch'
    
    # 4. 控制 PCM(脉冲编码调制)音量,影响音频播放的音量级别
    numid=21, iface=MIXER, name='PCM Volume'
    
    # 5. 控制单声道混合,允许将多个音频源混合为单声道输出
    numid=35, iface=MIXER, name='Mono Mux'
    
    # 6. 控制数字捕获音量,影响通过数字接口捕获的音频信号的音量
    numid=15, iface=MIXER, name='Capture Digital Volume'
    
    # 7. 控制捕获设备的静音状态,允许用户禁用音频捕获
    numid=16, iface=MIXER, name='Capture Mute'
    
    # 8. 控制捕获信号的极性,可能影响信号的相位
    numid=20, iface=MIXER, name='Capture Polarity'
    
    # 9. 控制播放去强调,通常用于处理特定类型的音频信号
    numid=19, iface=MIXER, name='Playback De-emphasis'
    
    # 10. 控制 I2S(串行音频接口)数字回路模式,允许音频信号在数字域内循环
    numid=1, iface=MIXER, name='I2STDM Digital Loopback Mode'
    
    # 11. 控制 3D 音效模式,增强音频的空间感
    numid=2, iface=MIXER, name='3D Mode'
    
    # 12. 控制自动增益控制(ALC)捕获的攻击时间,影响信号增益的响应速度
    numid=10, iface=MIXER, name='ALC Capture Attack Time'
    
    # 13. 控制 ALC 捕获的衰减时间,影响增益降低的速度
    numid=9, iface=MIXER, name='ALC Capture Decay Time'
    
    # 14. 控制 ALC 捕获的功能,可能包括启用或禁用 ALC
    numid=6, iface=MIXER, name='ALC Capture Function'
    
    # 15. 控制 ALC 捕获的保持时间,影响增益保持的持续时间
    numid=8, iface=MIXER, name='ALC Capture Hold Time'
    
    # 16. 控制 ALC 捕获的最大可编程增益放大器(PGA)增益
    numid=4, iface=MIXER, name='ALC Capture Max PGA'
    
    # 17. 控制 ALC 捕获的最小可编程增益放大器(PGA)增益
    numid=5, iface=MIXER, name='ALC Capture Min PGA'
    
    # 18. 控制 ALC 捕获的 NG(噪声门)开关,可能用于噪声抑制
    numid=13, iface=MIXER, name='ALC Capture NG Switch'
    
    # 19. 控制 ALC 捕获的 NG 阈值,决定何时启用噪声门
    numid=11, iface=MIXER, name='ALC Capture NG Threshold'
    
    # 20. 控制 ALC 捕获的 NG 类型,可能影响噪声门的工作方式
    numid=12, iface=MIXER, name='ALC Capture NG Type'
    
    # 21. 控制 ALC 捕获的目标音量,设定期望的音频输入级别
    numid=3, iface=MIXER, name='ALC Capture Target Volume'
    
    # 22. 控制 ALC 捕获的零交叉开关,可能用于减少噪声
    numid=7, iface=MIXER, name='ALC Capture ZC Switch'
    
    # 23. 控制差分信号的多路复用,允许选择不同的输入信号
    numid=34, iface=MIXER, name='Differential Mux'
    
    # 24. 控制耳机麦克风的开关状态, 允许用户启用或禁用耳机麦克风
    numid=31, iface=MIXER, name='Headset Mic Switch'
    
    # 25. 控制左声道捕获音量,影响左声道的音频输入级别
    numid=17, iface=MIXER, name='Left Channel Capture Volume'
    
    # 26. 控制左声道线路的多路复用,允许选择不同的输入信号
    numid=36, iface=MIXER, name='Left Line Mux'
    
    # 27. 控制左混音器的旁路开关,允许直接通过信号而不经过处理
    numid=39, iface=MIXER, name='Left Mixer Left Bypass Switch'
    
    # 28. 控制左混音器旁路的音量,影响旁路信号的音量级别
    numid=22, iface=MIXER, name='Left Mixer Left Bypass Volume'
    
    # 29. 控制左混音器的播放开关,允许启用或禁用左声道的播放
    numid=38, iface=MIXER, name='Left Mixer Left Playback Switch'
    
    # 30. 控制左声道的 PGA 多路复用, 允许选择不同的增益设置
    numid=32, iface=MIXER, name='Left PGA Mux'
    
    # 31. 控制主麦克风的开关状态,允许用户启用或禁用主麦克风
    numid=30, iface=MIXER, name='Main Mic Switch'
    
    # 32. 控制输出 1 的播放音量,影响该输出的音频级别
    numid=24, iface=MIXER, name='Output 1 Playback Volume'
    
    # 33. 控制输出 2 的播放音量,影响该输出的音频级别
    numid=25, iface=MIXER, name='Output 2 Playback Volume'
    
    # 34. 控制右声道捕获音量,影响右声道的音频输入级别
    numid=18, iface=MIXER, name='Right Channel Capture Volume'
    
    # 35. 控制右声道线路的多路复用,允许选择不同的输入信号
    numid=37, iface=MIXER, name='Right Line Mux'
    
    # 36. 控制右混音器的旁路开关,允许直接通过信号而不经过处理
    numid=41, iface=MIXER, name='Right Mixer Right Bypass Switch'
    
    # 37. 控制右混音器旁路的音量,影响旁路信号的音量级别
    numid=23, iface=MIXER, name='Right Mixer Right Bypass Volume'
    
    # 38. 控制右混音器的播放开关,允许启用或禁用右声道的播放
    numid=40, iface=MIXER, name='Right Mixer Right Playback Switch'
    
    # 39. 控制右声道的 PGA 多路复用,允许选择不同的增益设置
    numid=33, iface=MIXER, name='Right PGA Mux'
    
    # 40. 控制扬声器的开关状态,允许用户启用或禁用扬声器输出
    numid=29, iface=MIXER, name='Speaker Switch'
    
    # 41. 控制零交叉超时开关,可能用于信号处理的时间控制
    numid=14, iface=MIXER, name='ZC Timeout Switch'