topical media & game development
professional-flex-code-16-VideoTextExample.ax
professional-flex-code-16-VideoTextExample.ax
[swf]
flex
package
{
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.events.NetStatusEvent;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.media.Video;
public class @ax-professional-flex-code-16-VideoTextExample extends Sprite
{
private var videoURL:String = "local/assets/flex/barsandtone.flv";
private var videoStatus:TextField;
private var nc:NetConnection;
private var ns:NetStream;
public function @ax-professional-flex-code-16-VideoTextExample() {
if( stage != null ) {
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
}
videoStatus = new TextField();
videoStatus.autoSize = TextFieldAutoSize.LEFT;
videoStatus.text = "Ready to connect!";
videoStatus.y = 260;
addChild( videoStatus );
nc = new NetConnection();
nc.addEventListener( NetStatusEvent.NET_STATUS, netStatusHandler );
nc.connect( null );
}
private function netStatusHandler( event:NetStatusEvent ):void
{
switch (event.info.code) {
case "NetConnection.Connect.Success":
ns = new NetStream( nc );
ns.client = this;
var video:Video = new Video();
video.attachNetStream( ns );
ns.play( videoURL );
addChild(video);
videoStatus.text = "Connection Success";
break;
default:
videoStatus.text = event.info.code;
break;
}
}
public function onMetaData( info:Object ):void
{
;//
}
}
}
(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.