> have all your realtime code running in the same thread as you gui

How do you do this?  I thought the ruby thread with fltk had to be sitting
at the Fltk::run call.  How can you run any other code in that thread?

-----Original Message-----
From: Lorien Dunn [mailto:loriend / bigpond.com]
Sent: Friday, November 30, 2001 3:45 PM
To: ruby-talk ML
Subject: [ruby-talk:27143] Re: GridFlow/Video4jmax in Ruby


On Fri, 30 Nov 2001 23:17, you wrote:
> I've written software called GridFlow (formerly Video4jmax), which is a
> library for video processing among other things.
>
> Now the latest version can compile without the jMax software it was
> intended as a plugin for. I wondered whether anyone would be interested in
> teaming up with me to make it available for Ruby scripting.
>

	IMHO Ruby is a far better platform for doing this kind of stuff than JMax.
I
find JMax very frustrating for complex projects whereas ruby is a joy.
Porting JMAX objects to ruby shouldn't be a big deal, as ruby has a much
more
sophisticated object model. The major problems with using ruby for realtime
programming are the lack of posix threading, and all the dynamic allocation
happening everywhere (bad for latency). My solution for the posix threads
issue is using ruby-fltk for the gui- it is fast enough (now able to do
about
50 000 timeouts per second) to have all your realtime code running in the
same thread as you gui. And my software doesn't cause a high enough system
load for latency to be a problem.
	I'm afraid I don't really have time to help write your bindings, however I
can provide some advice when needed.
	I've been developing a system for creating midi-based realtime musical
interactive systems ('hyperinstruments') with ruby. It works well, but I
want
to get more done before a release. However it will make it much easier to do
realtime midi-controlled video transformations and synthesis.

Lorien Dunn