目录
查看声卡和pcm设备
声卡和pcm设备的关系:https://blog.csdn.net/Ciellee/article/details/101752604
一.查看声卡和PCM设备的信息相关指令
-
1.查看当前的声卡:
cat /proc/asound/cards
-
2.查看pcm设备列表:
cat /proc/asound/pcm
-
3.查看当前有哪些进程占用了pcm设备节点
lsof |grep pcm
-
4.查看有哪些音频设备节点
ls /dev/snd/
xxxx:/ $ ls /dev/snd/
controlC0 pcmC0D12p pcmC0D16c pcmC0D19p pcmC0D21p pcmC0D24c pcmC0D27p pcmC0D2c pcmC0D31p pcmC0D34c pcmC0D3p pcmC0D6c pcmC0D8p sequencer2
pcmC0D0p pcmC0D13c pcmC0D17c pcmC0D1c pcmC0D22p pcmC0D25p pcmC0D28c pcmC0D2p pcmC0D32p pcmC0D34p pcmC0D4c pcmC0D6p pcmC0D9p timer
pcmC0D10c pcmC0D14c pcmC0D18c pcmC0D20c pcmC0D23c pcmC0D26p pcmC0D28p pcmC0D30c pcmC0D33c pcmC0D35c pcmC0D4p pcmC0D7c seq
pcmC0D11p pcmC0D15p pcmC0D19c pcmC0D20p pcmC0D23p pcmC0D27c pcmC0D29c pcmC0D30p pcmC0D33p pcmC0D3c pcmC0D5p pcmC0D7p sequencer
二.音频设备命名规则
命名规则:[device type]C[card index]D[device index][capture/playback]
,
名字中含有4部分的信息:
-
1.device type
设备类型,通常只有comtrol/pcm这2种。从上图可以看到声卡会管理很多设备,PCM设备只是其中的一种设备。
-
2.card index
声卡的id,代表第几块声卡。通常都是0,代表第一块声卡。手机上通常都只有一块声卡。 -
3.device index
设备的id,代表这个设备是声卡上的第几个设备。设备的ID只和驱动中配置的DAI link的次序有关。如果驱动没有改变,那么这些ID就是固定的。 -
4.capture/playback
只有PCM设备才有这部分,只有c和p两种。c代表capture,说明这是一个提供录音的设备,p代表palyback,说明这是一个提供播放的设备。
系统会在/proc/asound/pcm文件中列出所有的音频设备的信息,可以用cat /proc/asound/pcm
查看:
xxxx:/ $ cat /proc/asound/pcm
00-00: MultiMedia1_PLayback ak7739-aif4-0 : : playback 1
00-01: MultiMedia1_Capture ak7739-aif3-1 : : capture 1
00-02: Voice_MD1_PLayback mt-soc-codec-voicemd1-dai-2 : : playback 1 : capture 1
00-03: TDM_PLayback mt-soc-hdmi-dummy-dai-codec-3 : : playback 1 : capture 1
00-04: ULDL_Loopback mt-soc-codec-uldlloopback-dai-4 : : playback 1 : capture 1
00-05: I2S0_PLayback mt-soc-i2s0-dummy-dai-codec-5 : : playback 1
00-06: MRGRX_PLayback mt-soc-mrgrx-dai-codec-6 : : playback 1 : capture 1
00-07: MRGRX_CAPTURE mt-soc-mrgrx-dummy-dai-codec-7 : : playback 1 : capture 1
00-08: I2S0DL1_PLayback mt-soc-codec-I2s0tx-dai-8 : : playback 1
00-09: Deep_Buffer_PLayback mt-soc-codec-deepbuffer-tx-dai-9 : : playback 1
00-10: DL1_AWB_Record mt-soc-codec-dl1awb-dai-10 : : capture 1
00-11: Voice_MD1_BT_Playback mt-soc-codec-voicemd1-bt-dai-11 : : playback 1
00-12: VOIP_Call_BT_Playback mt-soc-codec-voipcall-btout-dai-12 : : playback 1
00-13: VOIP_Call_BT_Capture mt-soc-codec-voipcall-btin-dai-13 : : capture 1
00-14: TDM_Debug_Record mt-soc-tdmrx-dai-codec-14 : : capture 1
00-15: FM_MRGTX_Playback mt-soc-fmmrg2tx-dummy-dai-codec-15 : : playback 1
00-16: MultiMediaData2_Capture mt-soc-codec-rx-dai2-16 : : capture 1
00-17: MultiMediaData3_Capture mt-soc-codec-rx-dai3-17 : : capture 1
00-18: I2S0AWB_Capture ak7739-aif2-18 : : capture 1
00-19: Voice_MD2_PLayback mt-soc-codec-voicemd2-dai-19 : : playback 1 : capture 1
00-20: MultiMedia_Routing mt-soc-dummy-dai-codec-20 : : playback 1 : capture 1
00-21: Voice_MD2_BT_Playback mt-soc-codec-voicemd2-bt-dai-21 : : playback 1
00-22: HP_IMPEDANCE_Playback mt-soc-codec-hp-impedance-dai-22 : : playback 1
00-23: FM_I2S_Playback a2b24xx-hifi-23 : : playback 1 : capture 1
00-24: FM_I2S_Capture mt-soc-fm-i2s-dummy-dai-codec-24 : : capture 1
00-25: MultiMedia2_PLayback mt-soc-codec-tx-dai2-25 : : playback 1
00-26: MultiMedia3_PLayback mt-soc-codec-offload-dai-26 : : playback 1
00-27: BTCVSD_Capture snd-soc-dummy-dai-27 : : playback 1 : capture 1
00-28: BTCVSD_Playback snd-soc-dummy-dai-28 : : playback 1 : capture 1
00-29: ANC_Record mt-soc-dummy-dai-codec-29 : : capture 1
00-30: Voice_USB_PLayback mt-soc-codec-voiceusb-dai-30 : : playback 1 : capture 1
00-31: Voice_USB_EchoRef mt-soc-codec-voiceusb-echoref-dai-31 : : playback 1
00-32: I2S5DL1_PLayback ak7739-aif1-32 : : playback 1
00-33: Headphone_PLayback snd-soc-dummy-dai-33 : : playback 1 : capture 1
00-34: Speaker_PLayback snd-soc-dummy-dai-34 : : playback 1 : capture 1
00-35: I2S2ADC2_Capture snd-soc-dummy-dai-35 : : capture 1
以上面的左侧00-01为例来说明下:前面2位数字指的card index:00,后面2位是device index:01。
---
转载自:https://blog.csdn.net/luyao3038/article/details/121859072
---