Posts Tagged ‘bug’

Unprocessed Recordings Update

Monday, October 17th, 2011

To those of you who hosted shows this weekend and are anxiously awaiting your recording, know that they are safely processing now, and should be available by the afternoon—as usual, you will be notified by email as soon as your recording is available.

We would like to apologize for the delay; we pushed a new bit of code Friday that unintentionally blocked recordings from processing fully. We thank all of you who informed us of the issue, the sooner we can pinpoint a problem the sooner we can rectify it. And as always, thank you for your patience as we work our way through beta.

-The VOKLE Team

Update: We had a series of recording issues throughout the week, but they should be fixed. These issues were due to improvements we made on the platform, which inadvertently affected recording processing in a variety of ways. Thank you very much for your patience, please email us if issues with processing persist.

Why IE doesn’t drop Flash NetConnections / NetStreams and how to fix it.

Tuesday, March 10th, 2009

Problem

The Adobe Flash Player ActiveX control for Internet Explorer 7 (I don’t know about IE6) will not disconnect NetConnections if the connection was made by a swf instance loaded in a tab and only that tab was closed. If IE itself is closed though the NetConnection will be dropped. This could lead to hung “ghost” connections where you won’t hear any audio, etc. but your Wowza Media Server (and maybe Flash Media Server, who knows?) will still think the client is connected.

Explanation

Laziness on the part of two large corporations.

Solution

Register a JS handler function for window.onbeforeunload that uses the Flash ExternalInterface to call a function in your swf that manually closes the NetConnection. The event “onbeforeunload” is recognized and executed by IE, Safari and Firefox before the onunload event is fired. It is apparently not handled by Opera AFAIK but that’s ok since IE is the only one that actually needs this fix.

In your ActionScript 3 code somewhere:


import flash.external.ExternalInterface;

....

private someFunction():void{

if( ExternalInterface.available ){

ExternalInterface.addCallback("disconnect", disconnect);

}

}

private function disconnect():void {

_my_net_connection1.close();

}

In your Javascript code for the page that loads your swf:


window.onbeforeunload = function(){

// pure JS

var swf = document.getElementById('mySwf');

swf.disconnect();

// jQuery 1.2.6 version

$("#mySwf")[0].disconnect();

}

The End

(image originally from visualizeus)