ALSA:如何将不同的音频流同时路由到单个声卡上的不同播放硬件设备?

时间:2016-12-28 05:21:42

标签: alsa libalsa

这里我需要不同的音频流,同时在两个硬件播放设备上(hw:0,0和hw:0,1)。目前我可以单独收听它们但如果我尝试同时播放它们从hw:0,1声音停止并且只播放来自hw:0,0(使用Alsa调试日志说:资源暂时不可用)即使我已经更改我的默认设备为hw:0,1。这些实际上是奴隶pcm dmixed,后来在我的asound.conf中插入pulgin。

当最初创建这些接收器时,alsa会发出未知PCM和未知参数的警告,但音频呈现正常(这就是为什么忽略在论坛上读取的错误)。

所以玩类似的东西 aplay -D默认/tone.wav 和 aplay -D device1 /tone.wav 单独,工作正常,但在一起执行时只播放device1(hw:0,0),而我的默认hw:0,1保持阻止,我可以检查 cat / dev / snd / pcmC0D1p。

有人可以指导一下如何做,我只想用alsa(不是用脉冲)吗?

请找到以下内容:

$ aplay -l <​​/ strong>

**** List of PLAYBACK Hardware Devices ****
card 0: cs42888audio [cs42888-audio], device 0: HiFi cs42888-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: cs42888audio [cs42888-audio], device 1: HiFi-ASRC-FE (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: imxhdmisoc [imx-hdmi-soc], device 0: i.MX HDMI Audio Tx hdmi-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0

$ cat / proc / asound / devices

0: [ 0]   : control
16: [ 0- 0]: digital audio playback
17: [ 0- 1]: digital audio playback
24: [ 0- 0]: digital audio capture
25: [ 0- 1]: digital audio capture
32: [ 1]   : control
33:        : timer
56: [ 1- 0]: digital audio capture
64: [ 2]   : control
80: [ 2- 0]: digital audio playback

其中hw:2,0不可用。

0 个答案:

没有答案