博客
关于我
amixer用法
阅读量:232 次
发布时间:2019-02-28

本文共 3038 字,大约阅读时间需要 10 分钟。

amixer命令及音频系统配置指南

第一部分:了解amixer命令

amixer 是一个用于管理音频混音器的命令行工具,广泛应用于Linux系统中。为了有效地使用amixer,我们首先需要了解其基本命令和功能选项。

基本命令和选项

  • amixer –help

    这个命令用于显示amixer的帮助信息,包括可选项和命令列表。

  • 可选项

    • -h, –help:显示帮助信息。
    • -c, –card N:选择音频卡(N为卡的编号)。
    • -D, –device N:选择设备,默认为“default”。
    • -d, –debug:启用调试模式。
    • -n, –nocheck:跳过范围检查。
    • -v, –version:显示版本信息。
    • -q, –quiet:静音模式,不输出信息。
    • -i, –inactive:显示不活跃的控制器。
    • -a, –abstract L:选择抽象级别(none或basic)。
    • -s, –stdin:从标准输入读取并执行命令。
  • 命令

    • scontrols:显示所有简单混音器控制器。
    • scontents:显示所有混音器简单控制器的内容,默认为默认命令。
    • sset sID P:为指定的简单控制器设置内容。
    • sget sID:获取指定简单控制器的内容。
    • controls:显示指定音频卡的所有控制器。
    • contents:显示指定音频卡所有控制器的内容。
    • cset cID P:为指定的控制器设置内容。
    • cget cID:获取指定控制器的内容。

第二部分:音频系统提供的接口

不同音频驱动提供了丰富的接口来操作音频系统。通过amixer命令,我们可以探索这些接口的具体内容。

查看控制器和内容

  • amixer controls

    这个命令用于显示指定音频卡的所有控制器。例如:

    # amixer controlsnumid=3,iface=MIXER,name='Master Mode Switch'numid=29,iface=MIXER,name='Master Mux'numid=4,iface=MIXER,name='Master Quality Switch'numid=2,iface=MIXER,name='Master Switch'numid=1,iface=MIXER,name='Master Volume'numid=7,iface=MIXER,name='PCM Mode Switch'numid=6,iface=MIXER,name='PCM Switch'numid=5,iface=MIXER,name='PCM Volume'numid=21,iface=MIXER,name='Line Input Switch'numid=16,iface=MIXER,name='Line Mode Switch'numid=27,iface=MIXER,name='Line Mux'...(继续)numid=9,iface=MIXER,name='Mic Switch'numid=8,iface=MIXER,name='Mic Volume'numid=19,iface=MIXER,name='ADC Mode Switch'numid=28,iface=MIXER,name='ADC Mux'...(继续)
  • amixer contents

    这个命令用于显示指定控制器的具体内容。例如:

    # amixer contentsnumid=3,iface=MIXER,name='Master Mode Switch'; type=ENUMERATED,access=rw——,values=1,items=2; Item #0 ‘Common Buffer Off’; Item #1 ‘Common Buffer On’: values=0...(继续)numid=5,iface=MIXER,name='PCM Volume'; type=INTEGER,access=rw—R–,values=2,min=0,max=27,step=0: values=27,27| dBscale-min=-40.50dB,step=1.50dB,mute=0

第三部分:设置具体参数

要配置音频系统中的某个参数,通常需要先使用get命令获取当前值,然后再使用set命令进行修改。

设置主音量

假设你想设置主音量为25:

  • 获取当前值

    # amixer cget numid=5,iface=MIXER,name='PCM Volume'numid=5,iface=MIXER,name='PCM Volume'; type=INTEGER,access=rw—R–,values=2,min=0,max=27,step=0: values=27,27| dBscale-min=-40.50dB,step=1.50dB,mute=0
  • 设置值

    # amixer cset numid=5,iface=MIXER,name='PCM Volume' 25numid=5,iface=MIXER,name='PCM Volume'; type=INTEGER,access=rw—R–,values=2,min=0,max=27,step=0: values=25,25| dBscale-min=-40.50dB,step=1.50dB,mute=0
  • 关闭麦克风供电

    如果想关闭麦克风的供电:

  • 获取当前值

    # amixer cget numid=12,iface=MIXER,name='Mic Supply Switch'numid=12,iface=MIXER,name='Mic Supply Switch'; type=ENUMERATED,access=rw——,values=1,items=2; Item #0 ‘On’; Item #1 ‘Off’: values=1
  • 设置值

    # amixer cset numid=12,iface=MIXER,name='Mic Supply Switch' Offnumid=12,iface=MIXER,name='Mic Supply Switch'; type=ENUMERATED,access=rw——,values=1,items=2; Item #0 ‘On’; Item #1 ‘Off’: values=1
  • 使用简单控制器

    除了复杂控制器,简单控制器也是常用的操作对象。例如:

  • 获取简单控制器值

    # amixer sget 'Master Mux',0Simple mixer control ‘Master Mux’,0Capabilities: enumItems: ‘Sum’ ‘DAC’ ‘Line’ ‘Mic’Item0: ‘DAC’
  • 设置简单控制器值

    # amixer sset 'Master Mux',0 LineSimple mixer control ‘Master Mux’,0Capabilities: enumItems: ‘Sum’ ‘DAC’ ‘Line’ ‘Mic’Item0: ‘Line’
  • 总结

    通过上述步骤,我们可以清晰地了解amixer命令的使用方法,并有效地配置音频系统。无论是简单控制器还是复杂控制器,都可以通过类似的get和set命令进行操作。

    转载地址:http://buaj.baihongyu.com/

    你可能感兴趣的文章
    Python UI自动化测试集成UnitTest
    查看>>
    python unicode-escape
    查看>>
    Python unittest mock:是否可以在测试时模拟方法默认参数的值?
    查看>>
    Python unittest单元测试框架 TestSuite测试套件
    查看>>
    PYTHON调离线语音合成并实时播放
    查看>>
    python unittest高级特性!
    查看>>
    Python unittest:如何将标准输出消息临时重定向到缓冲区并测试其内容?
    查看>>
    Python urllib/Requests下载文件失败,但浏览器下载失败
    查看>>
    Python urllib2 文件上传问题
    查看>>
    Python urllib2.open 连接由对等错误重置
    查看>>
    python urllib2详解及实例
    查看>>
    Python url请求提示certificate verify failed unable to get local issuer certificate
    查看>>
    Python UTC 日期时间对象的 ISO 格式不包括 Z(祖鲁语或零偏移)
    查看>>
    python valueerror object2_python遇到错误记录
    查看>>
    python vars的作用
    查看>>
    Python vcrpy库:HTTP请求记录和重放
    查看>>
    Python virtualenv
    查看>>
    python vue3实现大文件分段续传(断点续传)--带暂停和继续功能
    查看>>
    Python WebDriver如何打印整个页面源(html)
    查看>>
    Python WebSocket自动化测试:构建高效接口测试框架
    查看>>