<chrismorgan(a)rcn.com> wrote on Wed, 23-Oct-2002:
Just so people don't think the code has fallen off
of the face of the planet ;-)
Currently I'm working on two things with the wine jack driver ,
one of which needs to be complete before I submit the patch, the
other can wait until some ongoing jack support is complete.
1. The driver currently closes and opens jack connections synchronously
with wodOpen and wodClose. The problem is that jack doesn't actually close
the clients right away, sometimes it can take many seconds for this to occur.
Apparently this is a known jack bug but I'm also wondering if this is a problem
in wines pthread implementation of conditions(there is no support for them right now).
Either way I've implemented a workaround that basically consists of opening jack
connections and marking them as in-use or available as apps open or close audio devices.
This behavior can be enabled/disabled via a define in the driver. This isn't
complete
yet but it should be soon and would prevent the lockups and delays that currently
make things a pain.
If you do a jack_deactivate() just before a jack_close(), it
pretty much eliminates the delay you're seeing. Jack should
probably do this itself in the implementation of jack_close()....
jlc