SWF file seek information
Is it possible to get and set seek position of a swf file (either in ActionScript 2/3 or ActiveX API of Flash Player) ?
I tried to use frame number at first (to determine which part of the movie is being played) however sometimes whole animation has 2 frames and it does not help.
Any i开发者_如何学Godeas? Thanks.
if your loaded SWF contains all animation on the stage timeline ( i mean the top level ) then the progress you are seeking is:
var progress:Number = swf.currentFrame / swf.totalFrames;
if you want to set seek:
swf.gotoAndPlay ( progress * swf.totalFrames )
Also it can be that the all animation is not on the top level, but in the movieClip, which address you know, i mean stage.getChildByName ( 'something ).getChildeByName ('something )...
but if you have an swf where are multiple movieclips, and they are playing independantly, then nothing i can help....
Not without coding something in to the SWF as far as I know. Because animations in Flash can be in embedded MovieClips, or entirely scripted in a single frame, there is no easy way to detect the total playing time or how far an animation has progressed. Any get/seek functionality, or even a progress broadcast, would have to be scripted in the SWF and accessed through ExternalInterface.
Please be more specific about your problem. If your swf file is only 2 frames, then what is it that you are trying to seek through? Does your swf load a video, for example, and this is what you are trying to seek through? (In which case you can get properties of a video object's playback position and state).
Without more information, it's hard to provide a clear answer.
精彩评论