All pastes #811307 Raw Edit

Mine

public text v1 · immutable
·published 2007-12-10 20:00 UTC
rendered paste body
import flash.display.Sprite;
import flash.events.NetStatusEvent;
import flash.events.SecurityErrorEvent;
import flash.events.AsyncErrorEvent;
import flash.events.IOErrorEvent;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.events.Event;


class NetConnectionExample extends Sprite {
    private static var videoURL:String = "test.flv";
    private var connection:NetConnection;
    private var stream:NetStream;



    public function NCExample() {
        NetConnection.defaultObjectEncoding = flash.net.ObjectEncoding.AMF0;
        connection = new NetConnection();
        connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
        connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        connection.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
        connection.addEventListener(IOErrorEvent.IO_ERROR, iOErrorHandler);
        trace("Before Connect.");
        connection.connect("rtmp://cp19552.edgefcs.net/ondemand");
        trace("After Connect.");

    }


    private function netStatusHandler(event:NetStatusEvent):Void {
        switch (event.info.code) {
            case "NetConnection.Connect.Success":
                trace(event);                
                connectStream();
            default:
                trace(event);
        }
    }

    private function securityErrorHandler(event:SecurityErrorEvent):Void {
            trace("securityErrorHandler: " + event);
        }

    private function asyncErrorHandler(event:AsyncErrorEvent):Void {
            trace(event);
        }

    private function iOErrorHandler(event:IOErrorEvent):Void {
            trace(event);
        }

	function onMetaData( data : Dynamic ) {

		var metas = Reflect.copy(data);

		trace("META "+Std.string(metas));

	}


    private function connectStream():Void {
        var stream:NetStream = new NetStream(connection);
        stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
        stream.client = { onMetaData : onMetaData };
        var video:Video = new Video();
        video.attachNetStream(stream);
        stream.play(videoURL);
        addChild(video);
    }
}    



class StreamPlayer {
    public static function main() {
        var example:NetConnectionExample;
        example = new NetConnectionExample();
        example.NCExample();
    }
}