stonerome
asked on
GotoURL at end of FLV embedded in SWF
Hi all,
I have a simple one frame swf that is playing back an FLV file, via the built-in Flash video player component (Flash CS3). That swf is then embedded into a HTML page.
When the FLV is finished playing, I want to load a new HTML page.
I've seen post to "add the open URL tag on the last frame" but this obviously doesn't work well, because the embedded FLV will never finish exactly on the same frame.
Also, I believe I may have to make some changes to the HTML code to get around newer Flash security features.
THanks - Cory
I have a simple one frame swf that is playing back an FLV file, via the built-in Flash video player component (Flash CS3). That swf is then embedded into a HTML page.
When the FLV is finished playing, I want to load a new HTML page.
I've seen post to "add the open URL tag on the last frame" but this obviously doesn't work well, because the embedded FLV will never finish exactly on the same frame.
Also, I believe I may have to make some changes to the HTML code to get around newer Flash security features.
THanks - Cory
here is a solution for AS 3.0:
http://www.experts-exchang
basically, you are looking for the onStatus event handler to return "NetStream.Buffer.Full"...
rp / ZA
ASKER
I've added a cue point to the flv , named
end_cue
I'm not sure what I need to modify in your code (aside from the getURL).
My movie name...is the the name of the swf that will have this action in it? If so, that name of that is intro.swf.
Thanks for the help -
var listenerObject:Object = new Object();
listenerObject.cuePoint = function(eventObject:Objec t):Void {
getURL("yoururlhere.com");
trace("endcue: " + eventObject.info.name);
trace("endcue: " + eventObject.info.type);
}
yourmovienamehere.addEvent Listener(" cuePoint", listenerObject);
end_cue
I'm not sure what I need to modify in your code (aside from the getURL).
My movie name...is the the name of the swf that will have this action in it? If so, that name of that is intro.swf.
Thanks for the help -
var listenerObject:Object = new Object();
listenerObject.cuePoint = function(eventObject:Objec
getURL("yoururlhere.com");
trace("endcue: " + eventObject.info.name);
trace("endcue: " + eventObject.info.type);
}
yourmovienamehere.addEvent
ASKER
I put this in, and it's not working, but I'm guessing I'm not doing something right:
var listenerObject:Object = new Object();
listenerObject.cuePoint = function(eventObject:Object):Void {
getURL("http://www.google.com");
trace("end_cue" + eventObject.info.name);
trace("end_cue" + eventObject.info.type);
}
intro.swf.addEventListener("cuePoint", listenerObject);
just use this instead...
rp / ZA
import mx.utils.Delegate;
// stream_ns is the instance name of your NetStream
stream_ns.onStatus = Delegate.create(this, checkStatus);
function checkStatus( info:Object ):Void
{
if (info.code == "NetStream.Buffer.Empty")
{
getURL("http://www.google.com");
}
}
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks that worked - to the other expert that offered a solution, thanks. But I should have told you I wasn't looking for AS3
the last comment posted was in AS 2.0... hence the use of the Delegate Class...
which in AS 3.0 is no longer needed...
glad you got somethin workin for ya.
rp / Zone Advisor
I have a similar issue and am a bit of a novice when it comes to flash and flash video. I have the flv files with cue points at the end of them. I want to add action script to these in flash so that it will redirect to a URL as soon as the video is complete. I am confused about where to add the actionscript. Do I add it to the video itself (this is not working) or to the next key frame. I continue to get errors with the code above saying that it has to bee applied to onClipEvent handler. What am I doing wrong?
(http://livedocs.adobe.com/flash/9.0/flvencoder/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_NoParts&file=FLV_25.html)
Then add actionscript to your swf that listens for that cue point and then does something (in this case, geturl) based on the name of the cuepoint:
var listenerObject:Object = new Object();
listenerObject.cuePoint = function(eventObject:Objec
getURL("yoururlhere.com");
trace("endcue: " + eventObject.info.name);
trace("endcue: " + eventObject.info.type);
}
yourmovienamehere.addEvent