What platfrom are you on? Director is getting hickups every 2 seconds 
on my Mac Powerbook 500 if Appleshare/ File sharing is on, yielding a 
10 - 200 ms delay in any director code execution. PC works fine. Most 
other Macs seem to work fine too.

I've tried all your mentioned methods and then some, and none will be 
100% tight.

To get _Audio_ timing in a sequenser, Beatnik is best, and you need 
to make it play a midi file - not trig every note from a call in 
director. But if you want to sync gfx to the sound, using meta 
events, then you're in trouble. Anything that happens inside of 
Director is bound to be sensitive for the kind of intermission that 
my PB causes.

Using timeout object is very tight too. If you trig a sound object 
every 100 ms for example, you get inconsistensies of 1 ms on Mac, 6 
ms on PC. (PC doesn't support accuracy below 6 ms (= 1 tick) even if 
you use the Milliseconds.)

Any method including cue points is _not_ recommended. The callbacks 
are _way_ too inexactly timed.


Conclusion: Using a timeout object and sound objects is the easiest 
and the tightest 'Director native' way to do it, if you are not going 
to run it on my Powerbook ;-)

Beatnik will be an awful lot of work to get a clunky result (code- 
and GUI-wise (it's at least a 500 k DL if you're going to build a 
Shockwave)) but excellent Instrument handling and internal timing. 
Gfx timing will be worse than using timeout obj.


-Andreas



>I am building a musical game for kids.  Kids graphically build their 
>own rhythm from different notes and rests and then hit the play 
>button.  I've got it basically working, but the timing seems to be 
>off.  I don't know what is the best way to keep a constant beat. 
>What I need is a way of getting a routine to be called every x 
>milliseconds so I can start a new note or a rest.
>
>So far, I have come up with a few different ways to do this:
>
>1)  Use a timeout object
>2)  Use a sound file (e.g., AIFF) with cue points at constant time intervals
>3)  Use a QuickTIme file with cue points at constant time intervals
>4)  Use a Beatnik file with "meta event" callbacks at constant time intervals
>
>Before heading off and trying these myself, I was wondering if 
>anyone else has done this already and knows the best way to approach 
>this - either one of the above or perhaps another option that I 
>haven't considered
>
>grimmwerks: what would you suggest?  Your "drumulator" is very 
>similar to what I want to do.
>
>Irv
>--
>Lingo / Director / Shockwave development for all occasions.
>
>        (Over two millions lines of Lingo code served!)
>
>[To remove yourself from this list, or to change to digest mode, go to
>http://www.penworks.com/LUJ/lingo-l.cgi  To post messages to the list,
>email [EMAIL PROTECTED]  (Problems, email [EMAIL PROTECTED])
>Lingo-L is for learning and helping with programming Lingo.  Thanks!]


[To remove yourself from this list, or to change to digest mode, go to
http://www.penworks.com/LUJ/lingo-l.cgi  To post messages to the list,
email [EMAIL PROTECTED]  (Problems, email [EMAIL PROTECTED])
Lingo-L is for learning and helping with programming Lingo.  Thanks!]

Reply via email to