【发布时间】:2010-12-16 13:07:40
【问题描述】:
我没有自己的 Flash 媒体服务器。但是,我可以使用 Highwinds CDN。他们在 CDN 上运行 FMS。当您安排现场活动时,Highwinds 会为您提供两个 URL:“服务器”和“流名称”。 例子:
服务器: rtmp://fli003.am4.hwcdn.net/XXXX/definst
流名称: fli/00000-streamname?encoderuser=XXX&encoderpassword=YYY
这两个 URL 可以粘贴到 Flash Media Live Encoder 应用程序中以流式传输实时事件。 Flash Media Live Encoder 中的相应字段名称为“FMS URL”和“Stream”。
我现在已经成功地建立了一个到 FMS 服务器的连接(我想?)。 问题:该流未在网络上显示,并且似乎未提交到 CDN。
function onStatus(e:NetStatusEvent):void {
trace(e.info.code);
switch(e.info.code) {
case "NetConnection.Connect.Success":
var ns:NetStream = new NetStream(conn);
ns.addEventListener(NetStatusEvent.NET_STATUS, onStatus);
var camera = Camera.getCamera();
camera.setLoopback(true);
camera.setQuality( 0, 100 );
camera.setMode(640, 480, 25)
var mic = Microphone.getMicrophone();
if (camera != null){
myVid.attachCamera(camera);
ns.attachCamera(camera);
// ns.play();
}
if (mic != null) {
ns.attachAudio(mic);
}
ns.publish("fli/00000-streamname?encoderuser=XXX&encoderpassword=YYY", "live");
break;
//...
}
}
var conn:NetConnection = new NetConnection();
conn.addEventListener(NetStatusEvent.NET_STATUS, onStatus);
conn.connect("rtmp://fli003.am4.hwcdn.net/XXXX/_definst_");
//var counter:int = 0;
//conn.onBWDone = function(kbitDown:Number, deltaDown:Number, deltaTime:Number, latency:Number){ };
NetConnection.prototype.onBWDone = function(p_bw) {
//trace("onBWDone: "+p_bw);
}
NetConnection.prototype.onBWCheck = function() {
//return ++counter;
}
smil 文件在那里,但我怀疑没有数据到达服务器。 播放器仅显示加载动画。
我现在得到一个额外的
NetStream.Failed NetStream.InvalidArg NetStream.InvalidArg 连接成功后。不知道那个错误是从哪里来的。
【问题讨论】:
标签: flash actionscript webcam live