<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Amarok File Tracking</title>
	<atom:link href="http://jefferai.org/2008/08/amarok-file-tracking/feed/" rel="self" type="application/rss+xml" />
	<link>http://jefferai.org/2008/08/amarok-file-tracking/</link>
	<description>Amarok, KDE, and all that good stuff</description>
	<lastBuildDate>Wed, 04 Aug 2010 15:47:06 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9443</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Mon, 27 Oct 2008 21:58:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9443</guid>
		<description>Not to be snide, but haven&#039;t you ever heard of the non-portability of file locking, especially on network-based file systems? Portability FTW.</description>
		<content:encoded><![CDATA[<p>Not to be snide, but haven&#8217;t you ever heard of the non-portability of file locking, especially on network-based file systems? Portability FTW.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt Whitlock</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9442</link>
		<dc:creator>Matt Whitlock</dc:creator>
		<pubDate>Sun, 26 Oct 2008 21:41:20 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9442</guid>
		<description>Not to be snide, but haven&#039;t you ever heard of exclusive file locking?  Why copy the entire file to a new location on disk and then move it over the old one, when you can just lock the file and make your change?  File systems FTW.</description>
		<content:encoded><![CDATA[<p>Not to be snide, but haven&#8217;t you ever heard of exclusive file locking?  Why copy the entire file to a new location on disk and then move it over the old one, when you can just lock the file and make your change?  File systems FTW.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9364</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Thu, 11 Sep 2008 23:12:49 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9364</guid>
		<description>Unless you specify that the UID should be recreated, the program will simply not write a new ID to the file.  The program is designed such that there should always be one (and only one) Amarok ID (although if the format changes for some reason, a file could I suppose end up with two different versions, although different Amarok versions would only use one or the other).

Now, if you *did* specify that it should be recreated for some reason, that will not mess up statistics so long as a scan is performed on the file in the same location with the new ID.  This will create a new (location, ID) mapping and all will be well.</description>
		<content:encoded><![CDATA[<p>Unless you specify that the UID should be recreated, the program will simply not write a new ID to the file.  The program is designed such that there should always be one (and only one) Amarok ID (although if the format changes for some reason, a file could I suppose end up with two different versions, although different Amarok versions would only use one or the other).</p>
<p>Now, if you *did* specify that it should be recreated for some reason, that will not mess up statistics so long as a scan is performed on the file in the same location with the new ID.  This will create a new (location, ID) mapping and all will be well.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9363</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Thu, 11 Sep 2008 20:41:20 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9363</guid>
		<description>In the case of a shared music library that different clients can access. What would happen if each tries to write its own UID into the file?
Can there be multiple UIDs per file? If not, will that mess up Amarok&#039;s statistics?</description>
		<content:encoded><![CDATA[<p>In the case of a shared music library that different clients can access. What would happen if each tries to write its own UID into the file?<br />
Can there be multiple UIDs per file? If not, will that mess up Amarok&#8217;s statistics?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Darshan</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9360</link>
		<dc:creator>Darshan</dc:creator>
		<pubDate>Mon, 25 Aug 2008 08:06:48 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9360</guid>
		<description>Exciting stuff!  It sounds like you&#039;ve come up with a very elegant and effective solution to the problem of tracking audio files in Amarok.  Yet one more reason I&#039;m looking forward to Amarok 2.

BTW, I&#039;ve read all the comments up to this point, and I definitely agree with you on all your arguments (why not use Strigi/Nepomuk, why make afttagger and standalone utility, etc.)</description>
		<content:encoded><![CDATA[<p>Exciting stuff!  It sounds like you&#8217;ve come up with a very elegant and effective solution to the problem of tracking audio files in Amarok.  Yet one more reason I&#8217;m looking forward to Amarok 2.</p>
<p>BTW, I&#8217;ve read all the comments up to this point, and I definitely agree with you on all your arguments (why not use Strigi/Nepomuk, why make afttagger and standalone utility, etc.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9343</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Mon, 11 Aug 2008 12:17:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9343</guid>
		<description>Nepomuk-based collections will need a different method for tracking, but having some tracking put in is not impossible.  Especially since as I understand it the metadata like statistics will be stored in the Nepomuk database, not Amarok&#039;s internal one.</description>
		<content:encoded><![CDATA[<p>Nepomuk-based collections will need a different method for tracking, but having some tracking put in is not impossible.  Especially since as I understand it the metadata like statistics will be stored in the Nepomuk database, not Amarok&#8217;s internal one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Silver</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9342</link>
		<dc:creator>Silver</dc:creator>
		<pubDate>Mon, 11 Aug 2008 11:47:21 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9342</guid>
		<description>The problem is that (as I understood), Nepomuk-based collections will lack all the AFT-goodness. Did I misunderstand it?</description>
		<content:encoded><![CDATA[<p>The problem is that (as I understood), Nepomuk-based collections will lack all the AFT-goodness. Did I misunderstand it?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9341</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Mon, 11 Aug 2008 11:37:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9341</guid>
		<description>&quot;But do you agree that using Strigi would be more beneficial as the information would be widely accessible and more usable?&quot;

No, I don&#039;t.  Strigi&#039;s scanning is very general and very slow.  Amarok&#039;s scanner is very fast and highly specialized.  There&#039;s nothing wrong with having both.

&quot;If so, maybe Strigi could be used in some other way than default (either within Amarok or just with music-files) so that it would be quicker and more suitable for Amarok&#039;s purposes?&quot;

But that would defeat the point of Strigi...one of the guarantees it makes is SHA hashes, and that is the real killer as far as speed.  I don&#039;t really understand the problem you have with both being used.  Amarok has support/is getting support for a Nepomuk-based collection.  This would query Nepomuk for files scanned by Strigi and present them as a separate collection from the one that Amarok&#039;s own collection scanner will build.  People that have Strigi indexing all their music could take advantage of this collection.

I don&#039;t understand the issue here.  What&#039;s wrong with having both methods available and letting the user choose what they want?</description>
		<content:encoded><![CDATA[<p>&#8220;But do you agree that using Strigi would be more beneficial as the information would be widely accessible and more usable?&#8221;</p>
<p>No, I don&#8217;t.  Strigi&#8217;s scanning is very general and very slow.  Amarok&#8217;s scanner is very fast and highly specialized.  There&#8217;s nothing wrong with having both.</p>
<p>&#8220;If so, maybe Strigi could be used in some other way than default (either within Amarok or just with music-files) so that it would be quicker and more suitable for Amarok&#8217;s purposes?&#8221;</p>
<p>But that would defeat the point of Strigi&#8230;one of the guarantees it makes is SHA hashes, and that is the real killer as far as speed.  I don&#8217;t really understand the problem you have with both being used.  Amarok has support/is getting support for a Nepomuk-based collection.  This would query Nepomuk for files scanned by Strigi and present them as a separate collection from the one that Amarok&#8217;s own collection scanner will build.  People that have Strigi indexing all their music could take advantage of this collection.</p>
<p>I don&#8217;t understand the issue here.  What&#8217;s wrong with having both methods available and letting the user choose what they want?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Silver</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9340</link>
		<dc:creator>Silver</dc:creator>
		<pubDate>Mon, 11 Aug 2008 09:27:41 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9340</guid>
		<description>OK, yeah, instead of &quot;reinventing wheel&quot; I meant more like having one fuction in multiple places. 
 
But do you agree that using Strigi would be more beneficial as the information would be widely accessible and more usable? If so, maybe Strigi could be used in some other way than default (either within Amarok or just with music-files) so that it would be quicker and more suitable for Amarok&#039;s purposes?

And I obviously just mixed T with P, so I meant AFT instead of AFP :P</description>
		<content:encoded><![CDATA[<p>OK, yeah, instead of &#8220;reinventing wheel&#8221; I meant more like having one fuction in multiple places. </p>
<p>But do you agree that using Strigi would be more beneficial as the information would be widely accessible and more usable? If so, maybe Strigi could be used in some other way than default (either within Amarok or just with music-files) so that it would be quicker and more suitable for Amarok&#8217;s purposes?</p>
<p>And I obviously just mixed T with P, so I meant AFT instead of AFP <img src='http://jefferai.org/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9339</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 22:03:26 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9339</guid>
		<description>&quot;Full ACK. An external application seems not transparent to me, too. Who knows, how many won&#039;t even notice its existance.&quot;

It can be integrated into Amarok eventually.  The point of making it an external application is two-fold.

One, it will be easy to integrate into Amarok in some way with a script or the GUI itself.

Two, people can run it when Amarok isn&#039;t open.  This is a big plus, because doing the tagging can be a very time-consuming process.

&quot;BTW, for me personally...&quot;

From the article...

&quot;...AFT is enabled...with support for stored playlists coming eventually&quot;

With A2 playlists will be stored in the database, and exported to whatever format you desire when you want.  As a result, it will be easy to add AFT support to stored playlists, and it will be coming.  With A1, the playlists were stored as M3U files on disk, and as a result there was no way for there to be UIDs stored in them.</description>
		<content:encoded><![CDATA[<p>&#8220;Full ACK. An external application seems not transparent to me, too. Who knows, how many won&#8217;t even notice its existance.&#8221;</p>
<p>It can be integrated into Amarok eventually.  The point of making it an external application is two-fold.</p>
<p>One, it will be easy to integrate into Amarok in some way with a script or the GUI itself.</p>
<p>Two, people can run it when Amarok isn&#8217;t open.  This is a big plus, because doing the tagging can be a very time-consuming process.</p>
<p>&#8220;BTW, for me personally&#8230;&#8221;</p>
<p>From the article&#8230;</p>
<p>&#8220;&#8230;AFT is enabled&#8230;with support for stored playlists coming eventually&#8221;</p>
<p>With A2 playlists will be stored in the database, and exported to whatever format you desire when you want.  As a result, it will be easy to add AFT support to stored playlists, and it will be coming.  With A1, the playlists were stored as M3U files on disk, and as a result there was no way for there to be UIDs stored in them.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9338</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 21:50:38 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9338</guid>
		<description>Amarok makes use of many of KDE&#039;s core frameworks -- Solid, Phonon, and Plasma, plus Oxygen icons.

So it&#039;s not exactly reinventing the wheel that Amarok is using the same collection scanner it was already using in 1.4.  It hasn&#039;t really changed.  It still uses TagLib, which is a KDE-style framework if not actually a KDE framework, and which Strigi doesn&#039;t use -- so perhaps it&#039;s Strigi that reinvented the wheel when it comes to MPEG/FLAC/Vorbis file parsing.

So, why isn&#039;t Strigi used?  Well, one of the main reasons you said yourself: &quot;even though the user ain&#039;t using it for other stuff?&quot;  There is no requirement by Amarok for Strigi, and making it a requirement, along with necessary setup, is needlessely complex and intrusive.

Not only that, Amarok&#039;s collection scanner is *much* faster.  Strigi needs to read every byte of every file.  Our scanner often reads only a tiny part of the file.  Considering that many people store their files on NFS or SMB/CIFS shares, this is a very big concern.

It&#039;s also a reason why Amarok&#039;s file tracking capabilities doesn&#039;t take hashes of the whole file, or of all of the music data.

Re: &quot;Nepomuk and AFP-stuff with everything else&quot;...what does Apple Filing Protocol have anything to do with this?  That&#039;s Mac-only.</description>
		<content:encoded><![CDATA[<p>Amarok makes use of many of KDE&#8217;s core frameworks &#8212; Solid, Phonon, and Plasma, plus Oxygen icons.</p>
<p>So it&#8217;s not exactly reinventing the wheel that Amarok is using the same collection scanner it was already using in 1.4.  It hasn&#8217;t really changed.  It still uses TagLib, which is a KDE-style framework if not actually a KDE framework, and which Strigi doesn&#8217;t use &#8212; so perhaps it&#8217;s Strigi that reinvented the wheel when it comes to MPEG/FLAC/Vorbis file parsing.</p>
<p>So, why isn&#8217;t Strigi used?  Well, one of the main reasons you said yourself: &#8220;even though the user ain&#8217;t using it for other stuff?&#8221;  There is no requirement by Amarok for Strigi, and making it a requirement, along with necessary setup, is needlessely complex and intrusive.</p>
<p>Not only that, Amarok&#8217;s collection scanner is *much* faster.  Strigi needs to read every byte of every file.  Our scanner often reads only a tiny part of the file.  Considering that many people store their files on NFS or SMB/CIFS shares, this is a very big concern.</p>
<p>It&#8217;s also a reason why Amarok&#8217;s file tracking capabilities doesn&#8217;t take hashes of the whole file, or of all of the music data.</p>
<p>Re: &#8220;Nepomuk and AFP-stuff with everything else&#8221;&#8230;what does Apple Filing Protocol have anything to do with this?  That&#8217;s Mac-only.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Plangin</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9337</link>
		<dc:creator>Plangin</dc:creator>
		<pubDate>Sun, 10 Aug 2008 21:49:02 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9337</guid>
		<description>Full ACK. An external application seems not transparent to me, too. Who knows, how many won&#039;t even notice its existance.

BTW, for me personally the ATF in Amarok 1.4.x is useless because it won&#039;t refresh static playlists after renaming files (which I do quite often).

However, this feature is needed and I hope we won&#039;t discourage you. I&#039;m sure you will find an elegant solution.

Thumbs up!
plangin</description>
		<content:encoded><![CDATA[<p>Full ACK. An external application seems not transparent to me, too. Who knows, how many won&#8217;t even notice its existance.</p>
<p>BTW, for me personally the ATF in Amarok 1.4.x is useless because it won&#8217;t refresh static playlists after renaming files (which I do quite often).</p>
<p>However, this feature is needed and I hope we won&#8217;t discourage you. I&#8217;m sure you will find an elegant solution.</p>
<p>Thumbs up!<br />
plangin</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Silver</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9336</link>
		<dc:creator>Silver</dc:creator>
		<pubDate>Sun, 10 Aug 2008 21:35:23 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9336</guid>
		<description>As I&#039;ve understood, KDE4 brings many shiny frameworks for using them instead of inventing wheels, but now you&#039;re saying that they are not widely used and thus cannot be relied upon. Umm..

Why can&#039;t Strigi be used for scanning Amarok&#039;s collection (even though user ain&#039;t using it for other stuff)? If there&#039;s no right backend/engine or smth, maybe it&#039;s worth creating/porting one?
The collection would then be accessible via Nepomuk and AFP-stuff with everything else could come from there? The information would be accessible from the rest of the KDE and some other app using KDE libs etc. Ain&#039;t that the true goodness of all the great libs?</description>
		<content:encoded><![CDATA[<p>As I&#8217;ve understood, KDE4 brings many shiny frameworks for using them instead of inventing wheels, but now you&#8217;re saying that they are not widely used and thus cannot be relied upon. Umm..</p>
<p>Why can&#8217;t Strigi be used for scanning Amarok&#8217;s collection (even though user ain&#8217;t using it for other stuff)? If there&#8217;s no right backend/engine or smth, maybe it&#8217;s worth creating/porting one?<br />
The collection would then be accessible via Nepomuk and AFP-stuff with everything else could come from there? The information would be accessible from the rest of the KDE and some other app using KDE libs etc. Ain&#8217;t that the true goodness of all the great libs?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9335</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 21:31:28 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9335</guid>
		<description>I&#039;m perfectly open to constructive criticism.  Yours wasn&#039;t very constructive, because you didn&#039;t bother to pay attention to the content of the post before dashing off a reply.</description>
		<content:encoded><![CDATA[<p>I&#8217;m perfectly open to constructive criticism.  Yours wasn&#8217;t very constructive, because you didn&#8217;t bother to pay attention to the content of the post before dashing off a reply.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tbocek</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9334</link>
		<dc:creator>tbocek</dc:creator>
		<pubDate>Sun, 10 Aug 2008 19:42:47 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9334</guid>
		<description>....so much for trying to be constructive.

If you&#039;re not open to criticism then why blog?</description>
		<content:encoded><![CDATA[<p>&#8230;.so much for trying to be constructive.</p>
<p>If you&#8217;re not open to criticism then why blog?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9333</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 16:49:43 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9333</guid>
		<description>Don&#039;t confuse Amarok and NEPOMUK in terms of associating metadata with files, they&#039;ve very different.  Totally different scanning mechanisms and backends.

Amarok has tables in its database with file paths to associate files with scanned (with amarokcollectionscanner) metadata, statistics, etc.  When the file path changes, those tables have to be synced somehow, or you lose the association in the database with the actual files.  AFT solves this.

As far as hard links, it&#039;s not an option for Amarok to start placing links everywhere on someone&#039;s filesystem.  That&#039;s also assuming that the filesystems people are using support hard links, which in many cases is not true.

P.S. Why would I misinterpret your &quot;tone of voice&quot;?</description>
		<content:encoded><![CDATA[<p>Don&#8217;t confuse Amarok and NEPOMUK in terms of associating metadata with files, they&#8217;ve very different.  Totally different scanning mechanisms and backends.</p>
<p>Amarok has tables in its database with file paths to associate files with scanned (with amarokcollectionscanner) metadata, statistics, etc.  When the file path changes, those tables have to be synced somehow, or you lose the association in the database with the actual files.  AFT solves this.</p>
<p>As far as hard links, it&#8217;s not an option for Amarok to start placing links everywhere on someone&#8217;s filesystem.  That&#8217;s also assuming that the filesystems people are using support hard links, which in many cases is not true.</p>
<p>P.S. Why would I misinterpret your &#8220;tone of voice&#8221;?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: maninalift</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9332</link>
		<dc:creator>maninalift</dc:creator>
		<pubDate>Sun, 10 Aug 2008 15:46:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9332</guid>
		<description>Could someone clarify some of this for me. The above solution seems like a very nice one. 

However I&#039;m don&#039;t entirely understand the difficulties that Amarok and NEPOMUK seem to be having with associating metadata with files. Why is it necessary to use file watching rather than hard links? 

p.s. Lest you misinterpret my &quot;tone of voice&quot; I know that I&#039;m ignorant about these things, this is a genuine question not a suggestion that you&#039;ve missed something.</description>
		<content:encoded><![CDATA[<p>Could someone clarify some of this for me. The above solution seems like a very nice one. </p>
<p>However I&#8217;m don&#8217;t entirely understand the difficulties that Amarok and NEPOMUK seem to be having with associating metadata with files. Why is it necessary to use file watching rather than hard links? </p>
<p>p.s. Lest you misinterpret my &#8220;tone of voice&#8221; I know that I&#8217;m ignorant about these things, this is a genuine question not a suggestion that you&#8217;ve missed something.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9331</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 15:15:12 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9331</guid>
		<description>&quot;Not to jump on the criticism bandwagon&quot;

Then don&#039;t.

&quot;But an extra utility that needs to be run sounds like a usability nightmare.&quot;

It&#039;s not.  It has nothing to do with usability.

&quot;Hell, I&#039;m already confused as to what the options are.&quot;

Then actually read the entry.

&quot;Will it still use Amarok 1.4-style tracking if the tagger isn&#039;t run?&quot;

It&#039;s very clearly stated that it will.

&quot;Eventually there should probably be an option inside Amarok to enable and run the tagger.&quot;

There can be.  When everyone is satisfied that it works and is safe.  Or it could easily be done through a script.</description>
		<content:encoded><![CDATA[<p>&#8220;Not to jump on the criticism bandwagon&#8221;</p>
<p>Then don&#8217;t.</p>
<p>&#8220;But an extra utility that needs to be run sounds like a usability nightmare.&#8221;</p>
<p>It&#8217;s not.  It has nothing to do with usability.</p>
<p>&#8220;Hell, I&#8217;m already confused as to what the options are.&#8221;</p>
<p>Then actually read the entry.</p>
<p>&#8220;Will it still use Amarok 1.4-style tracking if the tagger isn&#8217;t run?&#8221;</p>
<p>It&#8217;s very clearly stated that it will.</p>
<p>&#8220;Eventually there should probably be an option inside Amarok to enable and run the tagger.&#8221;</p>
<p>There can be.  When everyone is satisfied that it works and is safe.  Or it could easily be done through a script.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tbocek</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9330</link>
		<dc:creator>tbocek</dc:creator>
		<pubDate>Sun, 10 Aug 2008 15:00:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9330</guid>
		<description>Not to jump on the criticism bandwagon, but an extra utility that needs to be run sounds like a usability nightmare.  Hell, I&#039;m already confused as to what the options are (will it still use Amarok 1.4-style tracking if the tagger isn&#039;t run?  Can this option be turned off?)  Eventually there should probably be an option inside Amarok to enable and run the tagger.  I envision some radio buttons:

* Do not track my files
* Track my files based on their current tags
* Embed an ID in my files to track them

The second option should probably be the default.

Text below the radio button group would read the following if the given radio button is selected:

1. If you move a file while this option is enabled, any statistics will be lost in the database
2. This option will re-discover files if the location OR the tags are changed, but not if both are changed between database updates
3. This option is the most robust, but will embed an identifier in your files&#039; tags.  This process may take a long time for large collections.

...or something similar.  Choosing the third option and applying the changes would run an Amarok-managed process (with progress bar?) to tag all the files.  This would also provide UI hooks (though not necessarily software hooks) in case someone wants to add Nepomuk-based tracking or MusicBrainz-based tracking.

Now, I&#039;m not a usability expert by any means, so I&#039;m open to criticism as to why this sucks.</description>
		<content:encoded><![CDATA[<p>Not to jump on the criticism bandwagon, but an extra utility that needs to be run sounds like a usability nightmare.  Hell, I&#8217;m already confused as to what the options are (will it still use Amarok 1.4-style tracking if the tagger isn&#8217;t run?  Can this option be turned off?)  Eventually there should probably be an option inside Amarok to enable and run the tagger.  I envision some radio buttons:</p>
<p>* Do not track my files<br />
* Track my files based on their current tags<br />
* Embed an ID in my files to track them</p>
<p>The second option should probably be the default.</p>
<p>Text below the radio button group would read the following if the given radio button is selected:</p>
<p>1. If you move a file while this option is enabled, any statistics will be lost in the database<br />
2. This option will re-discover files if the location OR the tags are changed, but not if both are changed between database updates<br />
3. This option is the most robust, but will embed an identifier in your files&#8217; tags.  This process may take a long time for large collections.</p>
<p>&#8230;or something similar.  Choosing the third option and applying the changes would run an Amarok-managed process (with progress bar?) to tag all the files.  This would also provide UI hooks (though not necessarily software hooks) in case someone wants to add Nepomuk-based tracking or MusicBrainz-based tracking.</p>
<p>Now, I&#8217;m not a usability expert by any means, so I&#8217;m open to criticism as to why this sucks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9329</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 14:05:56 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9329</guid>
		<description>This would be similar to using MusicBrainz identifiers, and as I said in that comment, this would be tracking tracks, not files.  Both methods have their merits.

Remember that the Nepomuk collection is separate from the SQL collection.  I see no reason why Daniel&#039;s work couldn&#039;t be used in the Nepomuk collection.  But my understanding is that Strigi is required for the kind of situation you&#039;re describing to actually work in Nepomuk, and if this is the case, it&#039;s not something that can be relied upon.  We can&#039;t assume that users will have Strigi scanning all their music (especially if their music is on remote shares); we can only assume that users are scanning the music that is configured within Amarok.  So it seems to make sense that for the SQL-based local collection, AFT would be the file-tracking method used, whereas for tracks sourced from the Nepomuk collection, a method like you described would be used.</description>
		<content:encoded><![CDATA[<p>This would be similar to using MusicBrainz identifiers, and as I said in that comment, this would be tracking tracks, not files.  Both methods have their merits.</p>
<p>Remember that the Nepomuk collection is separate from the SQL collection.  I see no reason why Daniel&#8217;s work couldn&#8217;t be used in the Nepomuk collection.  But my understanding is that Strigi is required for the kind of situation you&#8217;re describing to actually work in Nepomuk, and if this is the case, it&#8217;s not something that can be relied upon.  We can&#8217;t assume that users will have Strigi scanning all their music (especially if their music is on remote shares); we can only assume that users are scanning the music that is configured within Amarok.  So it seems to make sense that for the SQL-based local collection, AFT would be the file-tracking method used, whereas for tracks sourced from the Nepomuk collection, a method like you described would be used.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sebastian Trueg</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9328</link>
		<dc:creator>Sebastian Trueg</dc:creator>
		<pubDate>Sun, 10 Aug 2008 06:54:50 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9328</guid>
		<description>That is not quite true. Daniel is working on the Nepomuk support for Amarok and the goal is to decouple the files from the actual track database. That means that files are &quot;only&quot; treated as incarnations of the tracks. You then get play count, ratings and all that based on the actual track/title rather than the file. Thus, playing two files that represent the same track will change the statistics for this one track.

Example: you have foor.mp3 and bar.ogg, both containing song &quot;foo&quot; by artist &quot;bar&quot;. Play them both and you get a playcount of 2 for the one song.

The same should then apply for playlists: they contain of tracks, not of files. When you move a file, the relation to the actual track is not lost but maintained automatically by Nepomuk.

Of course this is not done yet. So at the moment, AFT is the preferred solution. :)</description>
		<content:encoded><![CDATA[<p>That is not quite true. Daniel is working on the Nepomuk support for Amarok and the goal is to decouple the files from the actual track database. That means that files are &#8220;only&#8221; treated as incarnations of the tracks. You then get play count, ratings and all that based on the actual track/title rather than the file. Thus, playing two files that represent the same track will change the statistics for this one track.</p>
<p>Example: you have foor.mp3 and bar.ogg, both containing song &#8220;foo&#8221; by artist &#8220;bar&#8221;. Play them both and you get a playcount of 2 for the one song.</p>
<p>The same should then apply for playlists: they contain of tracks, not of files. When you move a file, the relation to the actual track is not lost but maintained automatically by Nepomuk.</p>
<p>Of course this is not done yet. So at the moment, AFT is the preferred solution. <img src='http://jefferai.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9327</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 01:55:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9327</guid>
		<description>Yeah, sorry about that  :-)

Re: MBIDs, those are ways to identify a track, not a file.  There are reasons to do one or the other, but file tracking is more reliable.

Re: ID3 header, it&#039;s using a UFID frame.  It&#039;s the frame designed specifically for Uniquie File IDentifiers, so I think it&#039;ll be obvious to other players&#039; coders  :-)</description>
		<content:encoded><![CDATA[<p>Yeah, sorry about that  <img src='http://jefferai.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Re: MBIDs, those are ways to identify a track, not a file.  There are reasons to do one or the other, but file tracking is more reliable.</p>
<p>Re: ID3 header, it&#8217;s using a UFID frame.  It&#8217;s the frame designed specifically for Uniquie File IDentifiers, so I think it&#8217;ll be obvious to other players&#8217; coders  <img src='http://jefferai.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9326</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sun, 10 Aug 2008 01:52:24 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9326</guid>
		<description>Please, actually read the blog before getting all worried.  You have to use the separate utility if you want embedded tracking.  You can still take advantage of non-embedded tracking if you don&#039;t want to use it.  No one is requiring you to modify all your files, or doing it automatically.</description>
		<content:encoded><![CDATA[<p>Please, actually read the blog before getting all worried.  You have to use the separate utility if you want embedded tracking.  You can still take advantage of non-embedded tracking if you don&#8217;t want to use it.  No one is requiring you to modify all your files, or doing it automatically.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Malte Stretz</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9325</link>
		<dc:creator>Malte Stretz</dc:creator>
		<pubDate>Sat, 09 Aug 2008 23:51:10 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9325</guid>
		<description>Nice, I always thought AFT was the superior solution even though it toasted some of my files back then :)

Two things:

- All my files also have MBIDs (see http://wiki.musicbrainz.org/MusicBrainzTag), a combination of those should also a nice way to identify a track.

- It might be a good idea to document the exact ID3 header you use on the AFT wiki page.  maybe some other player will jump the band wagon and use that id as well...</description>
		<content:encoded><![CDATA[<p>Nice, I always thought AFT was the superior solution even though it toasted some of my files back then <img src='http://jefferai.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Two things:</p>
<p>- All my files also have MBIDs (see <a href="http://wiki.musicbrainz.org/MusicBrainzTag)" rel="nofollow">http://wiki.musicbrainz.org/MusicBrainzTag)</a>, a combination of those should also a nice way to identify a track.</p>
<p>- It might be a good idea to document the exact ID3 header you use on the AFT wiki page.  maybe some other player will jump the band wagon and use that id as well&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: whoever</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9324</link>
		<dc:creator>whoever</dc:creator>
		<pubDate>Sat, 09 Aug 2008 23:26:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9324</guid>
		<description>i probably would need some time to accept the fact amarok2 will change all my mp3&#039;s checksum. don&#039;t think i could cope with this :p so i sincerely hope there will be a choice whether to allow embedded AFT or not</description>
		<content:encoded><![CDATA[<p>i probably would need some time to accept the fact amarok2 will change all my mp3&#8217;s checksum. don&#8217;t think i could cope with this :p so i sincerely hope there will be a choice whether to allow embedded AFT or not</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9323</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sat, 09 Aug 2008 20:17:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9323</guid>
		<description>Huh.  Who knew.  Looks like they pretty much do the same thing.

Actually, that&#039;s one of my biggest problems with kdelibs.  It&#039;s really hard to find out what&#039;s already there, in no small part becuase the search at api.kde.org sucks.  It never finds classes I already do know exist, much less classes I don&#039;t know exist...</description>
		<content:encoded><![CDATA[<p>Huh.  Who knew.  Looks like they pretty much do the same thing.</p>
<p>Actually, that&#8217;s one of my biggest problems with kdelibs.  It&#8217;s really hard to find out what&#8217;s already there, in no small part becuase the search at api.kde.org sucks.  It never finds classes I already do know exist, much less classes I don&#8217;t know exist&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael Pyne</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9322</link>
		<dc:creator>Michael Pyne</dc:creator>
		<pubDate>Sat, 09 Aug 2008 20:13:03 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9322</guid>
		<description>jefferai, AFT sounds very nice, but what exactly does SafeFileSaver do that KSaveFile (already in kdelibs) doesn&#039;t (or couldn&#039;t be made to do with a little help ;)?

http://api.kde.org/4.x-api/kdelibs-apidocs/kdecore/html/classKSaveFile.html</description>
		<content:encoded><![CDATA[<p>jefferai, AFT sounds very nice, but what exactly does SafeFileSaver do that KSaveFile (already in kdelibs) doesn&#8217;t (or couldn&#8217;t be made to do with a little help <img src='http://jefferai.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ?</p>
<p><a href="http://api.kde.org/4.x-api/kdelibs-apidocs/kdecore/html/classKSaveFile.html" rel="nofollow">http://api.kde.org/4.x-api/kdelibs-apidocs/kdecore/html/classKSaveFile.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matthias Pospiech</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9321</link>
		<dc:creator>Matthias Pospiech</dc:creator>
		<pubDate>Sat, 09 Aug 2008 17:00:37 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9321</guid>
		<description>Hope the 2.x series also solves problems with music on a smb device (in my case a cheep and very simple NAS with smb). The problem I currently have with 1.4.x is that the collection scan always restarts as soon as it finishes. With a few GB music connected over a slow WLAN this means scan times of hours for a complete scan.</description>
		<content:encoded><![CDATA[<p>Hope the 2.x series also solves problems with music on a smb device (in my case a cheep and very simple NAS with smb). The problem I currently have with 1.4.x is that the collection scan always restarts as soon as it finishes. With a few GB music connected over a slow WLAN this means scan times of hours for a complete scan.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9320</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sat, 09 Aug 2008 16:47:28 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9320</guid>
		<description>Two files with identical IDs will see the path from one or the other being used to update the playlist, statistics, and cached lyrics with.

The way statistics are currently implemented, you would only receive statistics updates for plays of one of the files (I could possibly make this smarter at some point, so it checks to see if a file has a UID and if it matches somewhere else in the table, and preferentially uses that).

What won&#039;t happen, however, is that your statistics will be totally lost.</description>
		<content:encoded><![CDATA[<p>Two files with identical IDs will see the path from one or the other being used to update the playlist, statistics, and cached lyrics with.</p>
<p>The way statistics are currently implemented, you would only receive statistics updates for plays of one of the files (I could possibly make this smarter at some point, so it checks to see if a file has a UID and if it matches somewhere else in the table, and preferentially uses that).</p>
<p>What won&#8217;t happen, however, is that your statistics will be totally lost.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JRM</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9319</link>
		<dc:creator>JRM</dc:creator>
		<pubDate>Sat, 09 Aug 2008 16:32:43 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9319</guid>
		<description>what if I move an audio file from my laptop to my desktop where there is another file with the same uid ?</description>
		<content:encoded><![CDATA[<p>what if I move an audio file from my laptop to my desktop where there is another file with the same uid ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9318</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sat, 09 Aug 2008 15:57:41 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9318</guid>
		<description>There are a few issues using Nepomuk for tracking.

The first is that it can only track what Strigi scans. Many users may never use Strigi/Nepomuk, and of those that do, many won&#039;t have it index their music files.

The second is that Strigi generates SHA hashes of every file, but this includes (AFAIK) all of the data of each file.  As soon as a file has changed (i.e. a metadata update), the SHA is invalidated, and we have to wait until Strigi gets it again, and then somehow sync with it.  And if a user moves a file at the same time, we may never find the file again.

So at best, it&#039;s no more useful than non-embedded AFT.  At worst, it&#039;s almost useless.</description>
		<content:encoded><![CDATA[<p>There are a few issues using Nepomuk for tracking.</p>
<p>The first is that it can only track what Strigi scans. Many users may never use Strigi/Nepomuk, and of those that do, many won&#8217;t have it index their music files.</p>
<p>The second is that Strigi generates SHA hashes of every file, but this includes (AFAIK) all of the data of each file.  As soon as a file has changed (i.e. a metadata update), the SHA is invalidated, and we have to wait until Strigi gets it again, and then somehow sync with it.  And if a user moves a file at the same time, we may never find the file again.</p>
<p>So at best, it&#8217;s no more useful than non-embedded AFT.  At worst, it&#8217;s almost useless.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: iochan</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9317</link>
		<dc:creator>iochan</dc:creator>
		<pubDate>Sat, 09 Aug 2008 15:44:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9317</guid>
		<description>And Nepomuk? I heard it has something like this to track files, it&#039;s a possible solution?</description>
		<content:encoded><![CDATA[<p>And Nepomuk? I heard it has something like this to track files, it&#8217;s a possible solution?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jefferai</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9316</link>
		<dc:creator>jefferai</dc:creator>
		<pubDate>Sat, 09 Aug 2008 15:15:45 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9316</guid>
		<description>No one is silently altering anyone&#039;s files.  You choose to add the UIDs to your files by running them through the program (and agreeing to the terms of use that are displayed).

What&#039;s wrong with using MD5 of the first x bytes of audio is that it&#039;s very difficult to do.  Our tag library does not have a way to access the audio data only, and you can&#039;t simply find the offset -- some formats interleave audio and metadata together.  So we&#039;d have to write a new library to find this audio data -- it&#039;s not worth it.

Besides, many tag specifications already have this built in.  ID3v2 has a UFID frame, for instance, which is what is used.

Using the first x bytes are *not* zero quite often.  And it&#039;s not the only value being used in non-embedded hashes.</description>
		<content:encoded><![CDATA[<p>No one is silently altering anyone&#8217;s files.  You choose to add the UIDs to your files by running them through the program (and agreeing to the terms of use that are displayed).</p>
<p>What&#8217;s wrong with using MD5 of the first x bytes of audio is that it&#8217;s very difficult to do.  Our tag library does not have a way to access the audio data only, and you can&#8217;t simply find the offset &#8212; some formats interleave audio and metadata together.  So we&#8217;d have to write a new library to find this audio data &#8212; it&#8217;s not worth it.</p>
<p>Besides, many tag specifications already have this built in.  ID3v2 has a UFID frame, for instance, which is what is used.</p>
<p>Using the first x bytes are *not* zero quite often.  And it&#8217;s not the only value being used in non-embedded hashes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tim</title>
		<link>http://jefferai.org/2008/08/amarok-file-tracking/comment-page-1/#comment-9315</link>
		<dc:creator>Tim</dc:creator>
		<pubDate>Sat, 09 Aug 2008 14:48:02 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jefferai.org/?p=1038#comment-9315</guid>
		<description>Hmm this seems like a very bad idea. I don&#039;t think you should silently alter the user&#039;s files.

What&#039;s wrong with using the MD5 of the first x bytes of audio? That way if the tags or file length changes the ID won&#039;t change.

Actually you shouldn&#039;t use the first x bytes because they might be zero quite often. Somewhere from the middle.</description>
		<content:encoded><![CDATA[<p>Hmm this seems like a very bad idea. I don&#8217;t think you should silently alter the user&#8217;s files.</p>
<p>What&#8217;s wrong with using the MD5 of the first x bytes of audio? That way if the tags or file length changes the ID won&#8217;t change.</p>
<p>Actually you shouldn&#8217;t use the first x bytes because they might be zero quite often. Somewhere from the middle.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
