Flash Media Server sporer ikke afbrudt stream
Hej eksperter.Jeg har lavet en streamafspiller i Flash AS3 - den fungerer udmærket, bortset fra at ingen eventhandler bliver kørt, hvis streamen forsvinder eller hvis streamen ikke eksisterer, når man kører afspilleren.
FMS er konfigureret og kører, sammen med Adobe Flash Media Live Encoder 3 (se screendump her: http://www.vandret.dk/diverse/FMS.png ). Det er med vilje, den ikke er forbundet og startet - for det er jo problemets kerne.
Koden her opretter forbindelsen:
if (!connected) {
trace("ns eksisterer ikke. Opret denne");
// Opret sammenkædningen 1 gang
ns = new NetStream(nc);
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
ns.addEventListener(NetStatusEvent.NET_STATUS, nsHandler);
ns.bufferTime = 5;
var custom_obj:Object = new Object();
custom_obj.onMetaData = onMetaDataHandler;
custom_obj.onCuePoint = onCuePointHandler;
ns.client = custom_obj;
video.attachNetStream(ns); // "video" er vores videopbjekt på scenen. Tilknyt stream'en til den.
video.smoothing = SMOOTHING;
ns.play(konfiguration.streamerFILE); // Afspil stream
}
Som det ses, har jeg en eventhandler ved havn "nsHandler". Koden til denne kommer her:
function nsHandler(event:NetStatusEvent):void {
switch (event.info.code) {
case "NetConnection.Connect.Success" :
trace("Der BLEV oprettet forbindelse");
connectStream();
break;
case "NetConnection.Connect.Rejected" :
displayStatus(1, null, null);
trace("Vi er i netStatusHandler og streamen blev ikke fundet");
break;
case "NetStream.Play.StreamNotFound" :
trace("Stream blev ikke fundet!!!");
break;
case "NetStream.Play.Start" :
connected = true;
break;
}
}
For at opsummere: Jeg kan godt få systemet til at registrere, hvis FMS-servicen ikke kører. Men hvis STREAM'EN ikke kan nås, bliver videofeltet bare sort - NetStream.Play.StreamNotFound reagerer overhovedet ikke.
Kan nogen hjælpe - jeg er efterhånden ret frustreret over det l**t...
