The .asoundrc I posted split the 4 inputs of the Delta 44 into 2 
recording pairs.

It worked with arecord but it would not work with the app that I wanted 
to use it with :(  I had the same errors that you have reported.

Using jack and the alsa jack plugin...

http://jackaudio.org/faq/routing_alsa.html

...splits the pairs reliably, so I used that instead.

Although I have the app source I do not know enough about alsa or the 
code to troubleshoot this further.

By the way, splitting the 4 outputs into 2 playback pairs with dshare 
was not a problem.

Although jack introduces some additional latency it was acceptable with 
in this case.

zcx

On 28/04/17 08:28, SREEKANTH SREEKUMAR wrote:
> I have M-Audio M-Track Eight, a USB based soundcard that I use to play and 
> record audio files using a python based tool I wrote.
.
.
.
> But, with the above, I figured out that it is not possible to play and record 
> on multiple channels simultaneously.
.
.
.
> "ALSA lib pcm_dsnoop.c:606:(snd_pcm_dsnoop_open) unable to open slave
>
> arecord: main:722: audio open error: Device or resource busy"
>
.
.
.
>
> The user in the first post seems to have solved by adding the following to 
> his .asoundrc:
>
>
> pcm.D44_cslave {
>         type dsnoop
>         ipc_key 223456
>         slave {
>                 pcm             "hw:0,0"
>                 rate            48000
>                 period_time     0               # in microseconds
>                 buffer_size     256             # in bytes
>                 period_size     64              # in bytes
>                 channels        4
>                 format          S32_LE
>         }
>         bindings {
>                 0 0
>                 1 1
>                 2 2
>                 3 3
>         }
> }
>
> pcm.D44_ch12_capture {
>         type            plug
>         ttable.0.0 1
>         ttable.1.1 1
>         slave.pcm       D44_cslave
> }
>
> pcm.D44_ch34_capture {
>         type            plug
>         ttable.0.2 1
>         ttable.1.3 1
>         slave.pcm       D44_cslave
> }
.
.
.
> Now, my questions are :
> 1. What could be the right configuration for me if I want to use the input 
> and output channels exclusively for capture/record and playing respectively? 
> Also, are my `arecord` and `aplay` commands fine?
> 2. If the error shows that dsnoop is indeed busy, then why was it not being 
> shown in the output of `lsof /dev/snd/pcm*`. The error clearly says there is 
> a definite problem with `dsnoop`, does that mean that it is not meant for 
> simultaneous/multi-channel recording? I mean is there a conflict between 
> `dsnoop` and `dshare` or if multiple instances of `dsnoop` is what is causing 
> the problem?


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user

Reply via email to