我在Adobe Media Server的main.asc
中有以下代码(我认为最新版本为5.0.10):
application.onPublish = function (clientObj, streamObj) {
for (var i = 0; i < application.clients.length; i++){
application.clients[i].call("streamConnected");
}
}
这个代码在我的ActionScript(3.0)文件中,连接到我的flash文件:
nc = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, onConnectionStatus);
nc.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
nc.client = { onBWDone: function():void{}, streamConnected: function():void{} };
nc.connect(videoURL);
...
public function streamConnected(...rest):void {
trace("Stream Connected");
}
我不太清楚我的代码意味着什么 - 大部分来自互联网的各个部分,所以任何帮助都会非常感激。
答案 0 :(得分:1)
使用当前代码,唯一要执行的函数是在nc.client
对象中定义的空函数,因为streamConnected()
函数未附加到nc.client
&# 39; s streamConnected
属性。
因此,要获取"Stream Connected"
消息,您可以更改此匿名函数,例如:
nc.client = {
onBWDone: function():void{},
streamConnected: function(...rest):void {
trace("Stream Connected");
}
};
或者只是您可以使用现有的streamConnected()
功能:
nc.client = {
onBWDone: function():void{},
streamConnected: streamConnected
};
希望可以提供帮助。