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