ALSA 音频工具 amixer、aplay、arecord

ALSA 简介
  ALSA 是 Advanced Linux Sound Architecture,高级 Linux 声音架构的简称,它在 Linux 操作系统上提供了音频和 MIDI(Musical Instrument Digital Interface,音乐设备数字化接口)的支持。在2.6系列内核中,ALSA 已经成为默认的声音子系统,用来替换2.4系列内核中的 OSS(Open Sound System,开放声音系统)。 
  ALSA 的主要特性包括:高效地支持从消费类入门级声卡到专业级音频设备所有类型的音频接口,完全模块化的设计, 支持对称多处理(SMP)和线程安全,对 OSS 的向后兼容,以及提供了用户空间的 alsa-lib 库来简化应用程序的开发。 
  想了解更多的关于 ALSA 的这一开源项目的信息和知识,请查看:http://www.alsa-project.org/。

ALSA 音频工具编译安装
1、官网 http://www.alsa-project.org 下载 alsa-lib 和 alsa-utils。 
例如:alsa-lib-1.0.27.2.tar.bz2 和 alsa-utils-1.0.27.2.tar.bz2

2、创建 alsa 安装目录(如 /home/rudy/alsa 目录),并在该目录下创建 install 目录,接着把压缩包拷到 alsa 目录下。

3、编译 alsa-lib 用户空间库。

# tar -xvf alsa-lib-1.0.27.2.tar.bz2   
# cd alsa-lib-1.0.27.2  
# CC=arm-none-linux-gnueabi-gcc ./configure --host=arm-linux  --prefix=/home/rudy/alsa/install/
# make  
# make install 
1
2
3
4
5
4、编译 alsa-utils 工具包。 
alsa-utils 包含的工具有:alsactl, aconnect, alsamixer, amidi, amixer, aplay, aplaymidi, arecord, arecordmidi, aseqnet, iecset, speaker-test

# tar -xvf alsa-utils-1.0.27.2.tar.bz2  
# cd alsa-utils-1.0.27.2  
# CC=arm-none-linux-gnueabi-gcc ./configure --prefix=/home/rudy/alsa/install/ --host=arm-linux --with-alsa-inc-prefix=/home/rudy/alsa/install/include --with-alsa-prefix=/home/rudy/alsa/install/lib --disable-alsamixer --disable-xmlto --disable-nls  
# make  
1
2
3
4
5、简单说明 
–prefix 指定了 alsa-lib 编译后的安装目录,包含库和头文件,编译 alsa-utils 时候要指明它的库 lib 和头文件 include 的目录。 
alsamixer 是图形化的 amixer 工具,需要 ncurses 的支持,在 secure CRT 中乱码,怕麻烦加 –disable-alsamixer 禁用。

音频录制——arecord
# arecord -h

Usage: arecord [OPTION]... [FILE]...  

-h, --help              help  
    --version           print current version  
-l, --list-devices      list all soundcards and digital audio devices  
-L, --list-pcms         list device names  
-D, --device=NAME       select PCM by name  
-q, --quiet             quiet mode  
-t, --file-type TYPE    file type (voc, wav, raw or au)  
-c, --channels=#        channels  
-f, --format=FORMAT     sample format (case insensitive)  
-r, --rate=#            sample rate  
-d, --duration=#        interrupt after # seconds  
-M, --mmap              mmap stream  
-N, --nonblock          nonblocking mode  
-F, --period-time=#     distance between interrupts is # microseconds  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值