Clemens, thanks very much for your advice.  But it seems that the dshare
plugin can only slave to an actual hardware device:

---
$ aplay -Dcenter /tmp/foo.wav
ALSA lib pcm_dshare.c:578:(snd_pcm_dshare_open) dshare plugin can be only
connected to hw plugin
Segmentation fault
---

Trying another plugin and starting with your example, I can get the route
plugin to route to the proper channels, but of course I lose sharing. :( 
Here is that .asoundrc:

---
pcm.routed_l_r {
        type route
        slave.pcm surround51
        ttable.0.0 1
        ttable.1.1 1
}

pcm.routed_c {
        type route
        slave.pcm surround51
        ttable.0.4 1
}

pcm.l_r {
        type plug
        slave.pcm routed_l_r
}

pcm.center {
        type plug
        slave.pcm routed_c
}
---

Do you see any way to add sharing into this config?

Will the "share" plugin work?  Is aserver deprecated?

Thanks again for your help!
John




Clemens Ladisch said:
> John W. Cocula wrote:
>> Let me clarify: the real issue is *mixing* normal stereo out the L and R
>> channels, while a mono channel is also coming out the center speaker.
>> So,
>> like dmix, but dmix only works with the first 2 channels?  Any solutions
>> short of using JACK?
>>
>> The following fragment works to drive only the center channel, but other
>> ALSA players block.
>>
>> pcm.voice {
>>         type plug
>>         slave {
>>                 pcm "surround51"
>>         }
>>         ttable.0.4 1
>> }
>
> You don't need dmix for this, because you don't want to mix several
> sources to the same channel.  Try something like this (untested):
>
> pcm_slave.slave51 {
>       pcm surround51
>       channels 6
>       rate 48000  # not sure if this is needed
> }
>
> pcm.shared_l_r {
>       type dshare
>       slave.pcm slave51
>       ipc_key 123456
>       bindings {
>               0 0
>               1 1
>       }
> }
>
> pcm.shared_c {
>       type dshare
>       slave.pcm slave51
>       ipc_key 123456
>       bindings {
>               0 4
>       }
> }
>
> pcm.l_r {  # same as shared_l_r, but for other sample rates etc.
>       type plug
>       slave.pcm shared_l_r
> }
>
> pcm.center {
>       type plug
>       slave.pcm shared_c
> }
>
>
> HTH
> Clemens
>
>



-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
Alsa-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-user

Reply via email to