Synching
in Macromedia Director
Sept
12, 1999
|
|
Q:
I am a beginner Director user and have just
finished my first Multi Media CD. I tested it on
several different machines to adjust for speed and
other issues. I work on a Macintosh and my partner
works on a PC. It doesn't seem to matter how basic
we make it, by taking out blending and multiple
cast movement, the presentation still plays slow
and out of synch with the narration. I've read
about a couple different things that may help this,
but I am not positive and don't have a lot of time
to experiment. Locking frames and Fast-start
Director 7 projector. Would either of these help
me, or do you have some other suggestions.
Gayle
G.
A:
Director synching can be a real problem, but there
are three primary reasons why you might be having
trouble: limited memory, too much to update, and
transitions.
The
real problem is that, unlike some of the video
technologies which try and skip frames to maintain
synchronization with the audio, Director plays all
of the frames, in order, no matter what. So you
have to set your sequences up so that they will
play reasonably on the slowest configuration that
you specify. This means handling variations in
playback caused by these three types of
problem.
1)
Insufficient memory to load sequence
Director works best if it can preload the
graphics in a sequence that has to be played
rapidly. Otherwise, it will start playing the
sequence, then stop to load graphics from the
disk, then continue on. So if you play the
sequence on a 16MB machine, versus a 64MB
machine, even if the speed of the processor is
the same the performance can be very different.
Just to make matters worse, the Macintosh
Operating System requires that you specify how
much memory the Projector will use. So if your
Projector is set up to only run in 16MB, running
on a machine with more memory won't improve
performance!
Solution:
Pay attention to how much memory is needed to
play the sequence. Possibly you can use Lingo
code to load cast members at specific
appropriate times in the sequence (i.e. a pause
in the action), rather than have Director do it
as it thinks it needs to.
2)
Too much to update
Even though you can set Director to playback at
any frame rate, as you've already found that
doesn't mean that it does. This means that you
have to set the frame rate on the slowest
machine you are using, and make sure that
you have set a reasonable frame rate. Just
because you set the frame rate to 12 doesn't
mean that's what you are actually getting. If
it's really playing at 10 frames per second then
you will have a problem when you move it to a
faster machine.
Solution:
Run on the slowest machine, and alter the frame
rate and time your presentation until you are
sure that you are seeing an accurate measure of
frame rate.
3)
Transitions
Unfortunately, Directors transitions are
very dependent upon hardware (and screen bit
depth.) They will vary greatly in time and
Director can't do anything about it. So if you
have transitions in your sequence you are asking
for trouble.
Solution:
Avoid Director transitions in tightly synching
segments.
Otherwise: About the only way that you
can synch something like that is to use lingo
code at certain points that checks the time
since the sequence started. You can then set up
pauses that will make faster machines wait at
that frame until the desired time is reached.
This will allow slower machines to "catch up".
It's a pain, but it's about the only way I know
of ensuring any kind of synch
NOTE:
Time is often measured in ticks in Director.
I've found that ticks aren't consistent between
Macs and PCs (just another little twist to worry
about.)
It's
doubtful that the fast start option will help you
much. It doesn't manage the loading of the rest of
sequence. The frame locking function might help,
but you have to do it on the slowest machine you
are using.
Got
a question? Send them to "Ask
the Guru"
|