mixer音量的设置:amixer小工具

发布者:RadiantSerenity最新更新时间:2023-05-31 来源: elecfans关键字:mixer  音量  设置 手机看文章 扫描二维码
随时随地手机看文章

1.关于alsa-utils和lib的移植我的上一篇博文中已经说明了,下面我就来说说我的混音器mixer音量控制的调节过程,网上的很多方法都是比较基本的入门没有知名具体的操作方法,在此我来谈谈我的设置过程。

   关于amixer的入门使用方法参考:http://www.360doc.com/content/12/1123/18/10388890_249802824.shtml

2.开发环境:

 ubuntu:12.04

 arm平台:s3c2416

 声卡:wm9714

 交叉工具链:arm-linux-gcc 4.4.6

 utils及lib上篇博客说明了

3.简单说明一下操作指令,我们使用cget和cset就可以满足我们的设置

  amixer cget  numid=#1         说明:获得该操作的详细信息

   amixer cset  numid=#1 #2   说明:#1就是我们要设置的那个接口的id,#2就是我们要设置的量

4. 再说一下我的具体硬件:

   我的喇叭是直接接在wm9714的headphone输出上的(外加有功放来驱动)

   我的设置是:先用amixer cget contens 得到所有信息

   我所用到的就是我所关注的主要有:

   1 numid=83,iface=MIXER,name='Left Capture Source' //非常重要:选择左声道声音源
  ; type=ENUMERATED,access=rw------,values=1,items=8
  ; Item #0 'Mic 1'
  ; Item #1 'Mic 2'
  ; Item #2 'Line'
  ; Item #3 'Mono In'
  ; Item #4 'Headphone'
  ; Item #5 'Speaker'
  ; Item #6 'Mono Out'
  ; Item #7 'Zh'
  : values=0
我接的是headphone 所以我选用4

一般声卡驱动在没有自己设置的情况下,默认是单声道,无符号8bit,8K采样率的,单声道情况下音频数据主要在左声道。

这里需要注意,可能刚开始你用cat xxx.wav>/dev/dsp 会出错,没声音,这说明你的音频格式不正确,把它转换成我上面说的默认配置,在下载试试,就ok啦给大家推荐一个音频转换器:wavmp3cvt.exe 用了好几个 感觉这个好使。还有cat只能播放我们的录音文件(要是我们自己录制的,应该可以直接播放)、。wav文件,mp3是压缩文件,需要一直相应的小工具madplay来播放。
2 numid=95,iface=MIXER,name='Capture Headphone Mux'//这一步非常重要(结合:left capture source->left)
  ; type=ENUMERATED,access=rw------,values=1,items=4
  ; Item #0 'Stereo'
  ; Item #1 'Left'
  ; Item #2 'Right'
  ; Item #3 'Mute'
  : values=3
这里只有需用0:stereo 音量才最大可调


3  numid=12,iface=MIXER,name='Capture Volume Steps'
    ; type=ENUMERATED,access=rw------,values=2,items=2
  ; Item #0 '+1.5dB Steps'
  ; Item #1 '+0.75dB Steps'
  : values=0,0
当用1:调节音量变化不明显,所以应该选用0:

这里说一下,经过设置上面的两步,音量已经非常给力了,可以无论我们如何调节音量,效果都不明显,关键就在这里啦,也就是我们调节音量的步距吧,我们选1,这样我们下面在调节音量就比较明显啦
4  numid=13,iface=MIXER,name='Capture Volume'
  ; type=INTEGER,access=rw------,values=2,min=0,max=31,step=0
  : values=0,0
第一步后在调节音量有变化,比较明显

  5 numid=15,iface=MIXER,name='Capture to Headphone Volume'   //这里音量可调有效 7较好 没噪音
  ; type=INTEGER,access=rw------,values=1,min=0,max=7,step=0
  : values=5

我的具体设置:amixer cset numid=83 4   //左声道声源选着
                       amixer cset numid=95 0    //
                       amixer cset numid=12 0   //调节音量的步距
                       amixer cset numid=13 0--31  //调节音量大小
                       amixer cset numid=15 0--7 //调节音量大小

 说明:这些id根据自己的情况而定,根据上一步我们cget得到的信息来确定,最后面俩个命令就是我们事先音量可调啦。。。。。。

   这些都会再开机重启后失效,需要重新设置,我们可以把它们写进我们alsa.conf配置脚本里面,这样就不用每次都设置了。


关键字:mixer  音量  设置 引用地址:mixer音量的设置:amixer小工具

上一篇:ok6410 u-boot-2012.04.01移植六完善MLC NAND支持
下一篇:alsa-lib及alsa-utils成功移植

推荐阅读最新更新时间:2024-11-13 18:02

