On Tue, May 19, 2009 at 04:23:30PM +0200, Stéphane Letz wrote:
A picture to try summary what I understand about we
would like :
- "jackcontrol" is an *always" running
deamon that defined an entry IPC
point. jackcontrol get requests from control applications. "jackcontrol"
can start a seprated server called "jackserver (using a fork+exec) way.
"jackcontrol" is a *unique* place where setting are handled.
- "jackd" is a recoded control application that parse it's command line,
and use the control IPC to speak to "jackcontrol" (then just quits).
jackcontrol then start the "jackserver" whith the appropriate paramaters.
You don't need this jackd. If all the IPC is in libjack, an
autostart request can be passed directly to jackcontrol without
creating a transient process.
1. Client uses jack_client_open() with autostart.
2. Libjack doesn't find the server
3. Libjack sends 'start server' to jackcontrol
4. jackcontrol starts the server
5. jackcontrol notifies libjack
6. The jack_client_open() call proceeds.
Between 3 and 5 the thread doing the original call
(i.e. the client's thread) just waits within libjack
for the ok/fail message from jackcontrol.
Ciao,
--
FA
Io lo dico sempre: l'Italia è troppo stretta e lunga.