Player messages

J. Landman Gay jacque at hyperactivesw.com
Thu Dec 4 19:41:38 EST 2003


I am playing a series of QT sound-only movies by changing the filename 
of a player. A playstopped handler is supposed to trigger when the 
player is done and then loads the next sound file.

I am not getting a playstopped message if the stack containing the 
player is frontmost. As soon as I click on the message box or the script 
editor or otherwise suspend the stack, the playstopped is immediately 
sent and the next sound loads and plays. I have checked to make sure 
that messages are not locked.

I tried running the stack in Revolution and it works fine in the IDE; I 
do get a playstopped message there. However if I suspend the IDE or 
build a standalone, I no longer get the playstopped message and it acts 
just as it does in MC. Can anyone think of anything that would cause this?

Below is a simple script that reproduces the problem on my machine. If 
someone can verify it I will post a bug report. I'm testing in OS X but 
I would like to know if the same thing happens in Windows. You'll need a 
stack with a player set to an audio file; type "playloop" into the 
message box to kick it off. Then try clicking on both the stack and the 
message box as the sound plays. If the message box is frontmost, it 
loops. If the stack is frontmost, it doesn't.

on playLoop
   global gPlay
   if the shiftkey is down then -- stop loop
     put false into gPlay
   else
     put true into gPlay
     start player 1
   end if
end playLoop

on playStopped
   global gPlay
   if gPlay = true then playLoop
end playStopped

I also tried setting a callback message at the duration of the player, 
but that doesn't get called either. It is like the player is in limbo 
when the sounds ends if the stack is frontmost. Am I overlooking something?

-- 
Jacqueline Landman Gay         |     jacque at hyperactivesw.com
HyperActive Software           |     http://www.hyperactivesw.com




More information about the metacard mailing list