ALSA音频底层调试工具tinypcminfo ,tinymix,tinyplay,tinycap的使用

本文介绍了如何使用tinyalsa库提供的tinypcminfo,tinymix,tinyplay和tinycap这四个工具进行ALSA音频底层的调试和管理。tinypcminfo用于查看PCM通道信息,tinymix查看和设置音频控件,tinyplay用于播放wav文件,tinycap则用于录音。这些工具在嵌入式设备和Android系统的音频调试中非常实用。
摘要由CSDN通过智能技术生成

原文链接:

https://blog.csdn.net/u012899335/article/details/82421115

https://blog.csdn.net/ly601579033/article/details/85112365

https://blog.csdn.net/RadianceBlau/article/details/64125411

https://blog.csdn.net/kangear/article/details/38139669

 

    由于ALSA(Advanced Linux Sound Architecture)架构太过于庞大,对于嵌入式设备而言很多功能用不到,且会增加功耗,所以Android采用了精简后的tinyalsa。ALSA在内核驱动层提供了alsa-driver,在应用层提供了alsa-lib,应用程序只需要调用alsa-lib提供的API就可以完成对底层硬件的操作。Android中使用tinyalsa控制管理所有模式的音频通路,我们也可以使用tinyalsa提供的工具进行查看、调试。tinyalsa相关的底层调试工具常用的有 tinypcminfo ,tinymix,tinyplay,tinycap,下面分别介绍他们的使用方法。

相关概念:
Sample:样本长度,音频数据最基本的单位,常见的有8位和16位。
Channel:声道数,分为单声道mono和立体声stereo。
Frame:帧,构成一个完整的声音单元,Frame = Sample * channel。
Rate:又称Sample rate,采样率,即每秒的采样次数,针对帧而言。
Interleaved:交错模式,一种音频数据的记录方式,在交错模式下,数据以连续桢的形式存放,即首先记录完桢1的左声道样本和右声道样本(假设为立体声),再开始桢2的记录。而在非交错模式下,首先记录的是一个周期内所有桢的左声道样本,再记录右声道样本,数据是以连续通道的方式存储。多数情况下使用交错模式。
Period size:周期,每次硬件中断处理音频数据的帧数,对于音频设备的数据读写,以此为单位。
Buffer size:数据缓冲区大小,这里特指runtime的buffer size,而不是snd_pcm_hardware定义的buffer_bytes_max。一般来说Buffer size =period_size * period_count,period_count相当于处理完一个buffer数据所需的硬件中断次数。

tinymix
tinymix可以查看系统的音频控件,可直接执行tinymix进行查看。
hello_world:/ # tinymix -D 0                                                           
Mixer name: 'AML-TVAUDIO'
Number of controls: 5
ctl     type    num     name                                    value
 
0       INT     2       PGA IN Gain                             9 9
1       INT     2       ADC Digital Capture Volume              80 80
2       INT     1       AMP Master Volume      

  • 3
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值