[alsa-devel] How to support software mixing on QUALCOMM 72XX without mmap?
Hello,guys. I'm porting ASLA1.0.23 to qualcomm 72xx base on ARM11. The first instance,"aplay test.wav", works now, but the second instance should fail with "device busy" error message. I have tried plug dmix and dshare "aply -D plug:mycard test.wav", but met a fail again for the soc chip doesn't support mmap. Of course,pcm_mycard is defined in /etc/asound.conf. In my pc ,both above cmds work well .
Though,the document shows that: NOTE: For ALSA 1.0.9rc2 and higher you don't need to setup dmix for analogue output. Dmix is enabled by default for soundcards which don't support hardware mixing. You still need to set it up for digital outputs. My questions are: 1)Is software mixing implemented in ALSA Driver,or in ALSA LIB? 2)What could I do to make the software mixing work? Is there any special configure which need to adjust?
And when testing on pc whth HD audio, I noticed that A)when aplay instances runs WITHOUT dmix, the result of"cat /etc/one_of_my_aplay_pid/maps" should like: ... b331d000-b731e000 rw-s 00000000 00:15 862346 /dev/shm/pulse-shm-2882420837 ... B)when aplay instances runs WITH dmix,the result is: ... b7511000-b7519000 rw-s 00000000 00:0f 4560 /dev/snd/pcmC0D0p b7519000-b751a000 rw-s 81000000 00:0f 4560 /dev/snd/pcmC0D0p b751a000-b751b000 r--s 80000000 00:0f 4560 /dev/snd/pcmC0D0p ... So,the third question: 3) From A) and B),can I make a result that the mmap feacture is not necessary for the buildin software mixing ?
Expect your help,please
berg
participants (1)
-
Berg.Tian