<?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>Irrelevant is my relevant ... &#187; Linux</title>
	<atom:link href="http://www.barkered.com/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.barkered.com</link>
	<description></description>
	<lastBuildDate>Sun, 11 Dec 2011 17:34:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Linux MP3 ID3 Tag Sorting Script</title>
		<link>http://www.barkered.com/2008/02/09/linux-mp3-id3-tag-sorting-script/</link>
		<comments>http://www.barkered.com/2008/02/09/linux-mp3-id3-tag-sorting-script/#comments</comments>
		<pubDate>Sat, 09 Feb 2008 11:32:37 +0000</pubDate>
		<dc:creator>barkered</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[ID3]]></category>
		<category><![CDATA[MP3]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Sorting]]></category>
		<category><![CDATA[Source]]></category>

		<guid isPermaLink="false">http://www.barkered.com/?p=200</guid>
		<description><![CDATA[This is old code and quite a &#8216;hack&#8217;. It worked for my purposes so development unfortunately stopped after the task was completed. On my linux server I had a directory of unsorted music files. I like my music to be organised by folders, for example: %artist%\%album%\*.mp3 &#8211; Death\Scream Bloody Gore\ So I began writing a [...]]]></description>
			<content:encoded><![CDATA[<p>This is old code and quite a &#8216;hack&#8217;. It worked for my purposes so development unfortunately stopped after the task was completed.</p>
<p>On my linux server I had a directory of unsorted music files. I like my music to be organised by folders, for example:</p>
<p>%artist%\%album%\*.mp3 &#8211; Death\Scream Bloody Gore\</p>
<p>So I began writing a simple C++ program to read the artist and album tags from the files, create and move the files into the correct structure.</p>
<p>This is a relatively simple task and I know C++ is not the best choice of language but I thought I would continue and see how the development of C++ within Linux would fair. Mainly from a libraries point of view and an IDE.</p>
<p>Trying to find an IDE which would do code auto completion was a task which proved difficult. KDevelop seemed bloated and unusable. I settled on using a simple code editor called codeblocks. Simple, effective and easy to use.</p>
<p>Next task was to either write a library to read tags from the files or find a suitable library.</p>
<p><a href="http://developer.kde.org/~wheeler/taglib.html">http://developer.kde.org/~wheeler/taglib.html </a></p>
<p>Was my choice, a simple generic interface for multiple music files. Quite nice.</p>
<p>So I set about writing the file, here are my results:</p>
<p><a href="http://www.barkered.com/wp-content/uploads/2007/02/mp3_sorter.zip" title="Private: mp3_sorter.zip">mp3_sorter.zip</a></p>
<p>The archive contains 3 files, the .cpp file, a simple Readme file and an sh build command.</p>
<p>To build the mp3_sorter.cpp might require you to change the include paths at the top of the file.</p>
<p>Below is the command used to build, note the taglib-config part, it automatically adds the includes and linker options for taglib.</p>
<p><strong>g++ mp3_sorter.cpp -Wno-deprecated `taglib-config &#8211;cflags &#8211;libs` -o mp3_sorter</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.barkered.com/2008/02/09/linux-mp3-id3-tag-sorting-script/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

