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音量的设置:amixer小工具的…的更多相关文章

  1. [apue] 一个查看当前终端标志位设置的小工具

    话不多说,先看运行效果: >./term input flag 0x00000500 BRKINT not in ICRNL IGNBRK not in IGNCR not in IGNPAR ...

  2. android小工具-系统音量管理器

    简介:调节系统音量的小工具,能够快捷的调节系统铃声,媒体音乐.闹钟和通话声音.你可能会想,手机自带的音量键还不够快捷吗?还得写个程序?首先,用音量键调音只能调节一种声音,像闹钟这种声音不能直接调.其次 ...

  3. 安装linux下面用来配置网络,防火墙,系统服务等设置的图形小工具Setup

    Setup命令是linux下面用来配置网络,防火墙,系统服务等设置的图形小工具.使用起来非常方便简单,可是centos\redhat最小化安装之后发现setup命令工具用不了. 接下来介绍如何安装se ...

  4. Confluence 6 外部小工具在其他应用中设置可信关系

    为了在你的 Confluence 中与其他应用建立外部小工具,我们建议你在 2 个应用之间设置 OAuth 或者信任的应用连接关系.在这个例子中,外部应用为小工具的服务器(服务器提供者)和 Confl ...

  5. 小工具-IP地址获取和设置及端口访问验证(windows)

    技术部在业务部门眼里就是后勤部门,业务部门要搬到新大楼去 领导要求去帮忙调试业务人员的电脑,要保证这些大爷们周一上班来,就喝着茶打开新浪,然后打开OA看看. 手上就几个桌面支持的兄弟,要弄一百台多电脑 ...

  6. 小工具:天气查询 Vs自定义设置 DevGridControl中GridView排序问题 小工具:火车票查询 小工具:邮件发送 小工具:截图&简单图像处理

    小工具:天气查询   开发一个天气查询的工具主要由两步构成,一是数据的获取,二是数据的展示.  一.数据获取 数据获取又可以分为使用其它公司提供的API和手动抓取其它网站数据. 1. 某公司提供的AP ...

  7. 2014年Windows平台软件推荐:神器小工具(骨灰级

    原文  http://www.wtoutiao.com/a/120621.html 底层工具 “If you know how to use Process Monitor competently, ...

  8. Windows平台软件推荐:神器小工具(骨灰级)

    底层工具 "If you know how to use Process Monitor competently, people of both sexes will immediately ...

  9. 【原】得心应手小工具开发——IE代理快速切换工具

    一.引入 因为公司里上外网要经常换IE代理地址,每次切换地址都要进到Internet Options里去设置一番,经常切换的话很是麻烦,由于用了点时间作个小工具来方便自己. 二.实现思路 其实思路很简 ...

随机推荐

  1. ng 服务

    服务的本质是单例对象,封装一些方法和属性的. 单例模式:在实例化变量的时候,如果该变量已经存在,直接返回该变量:如果不存在,就创建一个新的变量再返回 ng自带的服务有很多,常用:$location $ ...

  2. 重读tcp-ip详解三卷:1

    应用层 Http.Telnet.FTP和e-mail等 负责把数据传输到传输层或接收从传输层返回的数据传输层 TCP和UDP 主要为两台主机上的应用程序提供端到端的通信,TCP为两台主机提供高可靠性的 ...

  3. poj 1159 最长回文

    方法  LCS #include<iostream> #include<cstring> #include<algorithm> #include<stdio ...

  4. BJOI2019 游记

    BJOI 2019 游记 Day 1 开场拿到 \(T1\) 发现可以转成求平均 \(log\) 直接 \(AC\) 自动机上 \(Dp\) 一波即可 \(T2\) 发现是到数论神仙题,大概能想到要用 ...

  5. 《DSP using MATLAB》示例Example7.19

    代码: M = 33; alpha = (M-1)/2; Dw = 2*pi/M; l = 0:M-1; wl = Dw*l; %Hdr = [0, 0, 1, 1]; wdl = [0, 0.6, ...

  6. asp.net 操作共享目录文件

    背景: 服务器A为程序服务器,服务器B为文件服务器.服务器A的程序需要修改删除服务器B的文件. 实现方式:采用虚拟目录映射 操作步骤: 1.在服务器A与服务器B建立相同账号和密码的windows用户 ...

  7. 【eclipse】 怎么解决java.lang.NoClassDefFoundError错误

    前言 在日常Java开 发中,我们经常碰到java.lang.NoClassDefFoundError这样的错误,需要花费很多时间去找错误的原因,具体是哪个类不见了?类 明明还在,为什么找不到?而且我 ...

  8. aspupload ,在winows server 2008 下无法使用

    aspupload ,在winows server 2008 下无法使用.求助解决办法 2014-01-12 13:31 goolean | 浏览 775 次 操作系统 aspupload64位,安装 ...

  9. (转)Android和JavaScript互相调用

    Html页面和Java代码结合的方式一般用在界面经常被更改 的情况下,可以讲html放在网络中,软件一打开就会访问网络获取到最新的界面.缺点是会受到网络信号的影响,从而导致访问速度慢. 1.用WebV ...

  10. mysql + unidac 使用事务例子

    //备注:mysql必须是使用innoDB引擎才支持事务功能,否则以下事务相关代码将失效.//SQL SERVER和Oracle还没试,明天回公司试了再发代码.procedure TForm1.btn ...