0
我只想做一個簡單的Flash播放器,可以使用Flash的ActionScript播放RTMP流...RTMP Flash客戶端使用ActionScript - >緩衝legnth爲零
這裏是我的代碼:
import flash.display.Sprite;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.media.Video;
import flash.events.*;
var nc : NetConnection;
var ns : NetStream;
var vid : Video;
var monitorBufferLengthEverySecond:uint;
var counter:uint;
vid=new Video();
vid.width=640;
vid.height=480;
trace("Create ... NetConnection");
nc = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, netStatus);
nc.addEventListener(SecurityErrorEvent.SECURITY_ERROR, netSecurityError);
nc.connect("rtmp://x.x.x.x/live");
function netStatus(event:NetStatusEvent):void
{
trace("Net Satus: "+ event.info.code);
if(event.info.code == "NetConnection.Connect.Success")
{
trace("Net Satus is OK");
trace("Creating NetStream");
ns = new NetStream(nc);
var infoClient:Object = new Object();
infoClient.onMetaData = function oMD():void {};
infoClient.onCuePoint = function oCP():void {};
ns.client = infoClient;
ns.play("IPCamera.stream");
vid.attachNetStream(ns);
monitorBufferLengthEverySecond = setInterval(monPlayback, 1000);
}
}
function netSecurityError(event:SecurityErrorEvent):void
{
trace("Security error: " + event);
}
function monPlayback():void
{
// Print current buffer length
trace((++counter)+ " Buffer length: " + ns.bufferLength);
}
連接成功 * 但 * 當我嘗試檢查緩衝區我總是得到「0」長......我不能看到RTMP流...
爲什麼會發生這種情況?我做錯了什麼?有任何想法嗎?