From: Aaron McDaid (hoss at domain technologist.com)
Date: Mon 23 Apr 2001 - 00:10:00 IST
It's about time I laid out my theory in full.
/dev/dsp,/dev/midi,/dev/mixer are left alone. One program (hereafter
referred to as the daemon) writes to these.
The daemon listens to multiple fifos all over the place and to certain
TCP ports and mixes all the input together.
There could be a certain program whos job it is to find/create
a free fifo to write to. It could also create a mixer device. eg:
hoss at domain cookin~$ mksndsocket
--dsp=/dev/dsp13
--mixer=/dev/mixer9
hoss at domain cookin~$ xmms `mksndcocket` &
hoss at domain cookin~$ mpg123 `mksndsocket` &
mksndcocket could even look at the DISPLAY variable and inform
the local daemon that any write to those fifos are to be send
over the network to a remote daemon.
If a certain application wants it could talk direct to the remote
daemon if it knows the protocol. In fact, if a protocol is standardized
whereby mixing and the raw data are part of one stream then it could
still go through a different kind of fifo.
Aaron
PS: mpg123 -s outputs to standard out. redirect this to a file and
the output can be cat(1)ed to /dev/dsp at will. This worked ok
with my old soundcard by my new one doesn't like the bit rates. I
have to pass extra parameters to mpg123 to get it going right.
This archive was generated by hypermail 2.1.6 : Thu 06 Feb 2003 - 13:09:59 GMT