<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Flash and ICY streaming audio (Shoutcast/Icecast)</title>
	<atom:link href="http://www.flexiblefactory.co.uk/flexible/index.php?feed=rss2&#038;p=51" rel="self" type="application/rss+xml" />
	<link>http://www.flexiblefactory.co.uk/flexible/?p=51</link>
	<description></description>
	<pubDate>Wed, 08 Sep 2010 13:40:16 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
		<item>
		<title>By: chris</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-3556</link>
		<dc:creator>chris</dc:creator>
		<pubDate>Tue, 16 Jun 2009 13:49:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-3556</guid>
		<description>@MajtyBoy - To be clear, an MP3 stream does not contain ID3 or ID3v2 data. Generally, the ICY protocol has embedded metadata that is specific to ICY. This is switched on by providing an HTTP header to the Shout/Icecast server that informs it to emit metadata every n-bytes of the stream. This is problematic for Flash for two reasons: firstly, it is not possible to use the Sound class in Flash to add the extra HTTP header in the request for the stream. Second: if present in the stream (some versions of MP3 streaming server send it anyway), the metadata causes the flash player MP3 decoder to malfunction, causing break-up in the audio. Without extra processing to remove the metadata from the stream (Flash does not perform this processing), the stream is effectively corrupt if treated like a standard mp3 stream.

In an extremely limited subset of situations, it is possible to read the stream via a socket connection (this requires special extra software on the MP3 stream server to allow Flash the crossdomain permission to connect at a low level), and to feed this audio into the sound subsystem using a series of low level hacks. In this case, the metadata is accessible. You'll need to know a lot about the format of both MP3 frames and the ICY protocol to make a parser to do this.

