[Icecast-dev] Icecast vs Internet Explorer 7 patch

Guy Baconnière baco at infomaniak.ch
Sun Dec 24 18:12:18 PST 2006


Hi,

I have patched last night our icecast cluster to be compatible with IE7.

To be able to play icecast streaming inside a flash on IE7 you need :

1. Patch icecast2 to have content-length equal 319324133 (one more will 
failed)

2. Use javascript to display emb/object of the flash because Microsoft
    will not autorun flash anymore (due to legal issue ?)
    read http://www.adobe.com/devnet/activecontent/articles/devletter.html

3. flash .swf need to be stored on icecast web directory. Security 
restriction
    like in the java to only open socket on the same host where applet 
is located.

This is a sample code to play icecast stream in a flash code

stream = new Sound();
domain = new String();
mount = new String();
port = new String();

domain = 'icecast.youdomain';
mount = 'myradio.mp3';
port = '80';

System.security.allowDomain('http://'+ domain);

stream.loadSound('http://'+ domain +':'+ port +'/'+ mount, true);
function callback() {
    stream.start();
}
stream.onSoundComplete = callback;
stream.start();


Happy Christmas.


--

Infomaniak Network SA
Guy Baconniere <baco at infomaniak.ch>
Unix System Administrator
Certified Linux Engineer (RHCE, LPIC-2)
Avenue de la Praille 26
1227 Carouge (Geneva)
Switzerland (CH)
Phone +41 (0)22 820 3541
Fax +41 (0)22 820 3546
AS29222 / BACO-RIPE


-------------- next part --------------
--- src/format_mp3.c	2005-09-22 22:19:28.000000000 +0200
+++ src/format_mp3.c	2006-12-22 16:04:43.485964008 +0100
@@ -627,9 +627,11 @@
         return -1;
 
     /* hack for flash player, it wants a length */
+	/* IE7/Flash Maximum Content-Length is 319324133 ?? */
+	/* Modified by Infomaniak Network Guy Baconniere */
     if (httpp_getvar(client->parser, "x-flash-version"))
     {
-        bytes = snprintf (ptr, remaining, "Content-Length: 347122319\r\n");
+        bytes = snprintf (ptr, remaining, "Content-Length: 319324133\r\n");
         remaining -= bytes;
         ptr += bytes;
     }


More information about the Icecast-dev mailing list