WARNING: Unsanitized content follows. -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi guys, In the last few days I have been reading a lot about how to mix streams into one in order to allow *weak* soundcards to play multiple streams, even though they cant do that in hardware. This seems to be doable with dmix. Also, I have thought about the situation where the capture devices are used up, for this I found the plugin "dsnoop". After thinking a bit about the situation I thought the following would be a great idea (a feature suggestion to alsa): Alsa knows howmany playback and howmany capture devices it has, and it also knows howmany times they can be opened. So, the result are two numbers: The amount of streams that can be played back in hardware, AND The amount of times an application can open a capture stream. So, these are two numbers - and basicly all is fine as long as you dont want to excede them, but if you do, you need to use dmix or dsnoop. Why not use dmix and dsnoop automaticly when necessary ? Wouldnt it be possible to have every application play through something like a "smartdmix", that would just pass on the sound-streams to real-world devices, as long as there are still playback devices that can handle annother stream...once the user opens a playback stream while there is no *free*slot* for it, the "smartdmix" would start mixing this stream with one of the already existing streams, making it possible to play back although the hardware wouldnt have supported the extra stream. Same idea with the capture part...as long as there are still capture devices a utility called "smartdsnoop" would just pass on the capture stream directly from the existing capture device, and only once the first application is opened that claims to need to capture and for which there is no free capture device, smartdsnoop would split one capture stream into two - and so be able to serve this new application. After all this babble, here is what I expect from the above: - - Near zero overhead as long as the system uses the soundcard in the limits the soundcard provides. - - Support for any amount of playback and capture streams, no matter on what soundcard (provided of course the soundcard has at least one playback and one capture device :D). - - Near zero configuration/tuning work needed to be done by the user, all done by smartdmix and smartdsnoop. - - Low cpu and latency misuse - since the *mixing* or *spliting* capabilities are only activated when needed, and deactivated when not used anymore. Hope to hear your opinions on this, Peter - -- Take what you can use and let the rest go by. -- Ken Kesey -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/tDNJg2ieGvTmHiURAl0XAJ9iEIqiEQAfhGElsAh8ddNtBu9YKQCbB7qF jx5IU70naqNZrMbYtejShFY= =dFm/ -----END PGP SIGNATURE----- ------------------------------------------------------- This SF.Net email sponsored by: ApacheCon 2003, 16-19 November in Las Vegas. Learn firsthand the latest developments in Apache, PHP, Perl, XML, Java, MySQL, WebDAV, and more! http://www.apachecon.com/ _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel