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:   0x000009
   Format[0]:   0x000444
   Format[1]:   0x000001
 Format Name:   S16_LE, S24_LE, S32_LE, S24_3LE
   Subformat:   0x000001
        Rate:   min=8000Hz      max=384000Hz
    Channels:   min=1           max=8
 Sample bits:   min=16          max=32
 Period size:   min=4           max=61440
Period count:   min=2           max=8

PCM in:
      Access:   0x000009
   Format[0]:   0x000444
   Format[1]:   0x000001
 Format Name:   S16_LE, S24_LE, S32_LE, S24_3LE
   Subformat:   0x000001
        Rate:   min=8000Hz      max=384000Hz
    Channels:   min=1           max=8
 Sample bits:   min=16          max=32
 Period 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-card
                      kona-mtp-snd-card

/proc/asound/devices

  2: [ 0- 0]: digital audio playback
  3: [ 0- 0]: digital audio capture
  4: [ 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、内存信息

  1. cat /proc/meminfo

  2. dmesg | grep mem

  3. free -m

  4. vmstat

  5. dmidecode -t memory

5、网卡信息

  1. dmesg | grep -i ‘eth’

  2. cat /etc/sysconfig/hwconf | grep -i eth

  3. lspci | grep -i ‘eth’

6、网络流量

1)iptraf

  1. 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
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值