Here's a code snippet to stream a FLV from a random source without a RTMP streaming server like Red 5/ FMS.
//You'll have to add the necessary imports private var _video:Video; //Our video object _video = new Video(640, 480); private var _netConnection:NetConnection = new NetConnection(); _netConnection.connect(null); //No need of specifying a RTMP server! private var _ns:NetStream = new NetStream(_netConnection); _ns.addEventListener(NetStatusEvent.NET_STATUS, handleNetStatusPlay, false, 0, true); _video.attachNetStream(_ns); //Attach our NetStream to our video object _ns.client = new NetStreamUserClient(_ns); var streamPath:String = "http://www.flvFilesSite.com/myFolder/myTestFLV.flv"; _ns.play(streamPath); //Handle our NetStatusEvent private function handleNetStatusPlay(e:NetStatusEvent):void { if (e.info.level == "error") { if (e.info.code == "NetStream.Play.StreamNotFound") { trace("FLV file does not exist!"); } } }
Code for NetStreamUserClient
package { import flash.net.NetStream; /** * ... * @author Rajesh Peter Douglas D'Monte */ public class NetStreamUserClient { public function NetStreamUserClient() { } public function onCuePoint(infoObject:Object):void { trace("onCuePoint" + infoObject); } public function onMetaData(infoObject:Object):void { trace("onMetaData " + infoObject); } public function onPlayStatus(infoObject:Object):void { trace("onPlayStatus " + infoObject); //Debug.print_r(infoObject); if (infoObject.code == "NetStream.Play.Complete") { //FLV finished playing } } } }