SIMATIC S7-1500 PLC设置限值指令(LIMIT)指令
数学函数非常重要,在模拟量的处理、PID控制等很多场合都要用到数学函数指令。 (10)设置限值指令(LIMIT) 使用“设置限值”指令,将输入IN的值限制在输入MN与MX的值范围之间。如果IN输入的值满足条件MN≤IN≤MX,则OUT以IN的值输出。如果不满足该条件且输入值IN低于下限MN,则OUT以MN的值输出。如果超出上限MX,则OUT以MX的值输出。设置限值指令(LIMIT)和参数见图1。 图1 注意:可以从指令框的“>”下拉列表中选择该指令的数据类型。 用一个例子来说明设置限值指令(LIMIT),梯形图如图2所示。 图2 当I0.0闭合1次时,激活设置限值指令,当100.0≥MD20≥0.0时,MD24=MD20
[嵌入式]
SIMATIC S7-1500 PLC<font color='red'>设置</font>限值指令(LIMIT)指令
STM32 Boot模式设置方法
1、模式设置 Boot模式设实际指的就是选择启动的起始地址区域,在STM32F20x和STM32F21x中存在以下三种模式可供选择,分别为片内Flash、系统内存、片内SRAM: 2、BOOT Pin值确认 BOOT引脚值在系统复位的4个系统时钟周期后被锁存,同时BOOT1引脚实际与GPIO引脚共享一外部接口,在4个系统时钟周期后则会被释放可作为GPIO使用。 BOOT引脚值会在待机模式后被重新检测,在待机模式中BOOT引脚状态要保持正确 3、ST Embedded Bootloader 在System Memory中预置了bootloader用于对片内Flash进行IAP, 其使用如下接口: -USART1 -US
[单片机]
STM32定时器溢出模式计时设置
环境: 主机:WIN7 开发环境:MDK4.23 MCU:STM32F103CBT6 源代码1: 说明:定时器采用TIM2,时钟源为内部8M晶振,向上溢出模式.此定时器用在延时函数,最小可以延时1us,故没有采用中断形式定时. 初始化代码: RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE); //重新将Timer设置为缺省值 TIM_DeInit(TIM2); //采用内部时钟给TIM2提供时钟源 TIM_InternalClockConfig(TIM2); timInitStruct.TIM_ClockDivision = TIM_CKD_DI
[单片机]
AVR的bootloader的设置
一些注意事项: 1.熔丝位的烧写:BOOTRST要进行编程,这样单片机在复位后自动跳转到bootloader区执行bootloader的代码,然后要根据自己bootloader的大小设置boot区的的熔丝位:具体设置如下图,这里我选择的是1024大小(注意1代表为编程,0代表已编程): 2.设置引导区锁定位:为了保护bootloader不被应用程序修改或者擦除,所以要对其进行保护,Atmega提供了熔丝位的保护方式,具体设置如下图(我设置的为BLB0为11,BLB1为00): 3.Flash页的设定:因flash的擦除和写入是按照页来操作的,看手册上说是1页有128个字节,但实际调试时候发现需要一次写入25
[单片机]
AVR的bootloader的<font color='red'>设置</font>
LM3S1138入门6,系统时钟设置
程序运行后,系统时钟设置为:外部6MHz晶振3分频,即系统时钟为2MHz。在此状态下LED闪烁较慢。 稍后,系统时钟设置为:内部振荡器(12MHz 30%)2分频,即系统时钟为6MHz左右。LED闪烁速度明显加快。 主函数: #include LED.H #include hw_types.h #include hw_memmap.h #include hw_sysctl.h #include hw_gpio.h #include sysctl.h #include gpio.h // 将较长的标识符定义成较短的形式 #define SysCtlPeriEnable SysCtlPeriphe
[单片机]
规范行为,储能产品不能乱泊!广东:储能电站严禁设置在高层建筑、商业综合体、人员密集和具有粉尘、腐蚀性气体场所内
  9月23日,广东省发展改革委公开征求《广东省新型储能电站建设运行管理办法(征求意见稿)》意见的通告。   文件提出,《管理办法》适用于广东省内接入10(6)千伏及以上电压等级公用电网并对外提供服务的新型储能电站,其他新型储能电站规划建设运营参照本办法执行。   《管理办法》涉及储能电站规划、备案、建设、并网、安全应急等各个方面。   以下为原文 广东省发展改革委关于公开征求《广东省新型储能电站建设运行管理办法(征求意见稿)》意见的通告   为规范我省新型储能电站规划、建设和运行,促进新型储能电站有序、安全、健康发展,我委起草了《广东省新型储能电站建设运行管理办法(征求意见稿)》。现
[新能源]
STM32设置为I2C从机
硬件平台:STM32F401 编辑器 : keil 5.18 操作系统:win7 一、I2C协议 在传输数据的时候,SDA线必须在时钟的高电平周期保持稳定,SDA的高或低电平状态只有在SCL 线的时钟信号是低电平时才能改变 。 起始和停止条件   SCL 线是高电平时,SDA 线从高电平向低电平切换,这个情况表示起始条件;   SCL 线是高电平时,SDA 线由低电平向高电平切换,这个情况表示停止条件。 寻址方式(7/10位地址方式)   第一个字节的头7 位组成了从机地址,最低位(LSB)是第8 位,它决定了传输的 普通的和带重复开始条件的7位地址格式方向。第一个字节的最低位是“0”,表示主机会写信息到
[单片机]
stm32之滴答定时器(4):滴答定时器的优先级设置
上次讲的只剩滴答定时器的优先级设置函数NVIC_SetPriority没有讲,这个函数具体如下 static __INLINE void NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) { if(IRQn 0) { SCB- SHP = ((priority (8 - __NVIC_PRIO_BITS)) & 0xff); } * set Priority for Cortex-M3 System Interrupts */ else { NVIC- IP = ((priority (8 - __NVIC_PRIO_BITS)) & 0xff); }
[单片机]
stm32之滴答定时器(4):滴答定时器的优先级<font color='red'>设置</font>
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved