我有標準的NetStream用於AS3視頻連接:ActionScript 3的調用onMetaData視頻持續時間 - 不能存儲值
的代碼:
public class VideoInit extends MovieClip
{
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.events.NetStatusEvent;
public var video:Video;
public var nc:NetConnection;
public var ns:NetStream;
public var meta:Object;
public var _duration; // <----- the variable
public function VideoInit()
{
video = new Video(480,270);
addChild(video);
nc = new NetConnection();
nc.connect(null);
ns = new NetStream(nc);
meta = new Object();
ns.client = meta;
video.attachNetStream(ns);
ns.play("video.f4v");
meta = new Object();
meta.onMetaData = function(meta:Object) // <---- the method
{
_duration = meta.duration
}
ns.client = meta;
}
現在,everyime該調用onMetaData方法執行,可變_duration存儲該值,但在調試器步驟離開該方法後,_duration值將被重新設置爲unindentified。 我試圖用數組來做一個解決方法,通過推送值,但同樣的事情發生,數組重置。有什麼可能是錯的?
編輯:
,一旦調用onMetaData完成存儲時間值自動銷燬的對象。我實施它並不重要。
嘗試使用二傳手的,只有改變它,如果它是一個有效的數字的持續時間。問題我認爲onMetaData被調用,但元對象是無效的。 – danjp