Solved

GotoURL at end of FLV embedded in SWF

Posted on 2009-05-18
9
884 Views
Last Modified: 2012-05-07
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
0
Comment
Question by:stonerome
  • 3
  • 3
  • 2
  • +1
9 Comments
 
LVL 16

Expert Comment

by:s8web
ID: 24413265
you will have to create an event cue point at the end of your flv.

 (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:Object):Void {
      getURL("yoururlhere.com");
      trace("endcue: " + eventObject.info.name);
      trace("endcue: " + eventObject.info.type);
}
yourmovienamehere.addEventListener("cuePoint", listenerObject);
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24414737

here is a solution for AS 3.0:

http://www.experts-exchange.com/Software/Photos_Graphics/Web_Graphics/Macromedia_Flash/Q_24322811.html


basically, you are looking for the onStatus event handler to return "NetStream.Buffer.Full"...  


rp / ZA
0
 

Author Comment

by:stonerome
ID: 24415803
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:Object):Void {
      getURL("yoururlhere.com");
      trace("endcue: " + eventObject.info.name);
      trace("endcue: " + eventObject.info.type);
}
yourmovienamehere.addEventListener("cuePoint", listenerObject);
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:stonerome
ID: 24415862
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);

Open in new window

0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24416019


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");
   }
}

Open in new window

0
 
LVL 16

Accepted Solution

by:
s8web earned 500 total points
ID: 24416028
My bad,

intro.swf.addEventListener("cuePoint", listenerObject); should be

nameofyourflv.addEventListener("cuePoint", listenerObject);
0
 

Author Closing Comment

by:stonerome
ID: 31582639
Thanks that worked - to the other expert that offered a solution, thanks. But I should have told you I wasn't looking for AS3
0
 
LVL 22

Expert Comment

by:rascalpants
ID: 24416453

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
0
 

Expert Comment

by:wendArnold
ID: 25071466
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?
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I have been doing hardcore actionscripting for some time; and needless to say I have faced a lot of problems in just understanding others' code rather than understanding what the code executes. A programmer's life can become hell when there are a lo…
I have found that much of my time doing support ends up being a constant repetition of the same steps to different people.  Early on I stated using web pages with Frequently Asked Questions (FAQs) to alleviate most of the burden.  Sometimes this jus…
The goal of the tutorial is to teach the user how to live broadcast using Flash Media Live Encoder and connecting it to YouTube to broadcast. Log into your Youtube account, choose live stream settings, start live stream from Flash Media Live Enc…
The goal of the tutorial is to teach the user how to select the video input device. Make sure you have an input device that in connected and work and recognized by Adobe Flash Media Live Encoder and select it in the “video input” menu.

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question