If the player has a means to communicate to javascript outside of itself you can set the action off once playback starts (assuming they have the state change trigger an event for javascript to use).
I am probably not explaining that well, but for an example...
The
JW FLV player from longtail has the ability to add "callback" functions for certain state changes within the flash player. So you can trigger events on track change, volume change, track scan, track buffer, play, pause, playlist change, etc.
The way to do that with the JW FLV player is something like this:
Code:
jwplayer('my_player').setup({
flashplayer: '/path/to/player.swf',
file: '/path/to/playlist.xml,
height: 300,
width: 400,
skin: '/path/to/player/skin.xml',
volume: 50,
events: {
onReady: function(){
//this javascript will be executed when the player itself is finished loading...
do_something();
},
onPlay: function(){
//this javascript will be executed when a track starts to play...
do_another_thing();
},
onComplete: function(){
//this javascript will be executed when a the player reaches the end of any single track...
do_one_more_thing();
}
}
});
The "onReady" or "on<whatever>" items are based on a list of available triggers built into the player (you can check the documentation if you need it) and the code afterward is the script that will be executed when the player's event trigger is fired.
If the player you are using has similar functionality then it is as simple as adding a callback function in the player's initialization so that you can trigger the image effect once buffering ends and playback begins. If not, then you might consider switching to the JW FLV player.
But in any case, this is a javascript question and not an HTML/CSS question. Please contact a moderator to have your thread moved to the appropriate section. (Do not cross-post!)