<?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" version="2.0">

<channel>
	<title>blog.foosion.org</title>
	
	<link>http://blog.foosion.org</link>
	<description>Just another WordPress weblog</description>
	<pubDate>Wed, 23 Sep 2009 10:30:23 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/foosion" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Stick Figure Guide to AES</title>
		<link>http://blog.foosion.org/2009/09/23/stick-figure-guide-to-aes/</link>
		<comments>http://blog.foosion.org/2009/09/23/stick-figure-guide-to-aes/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 10:29:31 +0000</pubDate>
		<dc:creator>micele</dc:creator>
		
		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[aes]]></category>

		<category><![CDATA[comic]]></category>

		<category><![CDATA[crypto]]></category>

		<category><![CDATA[fun]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=59</guid>
		<description><![CDATA[On Ben Laurie&#8217;s blog I found a really nice comic explaining the Advanced Encryption Standard  Find it here and take the time. It&#8217;s worth it!
]]></description>
			<content:encoded><![CDATA[<p>On <a href="http://www.links.org/?p=748">Ben Laurie&#8217;s blog</a> I found a <strong>really</strong> nice comic explaining the Advanced Encryption Standard <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Find it <a href="http://www.moserware.com/2009/09/stick-figure-guide-to-advanced.html">here</a> and take the time. It&#8217;s worth it!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2009/09/23/stick-figure-guide-to-aes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Benchmarking lame presets</title>
		<link>http://blog.foosion.org/2009/09/03/benchmarking-lame-presets/</link>
		<comments>http://blog.foosion.org/2009/09/03/benchmarking-lame-presets/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 07:18:12 +0000</pubDate>
		<dc:creator>micele</dc:creator>
		
		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[flac]]></category>

		<category><![CDATA[lame]]></category>

		<category><![CDATA[mp3]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=58</guid>
		<description><![CDATA[As some of you may now, I maintain a very well-regulated audio collection. Some month ago I decided to entirely kick mp3 and from now on just accept FLAC files as valid extension to this collection. Reasons for this decision are not described in one or two sentences so maybe a post on this topic [...]]]></description>
			<content:encoded><![CDATA[<p>As some of you may now, I maintain a very well-regulated audio collection. Some month ago I decided to entirely kick mp3 and from now on just accept FLAC files as valid extension to this collection. Reasons for this decision are not described in one or two sentences so maybe a post on this topic may follow in good times.<br />
However, due to the limited FLAC support for audio hardware (such as *PODs, car radios and so on) I&#8217;m still reliant on transcoding my FLAC files to mp3 if I wanna use them with such devices. Since CPU power doesn&#8217;t matter nowadays that&#8217;s not a real problem. The transcode process doesn&#8217;t comsume much more time than the actual file transfer via USB2.0. For sure I use the best mp3 codec available: <a href="http://lame.sourceforge.net/">lame</a>.<br />
Lame implements a huge list of so called presets, which have been developed further in the last years. Without discussing the presets in detail (a corresponding discussion can be found <a href="http://wiki.hydrogenaudio.org/index.php?title=Lame">here</a>), presets have to be understood as different quality levels the final mp3 is encoded. As these presets have been going through a process of refinement, different types of usage and labels have come up.<br />
It seems obvious that new and old presets have been linked internally and not all different types of presets and codec switches implement exclusive algorithms. So I did a simple benchmark in order to find out which presets/options actually have to be understood as an unique preset and which link to another one. Of course I&#8217;ve been also interested in the speed/efficiency ratio! For the test i compared the &#8220;standard&#8221; and the &#8220;extreme&#8221; respectively the V2 and V0 preset as these are most commonly used. The results are quite evident and are listed below.</p>
<p><strong><u>Setup:</u></strong>
<ul>
<li><b>codec:</b> lame 3.98.2</li>
<li><b>OS:</b> Linux 2.6.29</li>
<li><b>CPU:</b> Intel L2300 2x (1500MHz, 2MB)</li>
<li><b>Testfile:</b> WAVE (60MB), Tracklength: 5:25 </li>
</ul>
<p><strong><u>Results:</u></strong></p>
<table border="1">
<tr>
<th> preset </th>
<th> time consumed </th>
<th> file size </th>
<th> md5sum </th>
<th> header entry </th>
</tr>
<tr>
<td>&#8211;vbr-new -V0</td>
<td>29,40s</td>
<td><font color=green>10763184</font></td>
<td><font color=green>6be8&#8230;.ea37</font></td>
<td>-V0n</td>
</tr>
<tr>
<td>&#8211;vbr-new -V2</td>
<td>28,81s</td>
<td><font color=blue>9258816</font></td>
<td><font color=blue>0915&#8230;.cd2d</font></td>
<td>-V2n</td>
</tr>
<tr>
<td>-vbr-old -V0</td>
<td>39,80s</td>
<td><font color=orange>10590624</font></td>
<td><font color=orange>151c&#8230;.9071</font></td>
<td>-V0</td>
</tr>
<tr>
<td>-vbr-old -V2</td>
<td>41,20s</td>
<td><font color=red>8872680</font></td>
<td><font color=red>f802&#8230;.9073</font></td>
<td>-V2</td>
</tr>
<tr>
<td>&#8211;preset fast extreme</td>
<td>29,41s</td>
<td><font color=green>10763184</font></td>
<td><font color=green>6be8&#8230;.ea37</font></td>
<td>-V0n</td>
</tr>
<tr>
<td>&#8211;preset fast standard</td>
<td>26,38s</td>
<td><font color=blue>9258816</font></td>
<td><font color=blue>0915&#8230;.cd2d</font></td>
<td>-V2n</td>
</tr>
<tr>
<td>&#8211;preset extreme</td>
<td>39,21s</td>
<td><font color=orange>10590624</font></td>
<td><font color=orange>151c&#8230;.9071</font></td>
<td>-V0</td>
</tr>
<tr>
<td>&#8211;preset standard</td>
<td>40,69s</td>
<td><font color=red>8872680</font></td>
<td><font color=red>f802&#8230;.9073</font></td>
<td>-V2</td>
</tr>
</table>
<p>The results look pretty obvious. It seems that internally <em>&#8211;vbr-new</em> is identical with <em>&#8211;preset fast</em> and the same is true for <em>&#8211;vbr-old</em> and <em>&#8211;preset</em>. So in other words, the old scheme <em>&#8211;preset</em> isn&#8217;t used anymore respectively there is always an equivalent for the old and the new preset style.<br />
I still own old mp3 files where header fields say &#8220;aps&#8221; for &#8220;alt preset standard&#8221; or &#8220;ape&#8221; for &#8220;alt preset extreme&#8221;. However mp3 files encoded with current versions of lame will always be marked with the modern vbr-new style, which is also an indication that the old presets don&#8217;t have exclusive relevance anymore.<br />
Furthermore it can be seen, that the new algorithm user by <em>&#8211;vbr-new</em> and <em>&#8211;preset fast</em> is significant faster (around 25-30%) with slight losing in compression efficiency.</p>
<p>Of course all this is not representative on a large scale but it gives an idea of differences and ratios of different preset types. But for all that FLAC should always be first choice for audio encoding, since good music doesn&#8217;t deserve to get encoded lossy <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2009/09/03/benchmarking-lame-presets/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What the FLAC? A journey from MP3 to FLAC</title>
		<link>http://blog.foosion.org/2009/07/29/what-the-flac-a-journey-from-mp3-to-flac/</link>
		<comments>http://blog.foosion.org/2009/07/29/what-the-flac-a-journey-from-mp3-to-flac/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 07:13:24 +0000</pubDate>
		<dc:creator>bene</dc:creator>
		
		<category><![CDATA[english]]></category>

		<category><![CDATA[amarok]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[flac]]></category>

		<category><![CDATA[mp3]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=57</guid>
		<description><![CDATA[One of my current idle tasks is to nurse and improve my music collection. A result of that work is a pretty mature specification of how my digital music collection should look like - properly tagged and a consistent file and directory structure of course.
The most recent spleen is the migration from MP3 to FLAC. [...]]]></description>
			<content:encoded><![CDATA[<p>One of my current idle tasks is to nurse and improve my music collection. A result of that work is a pretty mature <em>specification</em> of how my digital music collection should look like - properly tagged and a consistent file and directory structure of course.</p>
<p>The most recent spleen is the migration from <a title="MP3" href="http://wiki.hydrogenaudio.org/index.php?title=MP3">MP3</a> to <a title="FLAC" href="http://wiki.hydrogenaudio.org/index.php?title=FLAC">FLAC</a>. That spleen actually emerged during a nasty file system corruption which was caused by the experimental ext4 driver.  As a consequence,  a considerable amount of recently created MP3 files had audible glitches.</p>
<p>While I tried to find all broken music files, I realized that MP3 wasn&#8217;t exactly designed to check them for integrity - it&#8217;s <strong>lossy</strong> in every meaning <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_confused.gif' alt=':?' class='wp-smiley' /> </p>
<p>FLAC is different - it&#8217;s <strong>lossless</strong> in every meaning <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> At least one is able to indicate a broken file as such: FLAC integrates a 16-bit CRC for each frame and a MD5 signature of the unencoded audio data. It&#8217;s also open, fast and well supported by almost every player software out there. As disk space is becoming cheaper and cheaper and the transcoding speed (eg. FLAC → OGG) is even faster as the transfer speed of USB 2.0, there are few counter arguments remaining.</p>
<h2>How to keep Amarok statistics?</h2>
<p>My favorite audio player is <a title="Amarok" href="http://amarok.kde.org/en">Amarok</a>. Besides many other features it tracks  which songs you like, when  and how often you played them.</p>
<p>During the migration I wouldn&#8217;t want to lose those stats. This is where a nice feature comes into play: <a href="http://amarok.kde.org/wiki/AFT">Amarok File Tracking (AFT)</a>. It enables Amarok to identify an audio track, even if it is moved or renamed. Moving/Renaming, isn&#8217;t that exactly what we&#8217;re doing? Right!</p>
<p>I asked an Amarok developer (Jeff Mitchell) how AFT could be <span style="text-decoration: line-through;">abused</span> leveraged for my needs. He immediately <a href="http://www.gitorious.org/amarok/amarok/commit/73d6b4d45fdc594a4d2de989d926b255d036c6fb">fixed</a> AFT to work with FLAC and gave me migration instructions:</p>
<ol>
<li>Use <tt>amarok_afttagger</tt> to embed identifiers into your MP3s.</li>
<li>Make sure that those files are scanned into Amarok (full rescan), so<br />
the UIDs in the tags overwrite the ones that were auto-generated before.</li>
<li><strong>Use a script to transfer the identifiers into the FLACs.</strong></li>
<li>Remove the MP3s from Amarok&#8217;s collection, add the FLACs, and do a<br />
full rescan.</li>
</ol>
<p>Step 3. might be most difficult.<br />
AFT uses the <a href="http://www.id3.org/id3v2.4.0-frames#line-230">UFID header</a> in case of a MP3 (ID3) and a Vorbis comment in case of a FLAC.<br />
To transfer the unique identifier from MP3 to FLAC all you need to do is to &#8220;copy/paste&#8221; that tag.</p>
<p>After you successfully ran step 2. you can dump the UFID of a MP3 file using some ID3 tool like <a href="http://eyed3.nicfit.net/">eyeD3</a>:<br />
<code>12 Clarity.mp3	[ 7.96 MB ]<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
Time: 4:03	MPEG1, Layer III	[ ~274 kb/s @ 44100 Hz - Joint stereo ]<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
ID3 v2.4:<br />
title: Clarity		artist: Jimmy Eat World<br />
album: Clarity		year: 1999<br />
track: 12/13		genre: Rock (id 17)<br />
Publisher/label: Capitol Records<br />
<strong>Unique File ID: [Amarok 2 AFTv1 - amarok.kde.org] 62e164257a0c5c01761ac7740269d31c</strong><br />
Unique File ID: [http://musicbrainz.org] fec93932-51af-4f05-8aa1-3457bbc1e3b4</code><br />
The identifier (<tt>62e164257a0c5c01761ac7740269d31c</tt>) can then be inserted into the corresponding FLAC file.</p>
<h2>Automation</h2>
<p>To automate the transfer of the identifier, I wrote a <a href="http://github.com/bwaldvogel/amarok-ufid-tool/tree/master">small python script</a> (using <a href="http://code.google.com/p/mutagen/">Mutagen</a>).<br />
Given the case, that all files are properly assigned a MusicBrainz trackid (eg. using <a href="http://musicbrainz.org/doc/PicardTagger">Picard</a>), it can be used like that:</p>
<p><code># cd /music/interpret/mp3-album<br />
# <strong>amarok-ufid.py dump</strong><br />
# cp ufid.dump /music/interpret/flac-album<br />
# cd /music/interpret/flac-album<br />
# <strong>amarok-ufid.py apply</strong></code><br />
done!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2009/07/29/what-the-flac-a-journey-from-mp3-to-flac/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hiding information steganographically</title>
		<link>http://blog.foosion.org/2008/12/04/hiding-information-steganographically/</link>
		<comments>http://blog.foosion.org/2008/12/04/hiding-information-steganographically/#comments</comments>
		<pubDate>Wed, 03 Dec 2008 23:33:59 +0000</pubDate>
		<dc:creator>bene</dc:creator>
		
		<category><![CDATA[english]]></category>

		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[steganography]]></category>

		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=55</guid>
		<description><![CDATA[
I just found this nice Unix tool to hide sensible data in your multimedia files like JPEG images: steghide
It attaches the secret in compressed+encrypted form and even adds a checksum  
The usage is quite simple:
# steghide embed -cf hidden.jpg -ef secret.txt
# steghide extract -sf hidden.jpg
]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.foosion.org/wp-content/uploads/2008/12/hidden.jpg"><img class="alignright" title="Hidden Information" src="http://blog.foosion.org/wp-content/uploads/2008/12/hidden-125x150.jpg" alt="" width="125" height="150" /></a></p>
<p>I just found this nice Unix tool to hide sensible data in your multimedia files like JPEG images: <a title="steghide" href="http://steghide.sourceforge.net">steghide</a></p>
<p>It attaches the secret in compressed+encrypted form and even adds a checksum <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>The usage is quite simple:</p>
<p><tt># steghide embed -cf hidden.jpg -ef secret.txt</tt><br />
<tt># steghide extract -sf hidden.jpg</tt></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/12/04/hiding-information-steganographically/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Iotop</title>
		<link>http://blog.foosion.org/2008/06/30/iotop/</link>
		<comments>http://blog.foosion.org/2008/06/30/iotop/#comments</comments>
		<pubDate>Mon, 30 Jun 2008 22:51:55 +0000</pubDate>
		<dc:creator>bene</dc:creator>
		
		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[iotop]]></category>

		<category><![CDATA[kernel]]></category>

		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=54</guid>
		<description><![CDATA[One of the drawbacks of top is that it often can&#8217;t help to spot processes which push up system load so high.
High system loads are often caused by very I/O intensive tasks.
And as I/O intensive needn&#8217;t mean CPU intensive, those tasks may not even show up in top.
This is where Iotop comes into play. It [...]]]></description>
			<content:encoded><![CDATA[<p>One of the drawbacks of <a href="http://en.wikipedia.org/wiki/Top_(Unix)">top</a> is that it often can&#8217;t help to spot processes which push up <a title="System load" href="http://en.wikipedia.org/wiki/Load_(computing)">system load</a> so high.<br />
High system loads are often caused by very I/O intensive tasks.<br />
And as I/O intensive needn&#8217;t mean CPU intensive, those tasks may not even show up in <em>top</em>.</p>
<p>This is where <a href="http://guichaz.free.fr/iotop/">Iotop</a> comes into play. It is just a python script which evaluates the per-task <strong>disk</strong> I/O accounting statistics exported by the Linux kernel (2.6.20+).</p>
<p><img src="http://0x11.net/iotop.png" alt="Iotop screenshot" width="555" height="297" /></p>
<p>This is what you need to enable in your kernel configuration:</p>
<p><code>General setup<br />
[*] Export task/process statistics through netlink (EXPERIMENTAL)<br />
[ ]   Enable per-task delay accounting (EXPERIMENTAL)<br />
[*]   Enable extended accounting over taskstats (EXPERIMENTAL)<br />
[*]     Enable per-task storage I/O accounting (EXPERIMENTAL)</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/06/30/iotop/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Now THAT feels ever more like home…</title>
		<link>http://blog.foosion.org/2008/06/18/now-that-feels-ever-more-like-home/</link>
		<comments>http://blog.foosion.org/2008/06/18/now-that-feels-ever-more-like-home/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 05:15:22 +0000</pubDate>
		<dc:creator>Nils</dc:creator>
		
		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[firefox]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[mac]]></category>

		<category><![CDATA[mozilla]]></category>

		<category><![CDATA[windows]]></category>

		<category><![CDATA[www]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=52</guid>
		<description><![CDATA[
Firefox 3 is finally ready to download (though all servers are at the moment more or less overwhelmed, due to the worldrecord attempt).
Since it&#8217;s first release it integrates very well into the various systems because someone at Mozilla (after all) had the look &#38; feel in mind. I think thats a big achievement though I [...]]]></description>
			<content:encoded><![CDATA[<p><a href="https://addons.mozilla.org/en-US/firefox/addon/7525"><img class="alignnone size-full wp-image-53" title="ff3" src="http://blog.foosion.org/wp-content/uploads/2008/06/ff3.jpg" alt="" width="600" height="300" /></a></p>
<p>Firefox 3 is finally ready to <a href="http://getfirefox.com" target="_blank">download</a> (though all servers are at the moment more or less overwhelmed, due to the worldrecord attempt).</p>
<p>Since it&#8217;s first release it integrates very well into the various systems because someone at Mozilla (after all) had the look &amp; feel in mind. I think thats a big achievement though I stilled wished a support for the various password managers like the keychain or the kde wallet would have made it into the final release.</p>
<p>To top it all off, the UI gets even more &#8220;mac&#8221; with <a href="http://www.takebacktheweb.org/">Aroonax&#8217;s GrApple Theme</a> from <a href="http://www.takebacktheweb.org/">takebacktheweb.org</a>. (Which is an awesome domainname by the way <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> )</p>
<p>So folks, have a nice day and light a candle, hoping for people around the world to finally abandon this so called &#8220;internet explorer&#8221; and get their copy of web-freedom.</p>
<p>word!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/06/18/now-that-feels-ever-more-like-home/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Songbird</title>
		<link>http://blog.foosion.org/2008/06/17/songbird/</link>
		<comments>http://blog.foosion.org/2008/06/17/songbird/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 10:51:21 +0000</pubDate>
		<dc:creator>micele</dc:creator>
		
		<category><![CDATA[english]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[mac]]></category>

		<category><![CDATA[mozilla]]></category>

		<category><![CDATA[songbird]]></category>

		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=51</guid>
		<description><![CDATA[Did anyone try Songbird? As a Linux user I&#8217;m always in search of a good audio player. Of course there is Amarok and of course there is Audacious but in my eyes there is not much in between. Amarok is quite large and didn&#8217;t really work out at all on my 600MHz P3. On the [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://blog.foosion.org/wp-content/uploads/2008/06/songbird_logo_4.jpg' alt='Songbird' class='alignleft' />Did anyone try Songbird? As a Linux user I&#8217;m always in search of a good audio player. Of course there is <a href="http://amarok.kde.org/de">Amarok</a> and of course there is <a href="http://audacious-media-player.org/index.php?title=Main_Page">Audacious</a> but in my eyes there is not much in between. Amarok is quite <em>large</em> and didn&#8217;t really work out at all on my 600MHz P3. On the other hand Audacious is quite tiny but not made for handling large music archives like, .. let&#8217;s say.. mine <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
More accidentally I discovered a new audio player called <a href="http://getsongbird.com/">Songbird</a>. It somehow uses mozillas <a href="http://www.mozilla.org/projects/xul/">xul</a> and seems to be a good compromise. To be honest, I didn&#8217;t test it too much so far. This might relate to my love-hate relationship to some <a href="http://www.apple.com/itunes/">other</a> media player. Obviously the design is somehow inspired by this specific product <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
The current version 0.6 is still alpha, so please be patient. Maybe at some day it becomes a real alternative to the mentioned audio players. At least I already love it for it&#8217;s logo <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/06/17/songbird/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Linux kernel 2.6.25.6</title>
		<link>http://blog.foosion.org/2008/06/09/linux-kernel-26256/</link>
		<comments>http://blog.foosion.org/2008/06/09/linux-kernel-26256/#comments</comments>
		<pubDate>Mon, 09 Jun 2008 20:24:15 +0000</pubDate>
		<dc:creator>bene</dc:creator>
		
		<category><![CDATA[english]]></category>

		<category><![CDATA[git]]></category>

		<category><![CDATA[kernel]]></category>

		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=50</guid>
		<description><![CDATA[Chris Wright just pushed version 2.6.25.6 to the current stable kernel tree.
It&#8217;s definitely worth to check it out: There are 50 commits since 2.6.25.5, many of them backports of bugfixes in 2.6.26-rcx…
Happy compiling 
]]></description>
			<content:encoded><![CDATA[<p>Chris Wright just pushed <a href="http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.25.y.git;a=commit;h=6be2b9d741428eb461fc557e986d9921238bfb9b">version 2.6.25.6</a> to the current stable kernel tree.</p>
<p>It&#8217;s definitely worth to check it out: There are <a href="http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.25.y.git;a=shortlog;h=v2.6.25.6">50 commits</a> since 2.6.25.5, many of them backports of bugfixes in 2.6.26-rcx…</p>
<p>Happy compiling <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/06/09/linux-kernel-26256/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Parse HTML the Groovy way</title>
		<link>http://blog.foosion.org/2008/06/09/parse-html-the-groovy-way/</link>
		<comments>http://blog.foosion.org/2008/06/09/parse-html-the-groovy-way/#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:45:53 +0000</pubDate>
		<dc:creator>thomas</dc:creator>
		
		<category><![CDATA[english]]></category>

		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[Groovy]]></category>

		<category><![CDATA[html]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=49</guid>
		<description><![CDATA[In the last couple of weeks I often had to download a lot of files, submitted to a web-based teaching platform. Downloading all these files by hand is very annoying so I implemented a short Groovy script. Since Groovy has a great support for parsing well-formed XML-like information it fails if you want to parse [...]]]></description>
			<content:encoded><![CDATA[<p>In the last couple of weeks I often had to download a lot of files, submitted to a web-based teaching platform. Downloading all these files by hand is very annoying so I implemented a short Groovy script. Since Groovy has a great support for parsing well-formed XML-like information it fails if you want to parse unstructured and nasty HTML code.</p>
<p>At last I searched for a Java library containing an HTML-parsers and I found <a href="http://home.ccil.org/~cowan/XML/tagsoup/" target="_blank">TagSoup</a>. This is a SAX-compliant HTML-parser specialized in re-formating and cleaning up faulty HTML code.</p>
<blockquote><p><span style="font-family: -webkit-monospace;">This is &lt;B&gt;bold, &lt;I&gt;bold italic, &lt;/b&gt;italic, &lt;/i&gt;normal text</span></p></blockquote>
<p>will be rewritten to</p>
<blockquote><p>This is &lt;b&gt;bold, &lt;i&gt;bold italic, &lt;/i&gt;&lt;/b&gt;&lt;i&gt;italic, &lt;/i&gt;normal text.</p></blockquote>
<p>One advantage of TagSoup is the Xpath-like query mechanism. It parses the HTML code and generates an object structure representing this content. Now the user can access the single elements. One possible example could be:</p>
<p><code>def slurper = new XmlSlurper(new org.ccil.cowan.tagsoup.Parser())<br />
html = slurper.parse("an_example_file.html")<br />
table = html.body.div.find{ it.@id == "content" }.form.table.<br />
find{ it.@id == "attempts" }</code></p>
<p>This retrieves the table &#8220;attempts&#8221; placed inside a form in the div &#8220;content&#8221;. The method findAll() will retrieve all elements for a given attribute or with given child elements.</p>
<p>After all I fell in love with TagSoup. It saves a lot of work when you have to access HTML content of websites, portals or similar, which are not able to send a XHTML 1.x compliant responses. But this is an other topic <img src='http://blog.foosion.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/06/09/parse-html-the-groovy-way/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Big Buck Bunny</title>
		<link>http://blog.foosion.org/2008/06/06/big-buck-bunny/</link>
		<comments>http://blog.foosion.org/2008/06/06/big-buck-bunny/#comments</comments>
		<pubDate>Fri, 06 Jun 2008 13:23:49 +0000</pubDate>
		<dc:creator>joern</dc:creator>
		
		<category><![CDATA[english]]></category>

		<category><![CDATA[general geekery]]></category>

		<category><![CDATA[3d]]></category>

		<category><![CDATA[blender]]></category>

		<category><![CDATA[graphics]]></category>

		<category><![CDATA[rendering]]></category>

		<guid isPermaLink="false">http://blog.foosion.org/?p=45</guid>
		<description><![CDATA[Shortly after Blender 2.46, Big Buck Bunny was released recently. The new open movie (released under CC 3.0) resulted from the &#8220;Peach&#8221; project, which was already the second open movie project after project &#8220;Orange&#8221; (resulting in Elephants Dream).
Both movies demonstrate the numerous astonishing features of Blender and caused  loads of valuable feedback for improvements [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.bigbuckbunny.org"><img class="size-medium wp-image-46 alignleft" style="float: left;" title="poster_small" src="http://blog.foosion.org/wp-content/uploads/2008/06/poster_small-213x300.jpg" alt="" width="118" height="165" /></a>Shortly after <a href="http://www.blender.org/">Blender</a> 2.46, <a href="http://www.bigbuckbunny.org/">Big Buck Bunny</a> was released recently. The new open movie (released under <a href="http://creativecommons.org/licenses/by/3.0/">CC 3.0</a>) resulted from the &#8220;Peach&#8221; project, which was already the second open movie project after project &#8220;Orange&#8221; (resulting in <a href="http://www.elephantsdream.org/">Elephants Dream</a>).</p>
<p>Both movies demonstrate the numerous astonishing features of Blender and caused  loads of valuable feedback for improvements for the Blender developers. In order to keep up with the young tradition, Blender already started the follow-up  project called <a href="http://apricot.blender.org">Apricot</a> in December 2007. This time the main focus lies not only on modeling and rendering, but also on the included 3D-Engine that Blender comes with.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.foosion.org/2008/06/06/big-buck-bunny/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
