topical media & game development

talk show tell print

student-mashup-youtube-components-FLVConstructor.mx

student-mashup-youtube-components-FLVConstructor.mx [swf] flex


  <?xml version="1.0" encoding="utf-8"?>
  <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" 
          creationComplete="onAppCreationComplete ()"
  >
          <mx:Script>
                  <![CDATA[
                          import flash.net.*;
                          import flash.events.*;
                          import flash.display.*;
                          private var loader:Loader;
                          private var abortId:uint;
                          
                          [Bindable] public var inputURL:String;
                          [Bindable] public var resultURL:String;
                          
                          
                          private function onAppCreationComplete ():void
                          {
                                  loader = new Loader ();
                          }
                          public function startLoading ():void
                          {
                                  loader = new Loader ();
                                  var req:URLRequest = new URLRequest (inputURL);
                                  loader.contentLoaderInfo.addEventListener(Event.INIT, handlerLoaderInit);
                                  loader.load(req);
                                  //logMessage ("Loading YouTube URL..");
                          }
                          private function handlerLoaderInit (event:Event):void
                          {
                                  //logMessage ("Loaded, processing: " + loader.contentLoaderInfo.url);
                                  var urlVars:URLVariables = new URLVariables ();
                                  urlVars.decode (loader.contentLoaderInfo.url.split("?")[1]);
                                  //logMessage ("Processed:-");
                                  //logMessage ("\t\t video_id:" + urlVars.video_id);
                                  //logMessage ("\t\t t param:" + urlVars.t);
                                  //logMessage ("\t\t thumbnail-url:" + urlVars.iurl);
                                  var flvURL:String = constructFLVURL (urlVars.video_id, urlVars.t);
                                  //logMessage ("YouTube FLV URL: " + flvURL);
                                  resultURL=flvURL;
                                  //playVideo (flvURL);
                                  //logMessage ("Started Playing Video...");
                                  loader.unload(); 
                          }
                          private function constructFLVURL (video_id:String, t:String):String
                          {
                                  var str:String = "http://www.youtube.com/get_video.php?";
                                  str += "video_id=" + video_id;
                                  str += "&t=" + t;
                                  return str;
                          }
  /*
                          private function logMessage (message:String):void
                          {
                                  outputText.text += message + "\n";
                                  trace (message);
                          }
  */
          
                  ]]>
          </mx:Script>
  <!--
                  <mx:VBox height="100%" width="100%">
                          <mx:Label text="Output:-"/>
                          <mx:TextArea id="outputText" width="100%" height="100%"/>
                  </mx:VBox> -->
  
  </mx:VBox>
  
  


(C) Æliens 04/09/2009

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.