Dear ALSA,

I'm not really having a great deal of luck getting responses from ALSA
developers here, but I figured I'd try again just for the sake of
documenting the various bugs that I've been running into. I guess most
people have moved to Pulseaudio and that is why ALSA development has
petered out? Which is a bit sad because it seems like ALSA has a lot
of potential.

Anyway I have a setup which combines various cards and usually it
works fine, but sometimes when I restart I find that one or both of
the softvol controls I set up fails to work, in other words I cannot
change the value in 'alsamixer', and when I use 'amixer' to change it
then I get "Invalid command!". Any ideas how I can make the control be
responsive again?

$ amixer -Dmusic controls ...
   $ amixer -Dmusic set Noise '5%-'
   Simple mixer control 'Noise',0
     Capabilities: volume
     Playback channels: Front Left - Front Right
     Capture channels: Front Left - Front Right
     Limits: 0 - 255
     Front Left: 203 [80%]
     Front Right: 203 [80%]
   $ amixer -Dmusic set Music '5%-'
   amixer: Invalid command!

   $ cat .asoundrc
   pcm.noise {
       type softvol
       slave.pcm "plug:multi_mix"
       control {
           name "Noise"
           card 3
   ctl.noise {
       type hw
       card 3
   } {
       type softvol
       slave.pcm "plug:upmix"
       control {
           name "Music"
           card 3
   } {
       type hw
       card 3

I'm attaching other files which define "upmix" and "multi_mix" in my
setup. As I said I think the problem re-occurs randomly when I reboot,
so I'm not sure how relevant these attachments are.

In fact I just rebooted and found the control working. But it would be
nice if I could fix this without rebooting. Also, now with the same
(previously working, just very loud) setup I get an "unknown field
channels" error when I try to play to 'music', while playing to
'noise' works fine... which is strange because "channels" only occurs
in a PCM device used by both 'music' and 'noise'... I'm not sure how
else I can try to narrow this down, without line numbers.

Thank you,


P.S. It would also be nice if softvol controls did not have to be
associated with a physical card, but I guess that is more of a feature
request than a bug...
pcm.mix1 {
    type dmix
    ipc_key 941656
    slave {
        pcm "hw:3"
pcm.mix2 {
    type dmix
    ipc_key 297752
    slave {
        pcm "hw:4"
pcm.multi_mix {
    type multi;
    slaves.a.pcm "mix1"
    slaves.a.channels 2
    slaves.b.pcm "mix2"
    slaves.b.channels 2
    bindings.0.slave a 0
    bindings.1.slave a 1
    bindings.2.slave b 0
    bindings.3.slave b 1
pcm.upmix {
    type route;
    slave.pcm "multi_mix";
    ttable.0.0 1;
    ttable.1.1 1;
    ttable.0.2 1;
    ttable.1.3 1;
       rate 44100
       format S16_LE
       period_time 0
       period_size 2048
       buffer_size 65536
       buffer_time 0
       periods 128
Alsa-user mailing list

Reply via email to