linux audio A2B
Android 中并没有使用标准的 ALSA,而是使用一个 ALSA 的简化版叫做 tinyalsa。ALSA是Advanced Linux Sound Architecture,高级Linux声音架构的简称,它在Linux操作系统上提供了音频和MIDI(Musical Instrument Digital Interface,音乐设备数字化接口)的支持。
/proc信息诸如usb描述符转储之类的硬件依赖。内容取决于驱动程序作者,因此实际上不可能有完整的一般描述。也就是说,ALSA确实具有大多数驱动程序都遵循的某些标准。
Android 中使用 tinyalsa 控制管理多种模式的音频通路,我们也可以使用 tinyalsa 提供的四个工具tinymix、tinycap、tinyplay、tinypcminfo进行对音频的查看、调试。
/system/bin/tinyplay
tinyplay用于播放tinycap采集的pcm或wav格式录音,不能进行 MP3 等格式的编码,支持 44.1kHz,48kHz 采样率的wav 音乐,使用方法
tinyplay 文件储存目录/test.pcm -D 0 - d 0
tinycap 文件存储目录/test.pcm -D 0 -d 0 -c 4 -r 44100 -b 16 -p 512 -n 6
参数说明:D 声卡 d 当前声卡下的录音或放音设备 c 通道数 r 采样率 b 采样深度 -p 中断帧数 n 周期
/system/bin/tinycap
tinycap用于采集系统录音,可以通过指令设置不用采样率,不同采样深度,不同声道的录音,使用方法
/system/bin/tinymix
tinymix 可以得到音频通路相关的各项配置参数。也可以通过添加参数修改其中的配置
/system/bin/tinypcminfo
tinypcminfo 查看设备信息
tinypcminfo -D 0 -d 0
查看1号声卡的1号设备信息adb rot
Usage: /system/bin/tinypcminfo -D card -d device
1|G8142:/system/bin # tinypcminfo -D 0 -d 0
Info for card 0, device 0:PCM out:Access: 0x000009Format[0]: 0x000444Format[1]: 0x000001Format Name: S16_LE, S24_LE, S32_LE, S24_3LESubformat: 0x000001Rate: min=8000Hz max=384000HzChannels: min=1 max=8Sample bits: min=16 max=32Period size: min=4 max=61440
Period count: min=2 max=8PCM in:Access: 0x000009Format[0]: 0x000444Format[1]: 0x000001Format Name: S16_LE, S24_LE, S32_LE, S24_3LESubformat: 0x000001Rate: min=8000Hz max=384000HzChannels: min=1 max=8Sample bits: min=16 max=32Period size: min=10 max=61440
Period count: min=2 max=8
TinyALSA本身提供的基本文件:
/proc/asound/card0
/proc/asound/card0/codecs/bolero/version
BOLERO_1_2
/proc/asound/card0/codecs/wcd938x/version
WCD938X_1_0
/proc/asound/card0/compr11
card: 0
device: 11
stream: PLAYBACK
id: (Compress2)
/proc/asound/card0/pcm0c/info
card: 0
device: 0
subdevice: 0
stream: CAPTURE
id: MultiMedia1 (*)
name:
subname: subdevice #0
class: 0
subclass: 0
subdevices_count: 1
subdevices_avail: 1
/proc/asound/card0/pcm12p/info
card: 0
device: 12
subdevice: 0
stream: PLAYBACK
id: MultiMedia10 (*)
name:
subname: subdevice #0
class: 0
subclass: 0
subdevices_count: 1
subdevices_avail: 1
/proc/asound/cards
0 [konamtpsndcard ]: kona-mtp-snd-ca - kona-mtp-snd-cardkona-mtp-snd-card
/proc/asound/devices
2: [ 0- 0]: digital audio playback3: [ 0- 0]: digital audio capture4: [ 0- 1]: digital audio playback
/proc/asound/hwdep
00-1000: Codec w
00-3013:
00-3029:
00-09:
00-10:
00-16:
00-15:
/proc/asound/pcm
00-00: MultiMedia1 (*) : : playback 1 : capture 1
00-01: MultiMedia2 (*) : : playback 1 : capture 1
00-02: VoiceMMode1 (*) : : playback 1 : capture 1
00-03: VoIP (*) : : playback 1 : capture 1
00-04: MultiMedia3 (*) : : playback 1
00-05: AFE-PROXY RX msm-stub-rx-5 : : playback 1
00-06: AFE-PROXY TX msm-stub-tx-6 : : capture 1
00-08: AUXPCM Hostless (*) : : playback 1 : capture 1
00-09: MultiMedia5 (*) : : playback 1 : capture 1
00-10: Listen 1 Audio Service (*) : : capture 1
00-12: MultiMedia10 (*) : : playback 1 : capture 1
00-13: MM_NOIRQ (*) : : playback 1 : capture 1
00-14: HDMI_RX_HOSTLESS (*) : : playback 1
00-15: VoiceMMode2 (*) : : playback 1 : capture 1
00-16: Listen 2 Audio Service (*) : : capture 1
00-17: Listen 3 Audio Service (*) : : capture 1
00-18: Listen 4 Audio Service (*) : : capture 1
00-19: Listen 5 Audio Service (*) : : capture 1
00-20: Listen 6 Audio Service (*) : : capture 1
00-21: Listen 7 Audio Service (*) : : capture 1
00-22: Listen 8 Audio Service (*) : : capture 1
00-23: MultiMedia9 (*) : : playback 1 : capture 1
00-29: MM_NOIRQ_2 (*) : : playback 1 : capture 1
00-30: Tertiary TDM1 Hostless Playback multicodec-30 : : playback 1
00-31: TX3_CDC_DMA Hostless tx_macro_tx2-31 : : capture 1
00-32: Tertiary MI2S_TX Hostless Capture (*) : : capture 1
00-33: WSA CDC DMA0 Capture snd-soc-dummy-dai-33 : : capture 1
00-34: MultiMedia6 (*) : : playback 1 : capture 1
00-35: USB Audio Hostless (*) : : playback 1 : capture 1
00-36: SLIMBUS_7 Hostless (*) : : playback 1 : capture 1
00-38: SLIMBUS_8 Hostless (*) : : playback 1 : capture 1
00-39: TX CDC DMA5 Capture tx_macro_tx3-39 : : capture 1
00-40: Secondary MI2S_RX Hostless (*) : : playback 1
00-41: CDC_DMA Hostless_ULTRA rx_macro_rx2-41 : : playback 1
00-42: TX3_CDC_DMA Hostless_ULTRA tx_macro_tx2-42 : : capture 1
00-43: Primary MI2S_TX Hostless (*) : : capture 1
/proc/asound/timers
P0-0-0: PCM playback 0-0-0 : SLAVE
P0-0-1: PCM capture 0-0-1 : SLAVE
P0-1-0: PCM playback 0-1-0 : SLAVE
/proc/asound/version
Advanced Linux Sound Architecture Driver Version k4.19.113-perf-gc4a197dac507.
由ALSA本身提供的基本文件:
/proc/asound/dev/ :一个目录,列出如果系统使用devfs则程序用于声音操作的特定设备文件,该目录将存在:如果您的系统不使用devfs(从2006-06开始,大多数不使用):该文件要么不根本存在,或者仅仅是与之的符号链接 /dev/snd
/proc/asound/devices (只读):已注册的ALSA设备列表(主设备号= 116)
/proc/asound/hwdep (只读):hwdep(硬件依赖)控件的列表未在所有系统上出现(这是否仍然存在?)
/proc/asound/meminfo (只读):内存使用情况信息,此proc文件仅在使用内存调试(或完整)选项构建alsa驱动程序时才会显示:当前在内核空间上分配的内存。
/proc/asound/modules(只读):已注册的ALSA声卡驱动程序列表,这不是ALSA加载的所有内核模块,这只是:硬件驱动程序的列表。对于使用中的每个声卡,期望在此处看到一行。
/proc/asound/oss/ :包含有关oss仿真的信息的目录,有关此目录内容的信息,请参见下文。
/proc/asound/pcm(只读):分配的pcm流的列表,请注意,这(可能)并不表示活动流的列表,而是设备的列表。这对于找出hw:0,0样式的设备非常有用:像aplay这样的命令需要的名称。
/proc/asound/seq/ :包含有关音序器信息的目录,有关此目录内容的信息,请参见下文。
/proc/asound/timers(只读):类似于/proc/asound/pcm,它是ALSA知道的计时器列表,并且描述了:在该时刻实际使用了哪些计时器。
/proc/asound/version (只读):ALSA子系统模块(或内核)的版本和日期
安卓声卡查看
进入到 proc/asound 路径下,查看cards文件
card0 card1 分别为两张声卡
linux怎么查看硬件设备信息?
建议直接进主板的bios查看硬件信息,
linux的话看具体什么版本了,指令可能有些小差异,
linux指令:
1、 主板信息
#查看BIOS信息
dmidecode | grep -A 28 “BIOS Information”
#查看主板型号信息
dmidecode |grep -A 10 “Base Board Information”
dmidecode -t baseboard
2,、cpu信息
#通过/proc文件系统
cat /proc/cpuinfo
#通过查看开机信息
dmesg | grep -i ‘cpu’
dmidecode -t processor
2c54398d729ea915da27e522040aa4d1.png
3、 硬盘信息
#查看分区情况
fdisk -l
#查看大小情况
df -h
#查看使用情况
du -h
hdparm -I /dev/sda
dmesg | grep sda
4、内存信息
cat /proc/meminfo
dmesg | grep mem
free -m
vmstat
dmidecode -t memory
5、网卡信息
dmesg | grep -i ‘eth’
cat /etc/sysconfig/hwconf | grep -i eth
lspci | grep -i ‘eth’
6、网络流量
1)iptraf
- nLoad
7、鼠标键盘和USB信息
查看键盘和鼠标:cat /proc/bus/input/devices
查看USB设备:cat /proc/bus/usb/devices
查看各设备的中断请求(IRQ):cat /proc/interrupts
8、 显卡信息
1)lspci |grep -i ‘VGA’
2)dmesg | grep -i ‘VGA
linux audio A2B相关推荐
- LWN:Linux audio plugin APIs综述!
关注了就能看到更多这么棒的文章哦- An introduction to Linux audio plugin APIs April 21, 2022 This article was contrib ...
- [Linux Audio Driver] Qualcomm平台音频GMS认证器件要求
从GMS测试常见的fail项来明确其器件要求,常见的fail测试项主要是以下三个: 后面是分析,要看结论的话直接拉到文末: 一:Audio Frequency Speaker Test 此测试使用外部 ...
- [Linux Audio Driver] SM6350平台音频bring up ( 一 )
0. 背景 这个是高通5G平台,音频的内容改的比较多,比较直接的是platform.c就直接移动到vendor了:目前 高通那边的趋势还是把音频逐渐从kernel剥离,android 7/androi ...
- [Linux Audio Driver] Android 10 machine driver probe函数分析
0. 背景 平台:Qualcomm 5G SM6350.android10.kernel version: msm-4.19. 本文重点分析machine driver里面的msm_asoc_mach ...
- [Linux Audio Driver] Android7 外部PA Speaker代码结构
0. 背景 平台:MSM8953 kernel version: msm-3.18. 1. enable_spk_ext_pa 代码路径:LA.UM.5.6\kernel\msm-3.18\sound ...
- [Linux Audio Driver] 从设备地址理解
背景: 以前调试了一个音频codec芯片es7543,当时在想这个codec_name如何配置: 网上看了些调试codec的心得文档,有的博主瞎写,以这个es7243e.5-0010为例, 说es72 ...
- [Linux Audio Driver] 高通平台内部MIC_BIAS简介
#更新 2020.05.10 我觉得我这个标题取的不是很妥当,为了表达对技术的敬畏之心,我将原标题 <一文搞懂内部MIC_BIAS>修改为<高通平台内部MIC_BIAS简介> ...
- Linux Audio (6) DAPM-3 damp的kcontrol注册过程
DAPM-3 damp的kcontrol注册过程 普通kcontrol DAMP kcontrol 第一步 codec驱动add widget 第二步 Mechine驱动add kcontrol da ...
- [Linux Audio Driver] 移植外部CODEC常见编译报错解决(持续更新)
0. 背景 最近一直在调试codec芯片,好多代码FAE给的和平台不适配,比如结构体改了之类的,一些编译问题老是忘记,就想着顺手写下总结. 1. function definition is not ...
最新文章
- python工程师-如何面试Python后端工程师?
- 设计需要冲击力:「不怕没品味的人,就怕没品味的人用心」
- Python-学生信息管理系统.exe(代码)
- Windows Terminal 完全配置教程(主题以及启动设置)
- 【NOIP模拟】开車【回退贪心】【multiset】
- 差分进化算法python_差分进化算法Python实现
- Android网络库的比较:OkHTTP,Retrofit和Volley [关闭]
- 非递归归并排序详细分析
- read和write函数
- PS之PS 删除时出现无法完成请求,因为智能对象不能直接进行编辑。
- Java菜鸟学习编写第一个java程序HelloWorld
- 深度学习(四十六)——StarGAN, InfoGAN, ProGAN, StyleGAN, BigGAN, FUNIT, CVAE
- 汉字编码对照表(gb2312/Big5/GB2312)
- 微机原理是微型计算机与接口技术吗,《微机原理与接口技术》课程教学大纲
- iPhone屏幕分辨率开发尺寸
- TS进阶之infer
- 消费金融及物流概念介绍
- 经纬度转小数格式 java_经纬度格式转换工具
- 为什么网上工商银行安装了U盾不能上网站了?
- 一个微服务业务系统的中台构建之路
热门文章
- 『转』度百死去飞秋一个BUG引发的血案
- 一个简单的完成端口(服务端/客户端)类
- .net控件FreeTextBox使用方法
- 经典面试题(29):以下代码将输出的结果是什么?
- 通俗易懂,先来认识一下Vuex
- 大一计算机在线考试,大一计算机考试题(含答案).pdf
- apk android lite,APKPure Lite
- mysql 冗余外键 同步_由于外键约束导致mysql同步出问题的故障
- PyQt5中使用代码实现嵌套布局
- 史上最全AI论文集结:近千篇论文分门别类整理好