A lot of people do not know this about flash...
When you have a strict timeline (you have a 60 second presentation that needs to run precisely 60 seconds...at 30fps that's 1800 frames)...you might notice the movie runs long on the stopwatch. What happens is flash will play EVERY FRAME regardless of any outside variables (processor speed of the client machine, primarily) UNLESS you have a synching event on the timeline to force it to play a precise length. When you have a synching event, flash will drop frames to keep the movie in synch with that synching event.
So...what may be occuring in your case is the sound will always sound normal...but flash is playing EVERY FRAME of the visual movie. Since the client's processor cannot keep up with it (EVEN IF the movie is fully preloaded) the sound will "finish" before the visual movie.
What I would recommend is to put in a new layer in your timeline...then place a short snippet of sound that you alter by modulating the sound to essentially be muted on a keyframe in frame 1. Click on that in the timeline and go to the properties panel and select from the dropdown "Stream."
This should put you in synch. When your movie plays the sound will remain unaltered but the movie will drop frames to keep you in synch.
Good luck!
