Re: Using dmix/dsnoop/dshare to access individual channels

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Wed, 12 Dec 2007 16:04:37 -0700,
Steve Strobel wrote:
> 
> I am using a 4-input, 8-output codec (AD1938) in an application similar to a live sound mixing 
> board, where a combination of the input signals get mixed for each output.  I can mix four 
> inputs to four outputs with a command like:
> 
>         arecord --file-type raw --channels=4 --format=S32_LE --rate=16000 \
>          | crosspoint \
>          | aplay  --file-type raw --channels=4 --format=S32_LE --rate=16000
> 
> where crosspoint is a simple program that reads from stdin, does some mixing, and outputs 
> to stdout.
> 
> My next step is to play and record wave files from the various channels, while the crosspoint 
> is running.  For example, I might need to play message1.wav to channel 2 and message2.wav 
> to channel 3 while recording channel 1 to message3.wav.  I am looking for advice about the 
> best way to accomplish that.
> 
> It seems like it should be possible using a combination of dmix, snoop, and dshare, as follows:
>   - Use dsnoop to split the 4-channel input to the crosspoint and another virtual sound input, call it "A".
>   - Use dshare to split "A" into four mono sources.  Then can use arecord normally to capture wave files.
>   - Use dmix and possibly dshare to similarly let the crosspoint continue to use the multi-channel 
>     output while also providing a mono sound device for each channel that I can use with aplay.
> 
> Am I on the right track, or would I be better off adding functionality to the crosspoint application 
> to read and write wave files?  Thanks for any suggestions.

Unfortunately this won't work.  d* plugins can have only hw type slave
PCM.  So, dshare cannot have dsnoop as its slave.

I recommend you to use simply JACK for such a purpose.  It's exactly
designed for this kind of work.


Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux