(experimental) automatic sound mixing

Mike Hearn mike at navi.cx
Fri Jan 7 13:26:20 UTC 2005


On Thu, 06 Jan 2005 22:55:59 -0500, Colin Walters wrote:
> I had to patch alsa-lib to let it read a config from a file specified an
> environment variable.

Maybe we could set the environment variable to the IPC key itself
then use something like:

pcm.dmix {
        @args [ SLAVE FORMAT RATE ]
        @args.SLAVE {
                type string
                default "hw:0,0"
        }
        @args.FORMAT {
                type string
                default S16_LE
        }
        @args.RATE {
                type integer
                default 48000
        }
        type dmix
        ipc_key {
		@func getenv
		vars [ ALSA_DMIX_IPC_KEY ]
		default { 12345678 }
        }
        ipc_key_add_uid no
        slave {
                pcm $SLAVE
                format $FORMAT
                rate $RATE
        }
}


pcm.!default {
      type plug
      slave "pcm.dmix"
}

which is a slightly modified version of the default ALSA config file. Then
there'd be no need to generate config files or patch alsalib.

And yes, I know, possibly ALSA should not provide a mini API in its config
file but well that's an argument for upstream :) We have it, might as well
use it ...

thanks -mike




More information about the Fedora-desktop-list mailing list