April 17, 2001 - Stop Sync Flash
April 17, 2001 Stop Sync Flash Tips: April 2001
Yehuda Shiran, Ph.D.
|
With stop sync, Flash stops all instances of the given frame. This is a limitation of Flash, but it stems from the absence of instance ID. With event sync, you re-trigger a new instance every time you mouse over the link. Invoking the stop sync command will stop all instances.
As a reminder, in order to sonify your page, follow this recipe:
flashsound.js
in the HEAD
section.
HEAD
section.
BODY
section.
onmouseover
event handler to the TGotoAndPlay()
method.
The following three links demonstrate event sync tracks. Mouse over the left one to listen to a scale sound. Mouse over it again and again to re-trigger as many instances as you want. Do the same for the middle link. Since it's a looping sound, you'll get an amplification of the sound as you mouse more times over the link. Now use the right link to stop the sound:
Play a Scale Start a Looping Sound Stop a Looping Sound
Notice that the stop sync can stop only the middle link, because they are from the same frame,"/loop-event"
. Try stopping the left sound. It does not work because the labels are different.
Here is the source code:
<HTML>
<HEAD>
<SCRIPT SRC="flashsound.js"></SCRIPT>
<SCRIPT>
var mySoundObj1 = new FlashSound();
var mySoundObj2 = new FlashSound();
</SCRIPT>
</HEAD>
<BODY>
<A HREF="javascript://" onmouseover="mySoundObj1.TGotoAndPlay('/scale-event','start')">Play a Scale</A>
<A HREF="javascript://" onmouseover="mySoundObj2.TGotoAndPlay('/loop-event','start')">Start a Looping Sound</A>
<A HREF="javascript://" onmouseover="mySoundObj2.TGotoAndPlay('/loop-event','stop')">Stop a Looping Sound</A>
<SCRIPT>
mySoundObj1.embedSWF("scale.swf");
mySoundObj2.embedSWF("loop.swf");
</SCRIPT>
</BODY>
</HTML>
Here are links you can use to download flashsound.js
, loop.swf
, and scale.swf
: