On Thu, Jul 20, 2006 at 09:51:05 -0700, Thomas Vecchione wrote: > > > >??? Non realtime style? How can you have a gui written in a real time > >style? Doesn't that kind of break the basic rules of realtime? > > Well that is my question, sorry I should have clarified I am just now > getting into realtime programming so this might be a really stupid > question anyways. If you dont have the GUI thread(s) running at a high > priority, would that affect the overall response of the program? > Primarily I am looking at for triggering sound effects samples(Of > varying size) for live performance, thus I would need to make sure > response to the gui is also quick and that latency is not added in from > the time of hitting a "go" on screen.
The extent of that kind of latency is not quite so critical as processing latency. What is important however is that the latency is constant, jitter is quite obvious. Humans are able to correct for reasonably high constant latency between actions and the sound happening. MIDI latency is typically 1ms or so, and that's generally not a issue. Getting lower than that in a UI + OSC connection is no problem. In any case, it's not a good idea to run GUI theads at high priority as they often have to do actions which require a significant ammount of wall-clock time. If your thinking of using a UDPish protocol, please use OSC. The packet format is a bit of a pig, but there are plenty of libraries that make it easy (eg. http://liblo.sourceforge.net/) it means other peoples software can interoperate with yours. It will also save you a lot of time in debugging annoying network I/O issues and platform dependencies. - Steve