<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>criten.org &#187; Icecast</title>
	<atom:link href="http://www.criten.org/tag/icecast/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.criten.org</link>
	<description>What can we hack up today?</description>
	<lastBuildDate>Sun, 05 Feb 2012 11:16:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>HTML5 &lt;audio&gt; and Icecast</title>
		<link>http://www.criten.org/2011/11/html5-audio-and-icecast/</link>
		<comments>http://www.criten.org/2011/11/html5-audio-and-icecast/#comments</comments>
		<pubDate>Mon, 14 Nov 2011 01:30:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Radio]]></category>
		<category><![CDATA[AAC]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Google Chrome]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[MP3]]></category>
		<category><![CDATA[Opera]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/11/html5-audio-and-icecast/</guid>
		<description><![CDATA[Well with my works recently on a new web based player for the radio station that detects the visitors web browser and directs them to a suitable play head, I decided I could probably expand this with the HTML5 &#60;audio&#62; &#8230; <a href="http://www.criten.org/2011/11/html5-audio-and-icecast/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Well with my works recently on a new web based player for the radio station that detects the visitors web browser and directs them to a suitable play head, I decided I could probably expand this with the HTML5 &lt;audio&gt; tag as a player.</p>
<p>Seems like a good idea but the real issue is browser support and codecs.</p>
<p>Apple Safari &amp; Internet Explorer 9 will apparently support MP3 &amp; AAC. My testing couldn’t get it to work with either, when streaming from Icecast.</p>
<p>Opera &amp; Firefox support OGG &amp; WAV codecs only due to licensing reasons. Just recently we killed off our OGG stream because nobody listened to it. So essentially with our MP3 &amp; AAC streams we can’t support Firefox in HTML5 and instead must use Adobe Flash.</p>
<p>Google Chrome supports AAC, MP3, OGG &amp; WAV codecs. My testing revealed that it worked fantastic. However I couldn’t get it working with AAC+ and only MP3.</p>
<p>So after testing a few browsers the only one I could get HTML5 audio working when streaming from Icecast was Google Chrome.</p>
<p>I’ll still implement a HTML5 audio player anyway, but I’ll only send users of Google Chrome to it. It seems the compatibility in other browsers is lacking.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/11/html5-audio-and-icecast/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>EPG in Google Calendar?</title>
		<link>http://www.criten.org/2011/11/epg-in-google-calendar/</link>
		<comments>http://www.criten.org/2011/11/epg-in-google-calendar/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 05:22:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Radio]]></category>
		<category><![CDATA[Broadcasting]]></category>
		<category><![CDATA[EPG]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Calendar]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/11/epg-in-google-calendar/</guid>
		<description><![CDATA[I did some more work for the radio station today. I’ve implemented what I’d like to call EPG or Electronic Program Guide in their Internet stream. Icecast supports metadata in MP3 &#38; AAC+ streams so this metadata can be used &#8230; <a href="http://www.criten.org/2011/11/epg-in-google-calendar/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I did some more work for the radio station today. I’ve implemented what I’d like to call EPG or Electronic Program Guide in their Internet stream.</p>
<p>Icecast supports metadata in MP3 &amp; AAC+ streams so this metadata can be used to represent whats being sent to air such as the name of the program or the name of the track.</p>
<p>I needed a databased calendar for EPG. So I turned to Google Calendar because of its easy interface to modify the calendar data. It also has <a href="http://code.google.com/apis/calendar/data/1.0/developers_guide_php.html#RetrievingDateRange">an API</a> which can be used to both perform lookups of whats presently on so we can send that to Icecast, and we can use the API to pull the whole program guide and apply our own formatting on our website.</p>
<p>Today I made a script to pull the current entry from Google Calendar and to publish it to Icecast over HTTP. I had always thought this would be difficult to pull off, however it ended up to be much easier than I ever imagined. I wrote this script in PHP so that its modular with the same lookup functions I’ll later use on the web based player.</p>
<p>Now all that remains is to convince the web developer that the program guide should use the Google Calendar data so we’re not maintaining 2 different program guides. I’m still waiting for him to implement my web based player. And its been 2 months since I first requested admin privileges to his WordPress installation. So my hopes on having anything done any time soon aren’t high.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/11/epg-in-google-calendar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Browser detection with PHP&#8217;s get_browser()</title>
		<link>http://www.criten.org/2011/11/browser-detection-with-phps-get_browser/</link>
		<comments>http://www.criten.org/2011/11/browser-detection-with-phps-get_browser/#comments</comments>
		<pubDate>Fri, 04 Nov 2011 00:50:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Adobe Flash]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/11/browser-detection-with-phps-get_browser/</guid>
		<description><![CDATA[I had to make a small web page to play the Internet stream for the radio station this week. We’ve had alot of issues in the past with users of Internet Explorer having poor quality playback. This is because the &#8230; <a href="http://www.criten.org/2011/11/browser-detection-with-phps-get_browser/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I had to make a small web page to play the Internet stream for the radio station this week.</p>
<p>We’ve had alot of issues in the past with users of Internet Explorer having poor quality playback. This is because the web browser handles all HTTP requests for Adobe Flash and IE doesn’t handle live MP3 streams too well.</p>
<p>So the idea is to detect when Internet Explorer is being used and instead of using Adobe Flash, embed Windows Media Player which plays the stream fine.</p>
<p>get_browser() does this task great. However it requires the php_browscap.ini file.</p>
<p>So this file is kept up to date I created the cronjob:</p>
<blockquote><p><font face="Courier New">1 1 */7 * *&#160;&#160;&#160;&#160; root&#160;&#160;&#160; /usr/bin/wget &quot;</font><a href="http://browsers.garykeith.com/stream.asp?PHP_BrowsCapINI&quot;"><font face="Courier New">http://browsers.garykeith.com/stream.asp?PHP_BrowsCapINI&quot;</font></a><font face="Courier New"> -O /etc/php5/browscap.ini &gt;/dev/null 2&gt;&amp;1</font></p>
</blockquote>
<p>I then edited the php.ini file so that under [browscap] it contains:</p>
<blockquote><p><font face="Courier New">browscap = /etc/php5/browscap.ini</font></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/11/browser-detection-with-phps-get_browser/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adding robots.txt to Icecast</title>
		<link>http://www.criten.org/2011/08/adding-robots-txt-to-icecast/</link>
		<comments>http://www.criten.org/2011/08/adding-robots-txt-to-icecast/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 02:33:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[robots.txt]]></category>
		<category><![CDATA[wget]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/08/adding-robots-txt-to-icecast/</guid>
		<description><![CDATA[I noticed today that my Icecast servers are getting hit by Google quite regularly. Strange because there isn’t really any indexable content. So today I added a robots.txt to Icecast in /usr/share/icecast2/web on Debian systems. I disallowed all robots with: &#8230; <a href="http://www.criten.org/2011/08/adding-robots-txt-to-icecast/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I noticed today that my Icecast servers are getting hit by Google quite regularly. Strange because there isn’t really any indexable content.</p>
<p>So today I added a robots.txt to Icecast in /usr/share/icecast2/web on Debian systems. I disallowed all robots with:</p>
<blockquote><p><font face="Courier New">User-agent: *</font></p>
<p><font face="Courier New">Disallow: /</font></p>
</blockquote>
<p>So hopefully I won’t get robots on my Icecast server. This would also protect against people using wget to record streams, as wget will honour robots.txt.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/08/adding-robots-txt-to-icecast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My drama with Virtual Machines</title>
		<link>http://www.criten.org/2011/08/my-drama-with-virtual-machines/</link>
		<comments>http://www.criten.org/2011/08/my-drama-with-virtual-machines/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 05:43:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[BIND]]></category>
		<category><![CDATA[E-mail]]></category>
		<category><![CDATA[GeoIP]]></category>
		<category><![CDATA[Hostitek]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[iWeb]]></category>
		<category><![CDATA[Jumba]]></category>
		<category><![CDATA[Virtual Machines]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/08/my-drama-with-virtual-machines/</guid>
		<description><![CDATA[Well I was really hoping to migrate from iWeb this month but unfortunately Jumba don’t have any virtual machines. I called them this morning and they told me they’d take new accounts in mid September. So I’m left having to &#8230; <a href="http://www.criten.org/2011/08/my-drama-with-virtual-machines/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Well I was really hoping to migrate from iWeb this month but unfortunately Jumba don’t have any virtual machines. I called them this morning and they told me they’d take new accounts in mid September.</p>
<p>So I’m left having to migrate from iWeb in the next 2 days with no destination. My plan is to use the really poor performing virtual machine from Hostitek to do some temporary hosting until I can get a virtual machine from Jumba.</p>
<p>Today I setup mail loops on the several virtual machines I purchased so that in total I have 3 mail servers. The domain I use for email is already setup for GeoIP with BIND so I figured I’d direct DNS to the nearest possible server using this technique, with the other servers also listed at a lower priority. This way I can ensure that many cross-continent emails are encrypted while they travel along the sea bed.</p>
<p>Today also migrated my Icecast hostings to the new platform I blogged about <a href="http://www.criten.org/2011/08/clustering-icecast2-with-fallback-streams/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/08/my-drama-with-virtual-machines/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Running Icecast on port 80</title>
		<link>http://www.criten.org/2011/08/running-icecast-on-port-80/</link>
		<comments>http://www.criten.org/2011/08/running-icecast-on-port-80/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 03:52:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[iptables]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/08/running-icecast-on-port-80/</guid>
		<description><![CDATA[Running Icecast on port 80 is a good idea so that users behind corporate firewalls can still access your Icecast feed as you are not directing them to use non-standard ports. However its not that easy since Icecast isn’t heavily &#8230; <a href="http://www.criten.org/2011/08/running-icecast-on-port-80/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Running Icecast on port 80 is a good idea so that users behind corporate firewalls can still access your Icecast feed as you are not directing them to use non-standard ports.</p>
<p>However its not that easy since Icecast isn’t heavily audited for security faults and thus isn’t really setup to run on port 80.</p>
<p>Icecast should not run as root. Linux does not allow non-root users to bind to ports below 1024. So this is a problem.</p>
<p>The work around is to use iptables to redirect requests on port 80 to another port.</p>
<p>I used the following rules:</p>
<blockquote><p><font face="Courier New">iptables -A PREROUTING -t nat &#8211;dst 8.8.8.8/32 -p tcp &#8211;dport 80 -j DNAT &#8211;to 8.8.8.8:8080</font></p>
<p><font face="Courier New">iptables -A INPUT -p tcp -m state &#8211;state NEW &#8211;dport 80 &#8211;dst 8.8.8.8/32 -j ACCEPT</font></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/08/running-icecast-on-port-80/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Server Clustering</title>
		<link>http://www.criten.org/2011/08/server-clustering/</link>
		<comments>http://www.criten.org/2011/08/server-clustering/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 03:26:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Radio]]></category>
		<category><![CDATA[Clustering]]></category>
		<category><![CDATA[Hostitek]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[iWeb]]></category>
		<category><![CDATA[Jumba]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Virtual Machines]]></category>
		<category><![CDATA[VMPort]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/08/server-clustering/</guid>
		<description><![CDATA[I was looking at the costing of my Internet hosting a few weeks ago and decided I’m paying too much. I have a couple dedicated servers in a few locations, mostly at iWeb. For the purpose of this blog I’ll &#8230; <a href="http://www.criten.org/2011/08/server-clustering/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I was looking at the costing of my Internet hosting a few weeks ago and decided I’m paying too much.</p>
<p>I have a couple dedicated servers in a few locations, mostly at <a href="http://www.iweb.com">iWeb</a>. For the purpose of this blog I’ll do the costing on just one of them which was $104 USD per month.</p>
<p>The main reason I was keeping the hosting at <a href="http://www.iweb.com">iWeb</a> was for <a href="http://www.icecast.org">Icecast</a> servers as I operate the Internet streams for several FM radio stations which can consume a bit of bandwidth. Last week I was able to locate several Virtual Private Server packages with sufficient bandwidth for my Icecast servers from $3 USD per month. Quite a difference. Even if these VPS providers are overselling or are flyby companies, with good backups and my credit card I should be able to install replacement servers in a matter of hours.</p>
<p><a href="http://www.lowendbox.com">Lowendbox</a> proved to be a useful resource in tracking down VPS packages.</p>
<p>I decided on taking the approach of migrating all web, email and DNS hostings to Australia with <a href="http://www.jumba.com.au">Jumba</a>. 90% of these sites target Australians so it will serve to improve the performance of these websites for the target audience.</p>
<p>I also decided to get accounts in Los Angeles and The Netherlands for mail and DNS backups. I will later do some works on clustering web servers and utilize <a href="http://www.criten.org/2011/08/bind-with-geoip-on-debian/">GeoIP support in BIND</a> to direct visitors to their nearest server and will end up migrating a few websites across. I’ve already successfully setup my Icecast servers to cluster and am in the process of stability testing that system.</p>
<p>So all up to replace one machine costing $104 per month… I ended up buying:</p>
<ul>
<li>2x VPS with <a href="http://www.jumba.com.au">Jumba</a> – 512MB Memory, 10GB Hard Disk, 100GB Network Transfer – $20 AUD per month </li>
<li>VPS with <a href="http://www.hostitek.com">Hostitek</a> – 1GB Memory, 80GB Hard Disk, 2000GB Network Transfer – $6 USD per month </li>
<li>VPS with <a href="http://www.vmport.com">VMPort</a> – 256MB Memory, 20GB Hard Disk, 250GB Network Transfer &#8211; £3.52 GBP per month </li>
</ul>
<p>So for around $35 per month… I’ve successfully reduced that hosting cost of $104 per month. Sure I don’t get the same processor, memory, hard disk and bandwidth… but I didn’t need such large quotas anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/08/server-clustering/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Clustering Icecast2 with fallback streams</title>
		<link>http://www.criten.org/2011/08/clustering-icecast2-with-fallback-streams/</link>
		<comments>http://www.criten.org/2011/08/clustering-icecast2-with-fallback-streams/#comments</comments>
		<pubDate>Mon, 08 Aug 2011 02:33:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Clustering]]></category>
		<category><![CDATA[Icecast]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/08/clustering-icecast2-with-fallback-streams/</guid>
		<description><![CDATA[I’m undergoing a project at the moment to setup servers in key geographic locations around the world to better deliver an Icecast stream when compared to the existing single server in Canada. Icecast has the fallback feature on mounts so &#8230; <a href="http://www.criten.org/2011/08/clustering-icecast2-with-fallback-streams/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I’m undergoing a project at the moment to setup servers in key geographic locations around the world to better deliver an Icecast stream when compared to the existing single server in Canada.</p>
<p>Icecast has the fallback feature on mounts so that if a mount is unavailable you can direct clients to a new mount provided its the same format and bitrate. So you can infinitely redirect users until a working mount is found.</p>
<p>The following is configs for servers in Australia, Europe &amp; The United States taking the feed from 2 publishing servers and making The United States the default server to take the feed from the publishing servers:</p>
<p><strong>Australia:</strong></p>
<blockquote><p><font face="Courier New">&lt;relay&gt;       <br />&#160;&#160;&#160; &lt;server&gt;us.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;eu.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-eu.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;publisher1.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-pub1.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;publisher2.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-pub2.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;</font></p>
<p><font face="Courier New">&lt;mount&gt;       <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-eu.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;1&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;0&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-eu.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-pub1.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-pub1.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-pub2.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-pub2.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br /></font></p>
</blockquote>
<p><strong>Europe:</strong></p>
<blockquote><p><font face="Courier New">&lt;relay&gt;       <br />&#160;&#160;&#160; &lt;server&gt;us.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;au.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-au.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;publisher1.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-pub1.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;publisher2.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-pub2.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;</font></p>
<p><font face="Courier New">&lt;mount&gt;       <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-au.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;1&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;0&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-au.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-pub1.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-pub1.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-pub2.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-pub2.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br /></font></p>
</blockquote>
<p><strong>The United States:</strong></p>
<blockquote><p><font face="Courier New">&lt;relay&gt;       <br />&#160;&#160;&#160; &lt;server&gt;publisher1.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;0&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;publisher2.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-pub2.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;eu.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-eu.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;        <br />&lt;relay&gt;        <br />&#160;&#160;&#160; &lt;server&gt;au.icecast&lt;/server&gt;        <br />&#160;&#160;&#160; &lt;port&gt;8080&lt;/port&gt;        <br />&#160;&#160;&#160; &lt;mount&gt;/stream.mp3&lt;/mount&gt;        <br />&#160;&#160;&#160; &lt;local-mount&gt;/stream-au.mp3&lt;/local-mount&gt;        <br />&#160;&#160;&#160; &lt;on-demand&gt;1&lt;/on-demand&gt;        <br />&#160;&#160;&#160; &lt;relay-shoutcast-metadata&gt;1&lt;/relay-shoutcast-metadata&gt;        <br />&lt;/relay&gt;</font></p>
<p><font face="Courier New">&lt;mount&gt;       <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-pub2.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;1&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;0&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-pub2.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-eu.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-eu.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream-au.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;        <br />&lt;mount&gt;        <br />&#160;&#160;&#160; &lt;mount-name&gt;/stream-au.mp3&lt;/mount-name&gt;        <br />&#160;&#160;&#160; &lt;fallback-mount&gt;/stream.mp3&lt;/fallback-mount&gt;        <br />&#160;&#160;&#160; &lt;fallback-override&gt;1&lt;/fallback-override&gt;        <br />&#160;&#160;&#160; &lt;fallback-when-full&gt;0&lt;/fallback-when-full&gt;        <br />&#160;&#160;&#160; &lt;stream-name&gt;Stream Name Goes Here&lt;/stream-name&gt;        <br />&#160;&#160;&#160; &lt;stream-description&gt;Stream Description Goes Here&lt;/stream-description&gt;        <br />&#160;&#160;&#160; &lt;stream-url&gt;</font><a href="http://www.icecast"><font face="Courier New">http://www.icecast</font></a><font face="Courier New">&lt;/stream-url&gt;       <br />&#160;&#160;&#160; &lt;bitrate&gt;128&lt;/bitrate&gt;        <br />&#160;&#160;&#160; &lt;public&gt;0&lt;/public&gt;        <br />&#160;&#160;&#160; &lt;hidden&gt;1&lt;/hidden&gt;        <br />&lt;/mount&gt;</font></p>
</blockquote>
<p>Next up for my project I need to setup BIND with GeoIP support so that DNS will direct you to your nearest server. I’ll blog about how I do that too.</p>
<p>I will also devise a system to detect outages with a particular node and take it out of DNS.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/08/clustering-icecast2-with-fallback-streams/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Installing Icecast 2 on CentOS 5</title>
		<link>http://www.criten.org/2011/08/installing-icecast-2-on-centos-5/</link>
		<comments>http://www.criten.org/2011/08/installing-icecast-2-on-centos-5/#comments</comments>
		<pubDate>Sat, 06 Aug 2011 02:21:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Icecast]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/08/installing-icecast-2-on-centos-5/</guid>
		<description><![CDATA[I had to do this today so I’m posting a howto mainly for my own reference. Icecast isn’t included in the CentOS yum repos. So to install it you need to build it from source. First you’ll need to install &#8230; <a href="http://www.criten.org/2011/08/installing-icecast-2-on-centos-5/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I had to do this today so I’m posting a howto mainly for my own reference.</p>
<p>Icecast isn’t included in the CentOS yum repos. So to install it you need to build it from source.</p>
<p>First you’ll need to install dependencies to build Icecast</p>
<blockquote><p><font face="Courier New">yum install curl-devel libtheora-devel libvorbis-devel libxslt-devel speex-devel</font></p>
<p><font face="Courier New">yum groupinstall &#8216;Development Tools&#8217;</font></p>
</blockquote>
<p>Next you’ll need to install the source RPM</p>
<blockquote><p><font face="Courier New">rpm -ivh http://downloads.xiph.org/releases/icecast/icecast-2.3.2-0.src.rpm</font></p>
</blockquote>
<p>Then you will need to build the binary package</p>
<blockquote><p><font face="Courier New">rpmbuild -bb /usr/src/redhat/SPECS/icecast.spec</font></p>
</blockquote>
<p>Finally you can install the RPM</p>
<blockquote><p><font face="Courier New">rpm -ivh /usr/src/redhat/RPMS/i386/icecast-2.3.2-0.i386.rpm</font></p>
</blockquote>
<p>And now you have Icecast installed. Unfortunately this method doesn’t create a startup script in /etc/init.d so you can add the following to /etc/rc.local to ensure Icecast starts with the system.</p>
<blockquote><p><font face="Courier New">icecast –c /etc/icecast.xml –b</font></p>
</blockquote>
<p>You will also need to edit /etc/icecast.xml for your requirements.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/08/installing-icecast-2-on-centos-5/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reducing hosting costs?</title>
		<link>http://www.criten.org/2011/07/reducing-hosting-costs/</link>
		<comments>http://www.criten.org/2011/07/reducing-hosting-costs/#comments</comments>
		<pubDate>Sat, 30 Jul 2011 02:15:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Radio]]></category>
		<category><![CDATA[Icecast]]></category>
		<category><![CDATA[iWeb]]></category>
		<category><![CDATA[Jumba]]></category>
		<category><![CDATA[Virtual Machines]]></category>

		<guid isPermaLink="false">http://www.criten.org/2011/07/reducing-hosting-costs/</guid>
		<description><![CDATA[I’ve been considering lately that I’m paying too much for web hosting. The main bandwidth consumer that I host is Internet streaming for several radio stations which prompted me to get a server in Canada with iWeb costing $104 USD &#8230; <a href="http://www.criten.org/2011/07/reducing-hosting-costs/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I’ve been considering lately that I’m paying too much for web hosting.</p>
<p>The main bandwidth consumer that I host is Internet streaming for several radio stations which prompted me to get a server in Canada with <a href="http://www.iweb.com">iWeb</a> costing $104 USD per month.</p>
<p>Today I researched the cost of Icecast hosting with a shared hosting seller and found that I can get suitable hosting from about $8 USD per month.</p>
<p>I’ve also been using for some time a Virtual Private Server with <a href="http://www.jumba.com.au">Jumba</a> who sells such accounts from $10 per month.</p>
<p>Seems pretty easy to make a decent dent in the monthly costs. I’ll probably end up buying 3 VPS accounts with Jumba and an Icecast account for about $25 per month. Which would amount to a saving of about $50 per month.</p>
<p>Then again I do also have a customer who buys a VPS off me and is looking to buy several more. So if they’re prepared to pay around $50 per month it may not be worthwhile. I’ll have to get in touch with this customer.</p>
<p>I guess this is something for me to work on.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.criten.org/2011/07/reducing-hosting-costs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

