我在使用Flash CS6创建的swf中使用以下代码:
%mclosure
播放Icecast音频流。 我怎么能自动重新连接(如果互联网连接丢失等)?
非常感谢你的帮助!
此致。
答案 0 :(得分:0)
查看是否有任何NetStreamInfo
选项可以帮助您检测连接丢弃:
尝试使用一个计时器,每个两个秒触发响应函数检查是否有更改(即:传入数据量已变为零)。
也许请与ns.info.dataBytesPerSecond
联系,但要探索该链接信息类中其他方法的说明。使用If
语句检查输入是否为零或Else
(如果现在为零)运行重新连接的函数(通常为ns.stop();
& ns.play( url );
等。)
答案 1 :(得分:0)
非常感谢你的帮助。我找到了一个有效的解决方案,我想分享一下:
curl -X POST -H 'Content-type:application/json' --data-binary '{
"add-field":{
"name":"sell-by",
"type":"tdate",
"stored":true }
}' http://localhost:8983/solr/gettingstarted/schema
我使用以下代码创建了一个新场景“场景2”:
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
var customClient:Object = new Object();
ns.client = customClient;
ns.play("http://xxxxxxxxx/stream?type=.flv");
ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
function netStatusHandler(event:NetStatusEvent):void
{
switch (event.info.code)
{
case 'NetStream.Play.Stop' :
MovieClip(this.root).gotoAndPlay(1, "Scene 2");
break;
case "NetStream.Play.StreamNotFound" :
MovieClip(this.root).gotoAndPlay(1, "Scene 2");
break;
}
}
现在,如果流(互联网或服务器连接)丢失,播放器将自动重新连接到流。
工作得很好!
非常感谢你的想法!
此致