On Thu, Feb 17, 2005 at 08:40:01AM -0500, Paul Davis wrote: > you can have absolute minimal latency, but that requires > locking the graph against use when it is reordered.
AFAICS, that is not the real reason. If it were, the simple solution would be to let the engine continue using a copy of the current graph while the new one is being computed and the required resources created. Probably if look you into it deep enough you'll find that the necessity to stop processing while new clients are created or when the port connection change can be traced back to the combined effect of: 1. only having one JACK-controlled thread in each client, 2. the synchronous nature of the API calls that modify the graph. -- FA