<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>pruperting</title>
	
	<link>http://www.prupert.co.uk</link>
	<description>putting the know back in technology</description>
	<lastBuildDate>Wed, 30 Jun 2010 11:27:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/pruperting" /><feedburner:info uri="pruperting" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>How To Fix Synergy+ Problems in Ubuntu and Windows</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/ydvb1BntFXY/</link>
		<comments>http://www.prupert.co.uk/2010/06/30/how-to-fix-synergy-problems-in-ubuntu-and-windows/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 10:30:03 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=375</guid>
		<description><![CDATA[I use the excellent Synergy+ program to share my mouse and keyboard between my Windows XP box and my Ubuntu Lucid box. However, since upgrading to Lucid, I was having all types of problems with the versions of synergy and synergy-plus in the repos (mainly around use of CAPS and Shift being permanently on). Upgrading [...]]]></description>
			<content:encoded><![CDATA[<p>I use the excellent <a title="Synergy Plus" href="http://code.google.com/p/synergy-plus/" target="_blank">Synergy+</a> program to share my mouse and keyboard between my Windows XP box and my Ubuntu Lucid box. However, since upgrading to Lucid, I was having all types of problems with the versions of synergy and synergy-plus in the repos (mainly around use of CAPS and Shift being permanently on). Upgrading to the latest nightly builds seem to have fixed this, but there were a few install issues that needed to be sorted. <img class="alignright size-full wp-image-376" title="logo" src="http://www.prupert.co.uk/wp-content/uploads/2010/06/logo.png" alt="" width="42" height="42" /></p>
<p>I got the .deb package for Ubuntu and the Windows installer from the Google Code hosted Synergy+ nightly build page, found <a title="Synergy Plus Nightly Builds" href="http://synergy-plus.org/packages/" target="_blank">here</a>. The .deb package installed with no problems, as did the Windows installer. However, the Windows program wouldn&#8217;t load, it had lots of missing .dlls errors.</p>
<p>The missing dlls are libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll and QtNetwork4.dll. A quick Google led me to loads of issues related to various QtXXXX4.dll problems that are seemingly mostly fixed by installing EA&#8217;s Download Manager (since most of the posters were having Sims3 issues (nice one EA!)) or some awful bloat-ware that claimed to scan your PC&#8217;s registry. Errr, no thanks to that, downloading random dlls is dangerous. So, I went to the source for the dlls; <a title="Qt" href="http://qt.nokia.com/products/" target="_blank">Qt from Nokia</a>. Download the most recent version (you don&#8217;t need the SDK) from <a title="Qt Download" href="http://qt.nokia.com/downloads" target="_blank">here</a> and choose LGPL and Qt: Framework only and install the package (it is rather huge at over 200MB, but hey ho).  Once installed, navigate to this folder &#8220;C:\Qt\4.6.3\bin&#8221; (the version number might be different if it gets updated, but just find the bin folder) and copy the four missing dlls to here: &#8220;C:\Program Files\Synergy+\bin&#8221; (the location &#8216;may&#8217; be different on Vista and Windows 7.</p>
<p>So, to recap. Copy:</p>
<p>libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll and QtNetwork4.dll</p>
<p>From &#8220;C:\Qt\4.6.3\bin&#8221;</p>
<p>To &#8220;C:\Program Files\Synergy+\bin&#8221;.</p>
<p>Finally, you can now run Synergy+, configure it if need be (though since I was running an older version of Synergy, my configs were already setup) and off you go. No more issue (hopefully:))!</p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=375" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/06/30/how-to-fix-synergy-problems-in-ubuntu-and-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/06/30/how-to-fix-synergy-problems-in-ubuntu-and-windows/</feedburner:origLink></item>
		<item>
		<title>How To Configure Wireless / WiFi Networking in Ubuntu via the Command Line (CLI)</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/AgIDxH4yQ_U/</link>
		<comments>http://www.prupert.co.uk/2010/06/25/how-to-configure-wireless-wifi-networking-in-ubuntu-via-the-command-line-cli/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 15:42:40 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[WiFi]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=370</guid>
		<description><![CDATA[There are a number of tutorials available on-line for sorting out WiFi in Ubuntu via the CLI, but most of them seem quite outdated, so I decided to do my own. I did this on a minimal install of Ubuntu Lucid, so it is as up-to-date as possible. The PC I was using has no [...]]]></description>
			<content:encoded><![CDATA[<p>There are a number of <a title="Ubuntu HowTo" href="http://ubuntuforums.org/showthread.php?t=202834" target="_blank">tutorials </a>available on-line for sorting out WiFi in Ubuntu via the CLI, but most of them seem quite outdated, so I decided to do my own.</p>
<p>I did this on a minimal install of Ubuntu Lucid, so it is as up-to-date as possible. The PC I was using has no Windows Manager of Graphical Display Manager, just the good old terminal so all this is done via the CLI only. I did this using a USB WiFI dongle, but it should be the same whether you use an internal card or a USB card.</p>
<p>First, you need to install the relevant software. You need to have a wired connection at this point, otherwise this wont work.</p>
<p><code>sudo apt-get install wireless-tools wpasupplicant</code></p>
<p>If you are connecting to an open network, you wont need wpasupplicant. Next, to make sure your wireless device is working as it should issue:</p>
<p><code>iwconfig</code><br />
and then<br />
<code>sudo iwlist scan</code></p>
<p>This should show you some wireless networks as proof that the WiFi device is working, if something goes wrong here, then there is a problem with your device or driver and you need to get googling.</p>
<p>If you are accessing a secured network and you really should be, you need to access the correct version of your WiFi key. To get your key, issue this command:</p>
<p><code>wpa_passphrase YOURSSID YOURWIFIPASSWORD </code></p>
<p>This will result in something that looks like this:</p>
<p><code>network={<br />
ssid="YOURSSID"<br />
#psk="YOURWIFIPASSWORD"<br />
psk=fe727aa8b64ac9b3f54c72432da14faed933ea511ecab1 5bbc6c52e7522f709a<br />
} </code></p>
<p>You need to make a note of the long phrase after psk= (NOT #psk=) as this your WiFi password in hex format.</p>
<p>Next, you need to edit your interfaces file, so issue:</p>
<p><code>sudo nano /etc/network/interfaces</code></p>
<p>At the end of this file, you need to add your WiFi configuration. Here are the options you can add.</p>
<p>auto wlan0     #change this to the name of your WiFi interface<br />
iface wlan0 inet dhcp     #this is normally fine, if you want a static IP address replace &#8220;dhcp&#8221; with &#8220;static&#8221;<br />
netmask 255.255.255.0     #change this as appropriate for your network, this value is usually right<br />
gateway 192.168.1.1     #change this as appropriate for your network<br />
address 192.168.1.100     #only needed for a static IP address<br />
dns-nameservers 192.168.1.1     #only needed for a static IP address<br />
wpa-driver wext     #you shouldn&#8217;t need to change this<br />
wpa-ssid YOURSSID     #just type the name of your SSID here<br />
wpa-ap-scan 1     #if the name of your SSID is hidden usually, type 2 instead of 1<br />
wpa-proto WPA    #if you use WPA1 type WPA, if you use WPA2 type RSN<br />
wpa-pairwise CCMP     #if you use AES type CCMP, if you use TKIP type TKIP<br />
wpa-group CCMP     #if you use AES type CCMP, if you use TKIP type TKIP<br />
wpa-key-mgmt WPA-PSK     #usually WPA-PSK (if you share a key) but sometimes WPA-EAP (for enterprises)<br />
wpa-psk YOURHEXKEYFROMABOVE     #the hex key that you generated earlier</p>
<p>Thus, since I am using a WiFi card that is identified as wlan0 and am connecting to a WPA1 AES encrypted network called MYPLACE that isn&#8217;t hidden without a static IP address, this is what I added:</p>
<p><code><br />
auto wlan0<br />
iface wlan0 inet dhcp<br />
netmask 255.255.255.0<br />
gateway 192.168.1.1<br />
wpa-driver wext<br />
wpa-ssid MYPLACE<br />
wpa-ap-scan 1<br />
wpa-proto WPA<br />
wpa-pairwise CCMP<br />
wpa-group CCMP<br />
wpa-key-mgmt WPA-PSK<br />
wpa-psk 71c81a844973ae7bb1243141e5caa7b6bb0e2d7eetcetcetc</code></p>
<p>Finally, comment out the top section so it looks like this:<br />
<code><br />
#auto eth0<br />
#iface eth0 inet dhcp</code></p>
<p>This stops your wired network from working. This helps to ensure there are no conflicts. Remember, if you want your wired network to work again, remove these two comments (the #).</p>
<p>Finally, save the file by pressing CTRL and X and then pressing Y to save to the file. Now, reboot and your network should come up. Yay!</p>
<p>Some people have found that this doesn&#8217;t always work, so the next thing to do is to edit the configuration file for the wpasupplicant program. Do this by issuing:</p>
<p><code>sudo nano /etc/wpa_supplicant.conf</code></p>
<p>Basically, you add pretty much the same information here as you did to the interfaces file, except without the wpa- part. So, my file looks like this:</p>
<p><code><br />
ap_scan=1<br />
ctrl_interface=/var/run/wpa_supplicant<br />
network={<br />
ssid="MYPLACE"<br />
scan_ssid=0<br />
psk=71c81a844973ae7bb1243141e5caa7b6bb0e2d7eetcetcetc<br />
key_mgmt=WPA-PSK<br />
proto=WPA<br />
pairwise=CCMP<br />
group=CCMP<br />
}</code></p>
<p>As far as I am aware, the options are the same. So, edit this file as necessary, make sure you add the ctrl_interface and network={ at the beginning and the } part at the end. Save it and try restarting again. If it still doesn&#8217;t work, then kick your PC, wish you had installed Windows 7 instead and go off and do some Googling. You&#8217;ll find the answer on the Ubuntu forums and you&#8217;ll be happy again.</p>
<p>Best of luck!</p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=370" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/06/25/how-to-configure-wireless-wifi-networking-in-ubuntu-via-the-command-line-cli/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/06/25/how-to-configure-wireless-wifi-networking-in-ubuntu-via-the-command-line-cli/</feedburner:origLink></item>
		<item>
		<title>FINALLY: A Bash Progress Indicator for ffmpeg that WORKS</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/XioCXCLbf0E/</link>
		<comments>http://www.prupert.co.uk/2010/05/11/finally-a-bash-progress-indicator-for-ffmpeg-that-works/#comments</comments>
		<pubDate>Tue, 11 May 2010 16:39:40 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Transcode]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=352</guid>
		<description><![CDATA[I decided to write a progress indicator for ffmpeg video conversions. This was much much much harder than I ever anticipated. I was in for a tough time. Annoyingly, for what ever reason, ffmpeg doesn&#8217;t use Carriage Returns and Line Feeds in the expected way when it outputs its output during a conversion, resulting in [...]]]></description>
			<content:encoded><![CDATA[<p>I decided to write a progress indicator for ffmpeg video conversions. This was much much much harder than I ever anticipated. I was in for a tough time. Annoyingly, for what ever reason, ffmpeg doesn&#8217;t use Carriage Returns and Line Feeds in the expected way when it outputs its output during a conversion, resulting in two days of stress for a noobie bashophile like me.</p>
<p><img class="alignleft size-medium wp-image-357" title="ffmpeg-logo" src="http://www.prupert.co.uk/wp-content/uploads/2010/05/ffmpeg-logo-300x75.png" alt="" width="300" height="75" /></p>
<p>Eventually, after hours of googling, I came across the solution. This script should be a very accurate indicator of the progress of a ffmpeg video conversion. It currently only tells you how far the conversion has progressed as a percentage, <span style="text-decoration: line-through;">but I will soon add an ETA and time to it as well (now added, see update below)</span>. It does this, by looking at the number of frames your input video file has, and then reading what frame ffmpeg is currently on every ten seconds, and printing out the percentage.</p>
<p><img class="size-medium wp-image-355 alignright" title="ffmpeg-progress" src="http://www.prupert.co.uk/wp-content/uploads/2010/05/Screenshot-2-300x134.png" alt="" width="300" height="134" /></p>
<p>You have to put in your own ffmpeg command if you want, mine is just for converting .mpg DVB-T recordings from MythTV to mkv files.<br />
To use the script, call the script with the full path of the file to be converted afterwards, e.g.: &#8220;./ffmpeg-progress.sh /home/prupert/FIVE.mpg&#8221; and it gives you something like this:</p>
<p>UPDATE:</p>
<p>I have now added an ETA function, which, as far as I can tell, should be pretty accurate, I&#8217;ll be testing it tomorrow to see how well it works. It is based on the remaining number of frames to process and the current fps that ffmpeg is working at. I also plan to convert the script to python, if possible, to make it cross platform and give it a GUI. It will also be called YAFF (Yet Another Ffmpeg Frontend).</p>
<p>Essentially, the script turns ffmpeg output from this:</p>
<p><code>frame=42992 fps= 21 q=29.0 size=  217692kB time=1717.72 bitrate=1038.2kbits/s dup=12 drop=0<br />
frame=43002 fps= 21 q=29.0 size=  217692kB time=1718.12 bitrate=1038.0kbits/s dup=12 drop=0<br />
frame=43018 fps= 21 q=29.0 size=  217756kB time=1718.76 bitrate=1037.9kbits/s dup=12 drop=0<br />
frame=43036 fps= 21 q=29.0 size=  217788kB time=1719.48 bitrate=1037.6kbits/s dup=12 drop=0<br />
frame=43050 fps= 21 q=29.0 size=  217820kB time=1720.04 bitrate=1037.4kbits/s dup=12 drop=0<br />
frame=43062 fps= 21 q=29.0 size=  217852kB time=1720.52 bitrate=1037.3kbits/s dup=12 drop=0<br />
frame=43078 fps= 21 q=29.0 size=  217884kB time=1721.16 bitrate=1037.0kbits/s dup=12 drop=0<br />
frame=43090 fps= 21 q=29.0 size=  217916kB time=1721.64 bitrate=1036.9kbits/s dup=12 drop=0<br />
frame=43106 fps= 21 q=29.0 size=  217948kB time=1722.28 bitrate=1036.7kbits/s dup=12 drop=0<br />
    Last message repeated 2 times<br />
[mpeg2video @ 0x8f7ebf0]ac-tex damaged at 15 0<br />
[mpeg2video @ 0x8f7ebf0]concealing 90 DC, 90 AC, 90 MV errors<br />
frame=43122 fps= 21 q=29.0 size=  217981kB time=1722.92 bitrate=1036.4kbits/s dup=12 drop=0<br />
frame=43140 fps= 21 q=29.0 size=  218045kB time=1723.64 bitrate=1036.3kbits/s dup=12 drop=0<br />
frame=43155 fps= 21 q=29.0 size=  218077kB time=1724.24 bitrate=1036.1kbits/s dup=12 drop=0<br />
frame=43168 fps= 21 q=29.0 size=  218141kB time=1724.76 bitrate=1036.1kbits/s dup=12 drop=0<br />
frame=43182 fps= 21 q=29.0 size=  218205kB time=1725.32 bitrate=1036.1kbits/s dup=12 drop=0<br />
frame=43194 fps= 21 q=29.0 size=  218237kB time=1725.80 bitrate=1035.9kbits/s dup=12 drop=0<br />
frame=43207 fps= 21 q=29.0 size=  218269kB time=1726.32 bitrate=1035.8kbits/s dup=12 drop=0</code></p>
<p>In to this:</p>
<p><code>/home/rupert/Downloads/Village of the Damned.mpg..mpg has 172447 frames, now converting<br />
ffmpeg PID = 24868<br />
ffmpeg: 43062 of 172447 frames, progress: 24% and ETA: 1h 42m 41s</code></p>
<p>Which must be a good thing in anyone&#8217;s book <img src='http://www.prupert.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>The script is hosted at github, enjoy:<br />
<script src="http://gist.github.com/397509.js?file=ffmpeg-progress.sh"></script></p>
<p><a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/uk/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-nc-sa/2.0/uk/88x31.png" /></a><br /><span xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://purl.org/dc/dcmitype/Text" property="dc:title" rel="dc:type">YAFF</span> by <a xmlns:cc="http://creativecommons.org/ns#" href="www.prupert.co.uk" property="cc:attributionName" rel="cc:attributionURL">Rupert Plumridge</a> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/uk/">Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England &amp; Wales License</a></p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=352" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/05/11/finally-a-bash-progress-indicator-for-ffmpeg-that-works/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/05/11/finally-a-bash-progress-indicator-for-ffmpeg-that-works/</feedburner:origLink></item>
		<item>
		<title>Python Android Weather Forecast Script</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/EMATuBUYACE/</link>
		<comments>http://www.prupert.co.uk/2010/04/28/python-android-weather-forecast-script/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 18:23:41 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=322</guid>
		<description><![CDATA[I am a proud owner of an HTC Hero Android phone.  I&#8217;ve recently  been messing around with one very cool looking application, that allows you to run your own scripts on the phone. This app is called Android Scripting Environment (ASE) and it is truly ace. You can use it to write and run your [...]]]></description>
			<content:encoded><![CDATA[<p>I am a proud owner of an HTC Hero Android phone. <img class="alignright size-medium wp-image-323" title="htc-hero" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/htc-hero-review-300x274.jpg" alt="" width="300" height="274" /> I&#8217;ve recently  been messing around with one very cool looking application, that allows you to run your own scripts on the phone. This app is called <a href="http://code.google.com/p/android-scripting/" target="_blank">Android Scripting Environment (ASE)</a> and it is truly ace. You can use it to write and run your own Python, Shell (Bash), Lua and Ruby scripts directly on your phone. It also hooks into various Android features, allowing you to make use of various cool Android functions, one of which is getting your location and doing cool things with that information.</p>
<p><img class="alignleft" title="ASE" src="http://code.google.com/p/android-scripting/logo?logo_id=1243886539" alt="" width="48" height="48" />I&#8217;ve been wanting to get into Python for a long time and I decided that now was a good a time as any. ASE comes with a few sample scripts to get you going, one of which gets the current weather conditions for your current location and speaks it outloud (<a href="http://code.google.com/p/android-scripting/source/browse/python/ase/scripts/say_weather.py" target="_blank">say_weather.py</a> which calls <a href="http://code.google.com/p/android-scripting/source/browse/python/ase/scripts/weather.py" target="_blank">weather.py</a>). As cool as this is, being told the current conditions isn&#8217;t that useful, I wanted to know the forecast for the next day. I thus delved in and did lots of Googling, mainly using <a href="http://www.faqs.org/docs/diveintopython/kgp_parse.html" target="_blank">this awesome page</a> that teaches you how to parse XML files (which is the format Google delivers its weather forecast info in). The biggest issue was the XML feed from Google doesn&#8217;t clarify the difference between the five day forecasts until you get to an actual data reading. The XML feed looks like this:</p>
<pre class="brush: xml;">
&lt;xml_api_reply version=&quot;1&quot;&gt;
      &lt;weather module_id=&quot;0&quot; tab_id=&quot;0&quot; blah&gt;
		&lt;forecast_information&gt;
			&lt;city data=&quot;Bristol, Avon&quot;/&gt;
                        &lt;postal_code data=&quot;bs167eb&quot;/&gt;
                        &lt;latitude_e6 data=&quot;&quot;/&gt;
                        &lt;longitude_e6 data=&quot;&quot;/&gt;
			&lt;forecast_date data=&quot;2010-04-28&quot;/&gt;
                        &lt;current_date_time data=&quot;2010-04-28 12:50:00 +0000&quot;/&gt;
                        &lt;unit_system data=&quot;US&quot;/&gt;
		&lt;/forecast_information&gt;
		&lt;current_conditions&gt;
			&lt;condition data=&quot;Clear&quot;/&gt;
			&lt;temp_f data=&quot;64&quot;/&gt;&lt;temp_c data=&quot;18&quot;/&gt;
			&lt;humidity data=&quot;Humidity: 52%&quot;/&gt;
			&lt;icon data=&quot;/ig/images/weather/sunny.gif&quot;/&gt;
			&lt;wind_condition data=&quot;Wind: S at 16 mph&quot;/&gt;
		&lt;/current_conditions&gt;
		&lt;forecast_conditions&gt;
			&lt;day_of_week data=&quot;Wed&quot;/&gt;
			&lt;low data=&quot;51&quot;/&gt;
			&lt;high data=&quot;66&quot;/&gt;
			&lt;icon data=&quot;/ig/images/weather/chance_of_rain.gif&quot;/&gt;
			&lt;condition data=&quot;Chance of Rain&quot;/&gt;
		&lt;/forecast_conditions&gt;
		&lt;forecast_conditions&gt;
			&lt;day_of_week data=&quot;Thu&quot;/&gt;
			&lt;low data=&quot;46&quot;/&gt;
			&lt;high data=&quot;60&quot;/&gt;
			&lt;icon data=&quot;/ig/images/weather/chance_of_rain.gif&quot;/&gt;
			&lt;condition data=&quot;Chance of Rain&quot;/&gt;
		&lt;/forecast_conditions&gt;
		&lt;forecast_conditions&gt;
			&lt;day_of_week data=&quot;Fri&quot;/&gt;
			&lt;low data=&quot;48&quot;/&gt;
			&lt;high data=&quot;55&quot;/&gt;
			&lt;icon data=&quot;/ig/images/weather/chance_of_rain.gif&quot;/&gt;
			&lt;condition data=&quot;Chance of Rain&quot;/&gt;
		&lt;/forecast_conditions&gt;
		&lt;forecast_conditions&gt;
			&lt;day_of_week data=&quot;Sat&quot;/&gt;
			&lt;low data=&quot;44&quot;/&gt;
			&lt;high data=&quot;59&quot;/&gt;
			&lt;icon data=&quot;/ig/images/weather/chance_of_rain.gif&quot;/&gt;
			&lt;condition data=&quot;Chance of Rain&quot;/&gt;
		&lt;/forecast_conditions&gt;
	&lt;/weather&gt;
</pre>
<p>Now, I know nothing about XML at all, but I found it impossible to get the first actual forecast from the XML data, as each forecast was simply called &#8220;forecast_conditions&#8221;, using the method in the original weather.py. Thus, after reading the handy tutorial from faqs.org (listed above) I realised I needed to use the nested childNodes function of the xml.dom function that you use in Python to parse XML files.</p>
<p>After lots of trial and error, I worked out the following. A node is a name given to a section named via</p>
<pre class="brush: xml;">
&lt;some_name&gt;
</pre>
<p>. First, you assign a name (in this came dom) to the XML you are reading by doing: <code>dom = minidom.parseString(xml_response)</code>, then I want to get information out of the  node. To move through the nodes, you use the following command <code>dom1Node = dom.firstChild</code> where dom was the name of the original XML file. All this does is move to the first node and give it a name (dom1Node in my case), thus we are now at</p>
<pre class="brush: xml;">
&lt;xml_api_reply version=&quot;1&quot;&gt;
</pre>
<p>. You then use <code>dom2Node = dom1Node.firstChild</code> to move to the next node and give it a name, thus we are now at</p>
<pre class="brush: xml;">
&lt;weather module_id=&quot;0&quot; tab_id=&quot;0&quot; mobile_row=&quot;0&quot; mobile_zipped=&quot;1&quot; row=&quot;0&quot; section=&quot;0&quot;&gt;
</pre>
<p>. Finally, we have got somewhere, because the childNodes (i.e. the ones beneath the node we are at) are the ones with interesting info, such as</p>
<pre class="brush: xml;">
&lt;forecast_information&gt;
</pre>
<p>and most importantly</p>
<pre class="brush: xml;">
&lt;forecast_conditions&gt;
</pre>
<p>. So, finally, we can now assign names to these childNodes that we want. So we use <code>current = dom2Node.childNodes[1]</code> for the  node (the numbering starts at 0 not 1) and <code>forecast = dom2Node.childNodes[2]</code> for the first forecast. Finally, to get the actual data out of those nodes, we use the following command <code>data['flow'] = forecast.getElementsByTagName('low')[0].getAttribute('data')</code>. What this does is give the name &#8220;flow&#8221; to the data element with the Tag name &#8220;low&#8221; from the &#8220;forecast&#8221; node that we defined just above. So, essentially, it navigates to  and extracts the value &#8220;51&#8243; from it.</p>
<p>Thus, using this technique, you can get all the forecast data you want. I therefore ended up with this script, forecast.py, to replace the weather.py, to return forecast data:<br />
<script src="http://gist.github.com/382207.js?file=forecast.py"></script> And I then edited the say_weather.py to say the forecast as well as the current conditions, resulting in say_forecast.py: <script src="http://gist.github.com/382207.js?file=say_forecast.py"></script></p>
<p>The only problem I had with this was that the Google XML feed only appears to give the temp in fahrenheit, not celcius. I can see that you can set the iGoogle to display the temp in celcius, but I couldn&#8217;t see how to get that info from a feed.</p>
<p>Now, the next thing on the cards is to make a widget that displays this data on the homescreen. I was thinking of saving the output of the python script to a text file and then make a widget that reads that text file and displays the data. If I can do that, I can then modify the python script to do all sorts of cool things (get news, info from my mythtv HTPC etc).</p>
<p>Sadly, it seems on my version of Android (Cupcake (1.5)) you can&#8217;t call ASE scripts automatically via Locale or Tasker, since I get an ASE Force Closed message whenever I try to <img src='http://www.prupert.co.uk/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  So these currently have to be run manually. Still, this is my first piece of Python coding and it was much easier than I thought it would be, once I got my head round it all.</p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=322" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/28/python-android-weather-forecast-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/28/python-android-weather-forecast-script/</feedburner:origLink></item>
		<item>
		<title>locale VS Settings Profile VS Tasker</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/WPE84UjYAyI/</link>
		<comments>http://www.prupert.co.uk/2010/04/28/locale-vs-settings-profile-vs-tasker/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 15:27:15 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Review]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=333</guid>
		<description><![CDATA[One of the awesome things about Android is that you can customise it how you want and not how that floppy-shoe-wearing-control-freak Steve Jobs decides. There are various apps out there designed to let you change various settings and run various things based on various conditions. The most well known is locale, which was and is [...]]]></description>
			<content:encoded><![CDATA[<p>One of the awesome things about Android is that you can customise it how you want and not how that floppy-shoe-wearing-control-freak Steve Jobs decides. There are various apps out there designed to let you change various settings and run various things based on various conditions. The most well known is <a href="http://www.twofortyfouram.com/" target="_blank"><em>locale</em></a>, which was and is very popular, although the $10 cost of moving from the free 0.X beta to v1.X with a subsequent loss of function p!ssed a lot of people off! There are also two main competitors that I know of, <a href="http://www.probeez.com/">Setting Profiles</a> and <a href="http://tasker.dinglisch.net/" target="_blank">Tasker</a>. All of them have their strengths and weaknesses, some of which I will go through now.</p>
<h2><em>locale</em></h2>
<p><em>locale</em> is generally pretty cool, yes, it is pretty expensive for an app, I think they kinda got greedy there, but it still works very well. Recent changes seem to have drastically improved battery life and it is very easy to set up. <img class="alignleft size-medium wp-image-334" title="situation" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/situation-200x300.png" alt="" width="200" height="300" /></p>
<p>You create a new situation, by first adding a condition, such as a time of day, your location (based either on GPS, WiFi or cellular) or orientation.<img class="alignright size-medium wp-image-335" title="settings" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/settings-200x300.png" alt="" width="200" height="300" /></p>
<p>Then, you add a setting, some of which you can see from the screenie on the right. The cool thing is that <em>locale </em>operates a rather awesome plugin system, allowing you to expand the settings you can change and conditions that you can set. There are loads of plugins available on the market, some free, some paid. They allow you to enable and disable syc, give you fine control over volumes and even make http GET and POST requests, for example. My main gripe with <em>locale </em>is that to get decent functionality out of it, you have to use lots of different plugins, each one using up additional memory. On it&#8217;s own, <em>locale </em>doesn&#8217;t have that many options, which is a shame. Secondly, in order for it not to be shut down by Android, it leaves a notification icon in the taskbar. Some people find this very annoying, I personally find it useful since it means you can check what <em>locale </em>is doing. Oh, and also that it&#8217;s name is in italics <img src='http://www.prupert.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h2>Setting Profiles</h2>
<p><img class="alignleft size-medium wp-image-336" title="onChargerProfile" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/onChargerProfile-200x300.png" alt="" width="200" height="300" />The next app, Setting Profiles, is pretty similar to <em>locale</em>, <img class="alignright size-medium wp-image-337" title="soundon" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/soundon-200x300.png" alt="" width="200" height="300" />but it doesn&#8217;t rely on a plugin infrastructure so much, having many more built in settings. The setup is very similar to <em>locale</em>, in that you create a profile, based on various conditions, of which there are many more than in the default version of <em>locale</em>. Then, you create rules that that profile will run, the rules can either be changing various settings (on the right), of which there are more options than in default <em>locale</em>, or running an app or posting a message. Overall, there are more built-in options and settings than in <em>locale</em>, making it more flexible. My only gripe with Settings Profile is that it doesn&#8217;t come with integration with Astrid, the awesome task (to-do) manger. Also, since it can&#8217;t be expanded with plugins, you are limited to the in-built features, though it does integrate with some other apps, such as APNdroid.</p>
<h2>Tasker</h2>
<p><img class="alignleft size-medium wp-image-338" title="profilelistall" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/profilelistall-180x300.png" alt="" width="180" height="300" />Tasker is the final app in this showdown and <img class="alignright size-medium wp-image-339" title="actioncategory-select" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/actioncategory-select-200x300.png" alt="" width="200" height="300" />one that I am least familiar with, having only used it for a few days. It is free, but still in beta and not yet available on the market. It seems there are plans to make it available on the market and for a price similar to Setting Profiles (so about half the cost of <em>locale</em>). It operates in a similar way to the other two, in that you set up profiles based on various conditions and then each profile carries out various actions. What is AWESOME about Tasker, is that is has so many built in conditions and actions, apparently it has almost 100 built in actions (see right), PLUS, it uses the <em>locale</em> API, so it can use <em>locale </em>plugins as well. For me, it is by far the most powerful out of the three and I have only begun to scratch the surface with it. However, I have found that not all the <em>locale</em> plugins work (for example the ASE and Astrid plugin) but I think these are known issues.</p>
<p>Overall, if I had to choose one, it is Tasker, which is the one I am currently using. It seems to have the most potential, the dev has lots of ToDos which all seem interesting and it is the most flexible. This isn&#8217;t to say the other two aren&#8217;t great, both <em>locale</em> and Setting Profiles are powerful good apps, I just prefer all the options that Tasker gives me. So, thumbs up to Tasker.</p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=333" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/28/locale-vs-settings-profile-vs-tasker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/28/locale-vs-settings-profile-vs-tasker/</feedburner:origLink></item>
		<item>
		<title>How To Make An Advanced Wireless Video Baby Monitor</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/baDYSf7cjH8/</link>
		<comments>http://www.prupert.co.uk/2010/04/27/how-to-make-an-advanced-wireless-video-baby-monitor/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 14:57:44 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=315</guid>
		<description><![CDATA[So, a while back, I wrote about making your own video baby monitor. This has worked very well, with one exception: at night. The webcam I used doesn&#8217;t cope very well at night, and since you are going to want to monitor your baby mostly at night, then I guess that is pretty fail. So, [...]]]></description>
			<content:encoded><![CDATA[<p>So, a while back, <a title="my first post on the topic" href="http://www.prupert.co.uk/2010/02/04/make-your-own-video-baby-monitor/" target="_blank">I wrote about making your own video baby monitor</a>. This has worked very well, with one exception: at night. The webcam I used doesn&#8217;t cope very well at night, and since you are going to want to monitor your baby mostly at night, then I guess that is pretty fail. So, I got myself a new IP / Network webcam, this time a real cheapo Chinese joby from eBay.  One of these:</p>
<p><img class="alignright size-full wp-image-317" title="326143492_tp" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/326143492_tp.jpg" alt="" width="300" height="300" />Now, this camera actually isn&#8217;t half bad. It&#8217;s got 10 IR LEDs for night vision, it claims to be 10MP, but I am not so sure about that, however the picture quality is fine. It also has audio in and out. Now, sadly, the audio in is pretty terrible, very smothered and fuzzy. I think that is partly down to the low bit rate it uses, but also because the microphone is blocked by the bodywork, which I&#8217;ll try and fix one day. The cool thing is that it has pan and tilt built in, so you can move it around to get something in picture, so you haven&#8217;t got to get up to move the camera if your baby has moved around somewhere.</p>
<p>The only issue I came across, was getting a video feed WITH audio out of this thin on Linux. It offers an ActiveX solution for IE, but only a video feed for FireFox, without audio (the fact it offers any FireFox compatibility at all is pretty cool). Now, the webcam doesn&#8217;t advertise what it is, since it turns out it is a rip off a webcam made by Fosscam. It is actually a Netwave IP camera. This was my major hurdle in working out how to use it. After literally hours and hours or googling and posting on <a title="Ask Meta Filter" href="http://ask.metafilter.com/151781/How-can-I-decode-HTTP-traffic-from-an-IP-webcam-into-full-URLs" target="_blank">metafi</a> I finally found out how to get an video stream with audio out of it. It turns out the solution is quite simple, you just use this address in VLC&#8217;s streaming media source input:<br />
<code></p>
<p>http://IPADDRESS:PORT/videostream.asf?user=admin&amp;resolution=32</code></p>
<p>Of course, if you changed the username, change it here and if you have a password, then add &amp;pwd=PASSWORD or whatever it is. I found this address from an awesome PDF that lists all the Fosscam&#8217;s cgi commands and since the Netwave is a ripoff of the Fosscam, it uses the same commands.</p>
<p>You can find the PDF here: <a title="the PDF" href="http://www.drivehq.com/file/df.aspx/publish/bubbah/PublicFolder/IPCAMCGISDKV1.7.pdf" target="_blank">http://www.drivehq.com/file/df.aspx/publish/bubbah/PublicFolder/IPCAMCGISDKV1.7.pdf</a></p>
<p>There are loads of other options, you can basically configure the  whole camera through cgi calls, though, beware, you can mess up and lock  yourself out of the camera if you don&#8217;t know what you are doing. Here are a snippet of some of the commands:</p>
<p><code>Take a photo: /snapshot.cgi[?user=&amp;pwd=&amp;next_url=] Parameters user:username pwd:password next_url:the name of snapshot</code></p>
<p><code>Use server push mode to send videostream (no audio) /videostream.cgi[?user=&amp;pwd=&amp;resolution=] Parameters user:username pwd:password Resolution:8:320*240 32:640*480</code></p>
<p><code>Send videostream in asf format, only support vlc player and mplayer (with audio): /videostream.asf[?user=&amp;pwd=&amp;resolution=] Parameters user:username pwd:password Resolution: 8:320*240 32:640*480</code></p>
<p><code>Get device status info: /get_status.cgi Parameters now:The count of seconds form 1970-1-1 0:0:0 to now alarm_status: 0:no alarm  1:motion alarm 2:input alarm ddns_status:DDNS status upnp_status:UPNP status<br />
</code></p>
<p><code>Get camera params: /get_camera_params.cgi[?user=&amp;pwd=] Parameters user:username pwd:password Resolution: 8: 320*240 32: 640*480 Brightness: 0-255 Contrast: 0-6 Mode: 0: 50hz 1: 60hz 2 outdoor format Flip: 0: initial 1: vertical rotate 2: horizontal rotate 3: vertical + horizontal rotate</code></p>
<p><code>Set misc parameters of camera:  /set_misc.cgi?[led_mode=&amp;ptz_center_onstart=&amp;ptz_auto_patrol_interval=&amp;ptz_auto_patrol_type=&amp;ptz_patrol_h_rounds=&amp;ptz_patrol_v_rounds=&amp;next_url=]<br />
Parameters Led_mode: 0:mode1 1:model2 2:shut off the led Ptz_center_onstart: =1 Ptz_auto_patrol_interval, =0: no auto rotating Ptz_auto_patrol_type: 0:no rotate 1:horizontal 2: vertical 3: horizontal + vertical</code></p>
<p>I can also access the camera through it&#8217;s http interface or by using an Android app called IP Camera Lite, which allows me to pan and tilt the camera remotely.</p>
<p>Anyway, using this method, I now have a remote controllable camera that has really good night vision and with audio, all viewable via VLC. Sample nigh time pictures to follow <img src='http://www.prupert.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=315" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/27/how-to-make-an-advanced-wireless-video-baby-monitor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/27/how-to-make-an-advanced-wireless-video-baby-monitor/</feedburner:origLink></item>
		<item>
		<title>Ubuntu Lynx (10.04 LTS)</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/iHqeGrDymkI/</link>
		<comments>http://www.prupert.co.uk/2010/04/27/ubuntu-lynx-10-4-lts/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 14:01:18 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=313</guid>
		<description><![CDATA[I&#8217;m a regular user of Ubuntu, using it now on my laptop, one of my work PCs (the other runs XP for Microsoft Office compatibility), my HTPC and my XBMC box. Yeah, I know, I have too many PCs. It seems Canonical (the developers of Ubuntu) are keen to push the next release, called Lucid [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a regular user of Ubuntu, using it now on my laptop, one of my work PCs (the other runs XP for Microsoft Office compatibility), my HTPC and my XBMC box. Yeah, I know, I have too many PCs.</p>
<p>It seems Canonical (the developers of Ubuntu) are keen to push the next release, called Lucid Lynx, or 10.4 LTS (Long Term Support). To help the push, they have published a number of badges for websites.</p>
<p>Here are all of them, since I love Ubuntu so much <img src='http://www.prupert.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
<script type="text/javascript" src="http://www.ubuntu.com/files/countdown/display.js"></script></p>
<p><script type="text/javascript" src="http://www.ubuntu.com/files/countdown/display1.js"></script></p>
<p><script type="text/javascript" src="http://www.ubuntu.com/files/countdown/display2.js"></script></p>
<p><a href="http://www.ubuntu.com/"><img src="http://www.ubuntu.com/files/countdown/static.png" width="180" height="150" alt="Ubuntu: For Desktops, Servers, Netbooks and in the cloud" border="0" /></a></p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=313" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/27/ubuntu-lynx-10-4-lts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/27/ubuntu-lynx-10-4-lts/</feedburner:origLink></item>
		<item>
		<title>Simple Bash Progress Script</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/e0GpMo-fP3k/</link>
		<comments>http://www.prupert.co.uk/2010/04/21/simple-bash-progress-script/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 12:27:49 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=305</guid>
		<description><![CDATA[So, I wanted a way to monitor the progress of a Bash script I was running, since it could take a long time to run on occassion and I wasn&#8217;t sure if it had failed or not. After some Ubuntu Forum googling, I came up with this: #!/bin/bash time=( $(tac /var/log/rsback/work-daily &#124; grep -m 1 [...]]]></description>
			<content:encoded><![CDATA[<p>So, I wanted a way to monitor the progress of a Bash script I was running, since it could take a long time to run on occassion and I wasn&#8217;t sure if it had failed or not.</p>
<p>After some Ubuntu Forum googling, I came up with this:<br />
<code><br />
#!/bin/bash<br />
time=( $(tac /var/log/rsback/work-daily | grep -m 1 "total runtime" | awk '{ print $6 }') )<br />
echo "last running time was" $time<br />
/bin/rsback -v work-daily >> /var/log/rsback/work-daily &#038;<br />
pid=$!<br />
trap "<br />
	#[ -e /proc/$pid ] &#038;&#038; kill $pid<br />
#" EXIT</code><br />
<code><br />
while [ -e /proc/$pid ]; do<br />
	sleep 10<br />
	runtime=( $(ps ax | grep -m 1 zenity | awk '{print $4}') )<br />
	echo "#" $runtime<br />
done | zenity --width 500 --progress --pulsate --title="work-daily running time: $time" --text="running time:" --auto-close<br />
retval=$?</code><br />
<code><br />
# If the progress bar was canceled, give a warning.<br />
if [ $retval -ne 0 ]; then<br />
	zenity --title="work-daily rsback" --error --text="the work-daily rsback was cancelled" || exit 1<br />
	kill $pid<br />
fi<br />
time=( $(tac /var/log/rsback/work-daily | grep -m 1 "total runtime" | awk '{ print $6 }') )<br />
zenity --info --title "Work rsback" --text "work rsback done in $time"<br />
exit</code></p>
<p>It seems to work pretty well, though obviously this is customised for my particular needs (so it uses the command&#8217;s own log location etc). I thought I would share it with the world, since it took me a while to figure out. When I get the chance, I&#8217;ll update it to it can work with any command or script <img src='http://www.prupert.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=305" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/21/simple-bash-progress-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/21/simple-bash-progress-script/</feedburner:origLink></item>
		<item>
		<title>32% Of The Top 25 Software Companies Are Gaming Companies</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/O3hniXnk6P4/</link>
		<comments>http://www.prupert.co.uk/2010/04/21/32-of-the-top-25-software-companies-are-gaming-companies/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 12:10:23 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=300</guid>
		<description><![CDATA[I came across this little table during my work today and was totally blown away. Almost a third of the Top 25 Software Companies (based on revenue) are in the Gaming Industry (source). It is crazy that people who game are still regarded as Geeks and Social Recluses and there is still no decent Computer [...]]]></description>
			<content:encoded><![CDATA[<p>I came across this little table during my work today and was totally blown away. Almost a third of the Top 25 Software Companies (based on revenue) are in the Gaming Industry (<a title="teh source" href="http://www.softwaretop100.org/software-top-100/global-software-top-100-edition-2009" target="_blank">source</a>). It is crazy that people who game are still regarded as Geeks and Social Recluses and there is still no decent Computer Games program here on terestial TV in the UK (whilst Property Porn shows dominate the TVerse (since most Media Execs have invested all their cash in Property and are desperate to artificially prop up a market that has been over-valued for decades&#8230;)). Makes.You.Sick.</p>
<p>&lt;disclosure&gt;I am a PS3, PSP, PC and Wii gamer.&lt;/disclosure&gt;</p>
<div id="attachment_301" class="wp-caption alignleft" style="width: 635px"><img class="size-full wp-image-301" title="softwarecomps" src="http://www.prupert.co.uk/wp-content/uploads/2010/04/softwarecomps.png" alt="" width="625" height="502" /><p class="wp-caption-text">That&#39;s a lot of Gaming Companies.</p></div>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=300" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/21/32-of-the-top-25-software-companies-are-gaming-companies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/21/32-of-the-top-25-software-companies-are-gaming-companies/</feedburner:origLink></item>
		<item>
		<title>Automatically Update FFMPEG and x264 From Source / SVN In Ubuntu</title>
		<link>http://feedproxy.google.com/~r/pruperting/~3/H3RqEG9Ckf8/</link>
		<comments>http://www.prupert.co.uk/2010/04/16/automatically-update-ffmpeg-and-x264-from-source-svn-in-ubuntu/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 15:55:28 +0000</pubDate>
		<dc:creator>prupert</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Transcode]]></category>

		<guid isPermaLink="false">http://www.prupert.co.uk/?p=289</guid>
		<description><![CDATA[Whenever I wish to install and use the rather excellent video and audio transcode programs ffmpeg and x264 I have used FakeOutdoorsman&#8217;s excellent How To from the Ubuntu Forums. However, constantly typing out all the commands, especially when updating, is a pain in the arse. I thus decided, with FakeOutdoorsman&#8217;s permission, to write some scripts [...]]]></description>
			<content:encoded><![CDATA[<p>Whenever I wish to install and use the rather excellent video and audio transcode programs ffmpeg and x264 I have used FakeOutdoorsman&#8217;s excellent How To from the <a href="http://ubuntuforums.org/showthread.php?t=786095" target="_blank">Ubuntu Forums</a>. However, constantly typing out all the commands, especially when updating, is a pain in the arse.</p>
<p>I thus decided, with FakeOutdoorsman&#8217;s permission, to write some scripts to automate the task. They are, I hope, fairly comprehensive and allow a user to build and install the latest version of ffmpeg and x264, from source for Ubuntu Hardy, Intrepid, Jaunty, Karmic and Lucid. They allow this to be done automatically, after a few questions have been answered.</p>
<p>There are four scripts in total, one for the initial install, one for keeping everything up-to-date, one to reverse the changes with minimal impact and one to completely reverse all changes (this one I recommend no-one using, hence it is depreciated, but it is there in case some one wants it).</p>
<p>I am certainly not the best at bash, but I have done lots of Googling and I think the script is fairly robust, though I am sure there are errors.</p>
<p>I will be adding to the script over time, adding new features, combining things, adding better error checking etc, so for now consider them BETA releases. They have been tested on Lucid and Karmic only, but they appeared to work.</p>
<p>Please submit any questions here or at the project hosting page.</p>
<p>So, where are the files?</p>
<p>You can get all the scripts here:</p>
<p><a title="Google Code Page" href="http://code.google.com/p/x264-ffmpeg-up-to-date/" target="_blank">http://code.google.com/p/x264-ffmpeg-up-to-date/</a></p>
<p>Have fun!</p>
 <img src="http://www.prupert.co.uk/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=289" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.prupert.co.uk/2010/04/16/automatically-update-ffmpeg-and-x264-from-source-svn-in-ubuntu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.prupert.co.uk/2010/04/16/automatically-update-ffmpeg-and-x264-from-source-svn-in-ubuntu/</feedburner:origLink></item>
	</channel>
</rss>