You can see this approach in action at http://tunamedia.co.uk. It is unlikely that Tunamedia will release the sourcecode.</description>
		<content:encoded><![CDATA[<p>@MajtyBoy - To be clear, an MP3 stream does not contain ID3 or ID3v2 data. Generally, the ICY protocol has embedded metadata that is specific to ICY. This is switched on by providing an HTTP header to the Shout/Icecast server that informs it to emit metadata every n-bytes of the stream. This is problematic for Flash for two reasons: firstly, it is not possible to use the Sound class in Flash to add the extra HTTP header in the request for the stream. Second: if present in the stream (some versions of MP3 streaming server send it anyway), the metadata causes the flash player MP3 decoder to malfunction, causing break-up in the audio. Without extra processing to remove the metadata from the stream (Flash does not perform this processing), the stream is effectively corrupt if treated like a standard mp3 stream.</p>
<p>In an extremely limited subset of situations, it is possible to read the stream via a socket connection (this requires special extra software on the MP3 stream server to allow Flash the crossdomain permission to connect at a low level), and to feed this audio into the sound subsystem using a series of low level hacks. In this case, the metadata is accessible. You&#8217;ll need to know a lot about the format of both MP3 frames and the ICY protocol to make a parser to do this.</p>
<p>You can see this approach in action at <a href="http://tunamedia.co.uk" rel="nofollow">http://tunamedia.co.uk</a>. It is unlikely that Tunamedia will release the sourcecode.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MajtyBoy</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-3544</link>
		<dc:creator>MajtyBoy</dc:creator>
		<pubDate>Mon, 15 Jun 2009 10:31:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-3544</guid>
		<description>Hi, simple question. Is it possible to get 
ID3 data from i.e. http://shoutcastServerLivesHere.net:8000/myradio
or
http://shoutcastServerLivesHere.net:8000/myradio.mp3

to flash?</description>
		<content:encoded><![CDATA[<p>Hi, simple question. Is it possible to get<br />
ID3 data from i.e. <a href="http://shoutcastServerLivesHere.net:8000/myradio" rel="nofollow">http://shoutcastServerLivesHere.net:8000/myradio</a><br />
or<br />
<a href="http://shoutcastServerLivesHere.net:8000/myradio.mp3" rel="nofollow">http://shoutcastServerLivesHere.net:8000/myradio.mp3</a></p>
<p>to flash?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Recent Links Tagged With "icecast" - JabberTags</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-2767</link>
		<dc:creator>Recent Links Tagged With "icecast" - JabberTags</dc:creator>
		<pubDate>Fri, 17 Apr 2009 10:34:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-2767</guid>
		<description>[...] public links &#62;&#62; icecast   Icecast monitoring from Cacti Saved by anderzd on Fri 10-4-2009   Flash and ICY streaming audio (Shoutcast/Icecast) Saved by nabaselic on Sun 29-3-2009   Working with icecast Saved by G4TV on Fri 20-3-2009   GeeXboX [...]</description>
		<content:encoded><![CDATA[<p>[...] public links &gt;&gt; icecast   Icecast monitoring from Cacti Saved by anderzd on Fri 10-4-2009   Flash and ICY streaming audio (Shoutcast/Icecast) Saved by nabaselic on Sun 29-3-2009   Working with icecast Saved by G4TV on Fri 20-3-2009   GeeXboX [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Borislav Georgiev</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-1008</link>
		<dc:creator>Borislav Georgiev</dc:creator>
		<pubDate>Sun, 02 Nov 2008 19:50:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-1008</guid>
		<description>Thank you very much! "...adding a semicolon to the path (i.e. http://shoutcastServerLivesHere.net:8000/; ) which fools the DNAS server into handing you the stream..." this really helped me - now the xspf player can play all streams. Thank you again!!!</description>
		<content:encoded><![CDATA[<p>Thank you very much! &#8220;&#8230;adding a semicolon to the path (i.e. <a href="http://shoutcastServerLivesHere.net:8000/" rel="nofollow">http://shoutcastServerLivesHere.net:8000/</a>; ) which fools the DNAS server into handing you the stream&#8230;&#8221; this really helped me - now the xspf player can play all streams. Thank you again!!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tunamedia.co.uk &#187; Blog Archive &#187; MP3 streaming in Flash without memory leaks</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-869</link>
		<dc:creator>tunamedia.co.uk &#187; Blog Archive &#187; MP3 streaming in Flash without memory leaks</dc:creator>
		<pubDate>Fri, 17 Oct 2008 00:44:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-869</guid>
		<description>[...] at FlexibleFactory, we describe the issues surrounding Flash and MP3 audio streams. The big problem is that listening to MP3 streams using the Flash Player slowly but steadily [...]</description>
		<content:encoded><![CDATA[<p>[...] at FlexibleFactory, we describe the issues surrounding Flash and MP3 audio streams. The big problem is that listening to MP3 streams using the Flash Player slowly but steadily [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Recent URLs tagged Icecast - Urlrecorder</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-483</link>
		<dc:creator>Recent URLs tagged Icecast - Urlrecorder</dc:creator>
		<pubDate>Tue, 26 Aug 2008 02:45:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-483</guid>
		<description>[...] recorded first by zonxs7 on 2008-08-11&#8594; Flash and ICY streaming audio (Shoutcast/Icecast) [...]</description>
		<content:encoded><![CDATA[<p>[...] recorded first by zonxs7 on 2008-08-11&rarr; Flash and ICY streaming audio (Shoutcast/Icecast) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: owen</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-314</link>
		<dc:creator>owen</dc:creator>
		<pubDate>Tue, 29 Jul 2008 12:37:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-314</guid>
		<description>Hi Chris,

I ended up using the Wowza media server. Have to say that it's really easy to use and does everything I needed :) Plus the client is paying for it :D</description>
		<content:encoded><![CDATA[<p>Hi Chris,</p>
<p>I ended up using the Wowza media server. Have to say that it&#8217;s really easy to use and does everything I needed <img src='http://www.flexiblefactory.co.uk/flexible/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Plus the client is paying for it <img src='http://www.flexiblefactory.co.uk/flexible/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: chris</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-307</link>
		<dc:creator>chris</dc:creator>
		<pubDate>Thu, 24 Jul 2008 16:54:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-307</guid>
		<description>Thanks for that Theo. I saw it before writing the article and promptly forgot about it!</description>
		<content:encoded><![CDATA[<p>Thanks for that Theo. I saw it before writing the article and promptly forgot about it!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Theo van Wyk</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-280</link>
		<dc:creator>Theo van Wyk</dc:creator>
		<pubDate>Sat, 19 Jul 2008 15:06:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-280</guid>
		<description>There is a third option which records the ICY stream into 40second blocks. The block are repackages into an MPEG-4 format file and made available via http. The client-side Flash Player then request the latest file every 40 seconds and thus plays them one after the other. 

This eliminates the Flash memory problem and works around the AAC+ format issue. It will however still use the cache of the browser. You can have a look at the technology at http://www.letio.com/ (Spanish) or at http://www.escuchemos.com/#LETio for a preview.

This is also a non free option but am sure that it is less expensive than the Wowza option, but a lot less elegant.</description>
		<content:encoded><![CDATA[<p>There is a third option which records the ICY stream into 40second blocks. The block are repackages into an MPEG-4 format file and made available via http. The client-side Flash Player then request the latest file every 40 seconds and thus plays them one after the other. </p>
<p>This eliminates the Flash memory problem and works around the AAC+ format issue. It will however still use the cache of the browser. You can have a look at the technology at <a href="http://www.letio.com/" rel="nofollow">http://www.letio.com/</a> (Spanish) or at <a href="http://www.escuchemos.com/#LETio" rel="nofollow">http://www.escuchemos.com/#LETio</a> for a preview.</p>
<p>This is also a non free option but am sure that it is less expensive than the Wowza option, but a lot less elegant.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FlexibleFactory &#187; Blog Archive &#187; Silverlight and mp3 streaming</title>
		<link>http://www.flexiblefactory.co.uk/flexible/?p=51#comment-255</link>
		<dc:creator>FlexibleFactory &#187; Blog Archive &#187; Silverlight and mp3 streaming</dc:creator>
		<pubDate>Sun, 13 Jul 2008 22:37:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.flexiblefactory.co.uk/flexible/?p=51#comment-255</guid>
		<description>[...] an extremely simple application that points a MediaElement at a Shoutcast stream (using the same url tweaking trick oulined in this previous post) and plays it back. Once again, looking through the documentation, it becomes apparent that [...]</description>
		<content:encoded><![CDATA[<p>[...] an extremely simple application that points a MediaElement at a Shoutcast stream (using the same url tweaking trick oulined in this previous post) and plays it back. Once again, looking through the documentation, it becomes apparent that [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
