On Tue, 2006-03-28 at 16:06 +0200, Takashi Iwai wrote: > A relatively easy workaround is to create two PCM instances, each of > which is dedicated for only a single direction. Then you can define > appropriate configuration in alsa-lib to choose the right PCM number. > The drawbacks are about the kernel OSS emulator, as usual. Ok I guess that would work. But my current workaround with just defining both directions and refusing access to those that don't work seems to do fine too. > Alternatively, we can create a new function, > e.g. snd_pcm_register_stream(), for doing what snd_pcm_dev_register() > does for a single stream. It's an exception only for PCM which may > have multiple device files. Yes, that'd be good to have, indeed it would essentially be a code move and the old code would call the new function. > I have a rough design of new PCM middle layer in my head to reduce > snd_pcm struct, and it would work fine in your case. Nevertheless, > it's still a vaporware :) Heh :) Make sure to include some compressed content stuff, it could just be a different format or something... If you post a braindump I'll take a look and comment on it :) johannes