Amarok 2.4 Id3v2.x tags? many songs missing from collection

Hi all,

I am running KDE from the unstable repos and am having an issue with the Amarok included… output of rpm query on amarok

icarus@linux-xjxa:~/Music/Little Brother Discography/Getback> rpm -qi amarok
Name        : amarok                       Relocations: (not relocatable)
Version     : 2.3.90git.1293719284              Vendor: obs://
Release     : 1.1                           Build Date: Thu 30 Dec 2010 07:29:25 PM EST
Install Date: Fri 31 Dec 2010 04:03:58 PM EST      Build Host: build19
Group       : Productivity/Multimedia/Sound/Players   Source RPM: amarok-2.3.90git.1293719284-1.1.src.rpm
Size        : 24523569                         License: GPL v2 or later
Signature   : DSA/SHA1, Thu 30 Dec 2010 07:33:43 PM EST, Key ID 2e85baee9ebd09c4

When I import my music folder into my amarok library I come up ~3000 songs short. When I load the same music folder into songbird 1.4 I am able to see the full library.

There appears to be no rhyme or reason to which songs’ ID3 tags are not being read properly by Amarok and therefore are not appearing in my collection. I have tried removing my collection and rescanning, removing and re-installing amarok… removing all amarok related folders from my .kde folders and reinstalling… yet I am still unable to get my full collection read by Amarok…

Has anyone else run into this problem and know why it happens or what to do to stop it???

You do know what unstable means? Change to a stable KDE. Or post problem in the development form.

Thanks for the friendly pointers mate, I wouldn’t have asked here but this also happens on other versions of Amarok as well. I actually moved up to the unstable hoping this would be an issue that was addressed as they indicated they had redone the way Amarok imports songs into one’s collection.

Amarok developers are aware of this I believe and there have been bugreports filed as well. I was just hoping maybe somebody on this forum had run into a way around this issue besides just using a different app (songbird) as I have begun to grow rather fond of amarok indeed.

[SOLVED] Amarok collection scan - Linux Forums](

Perhaps this might help?

That actually seems like the exact same problem I have; I have quoted below their description of what’s going on:

It started with missing songs. Songs that should have been there were suddenly missing from the collection despite the fact that the files in fact exist. The ones that disappeared from the collection that were still in the playlist would not play and had a 0:00 length associated with them. The album would still be recognized as existing, but the songs themselves were not available.

After ripping a new CD, I noticed that the new songs were available, but the album for whatever reason did not. I tried to manually change all of the tags, but this did not seem to help. (The tags themselves would properly change in the editing gui, but in the collection they would still show up as being improperly sorted. This problem is usually one of a lag between what is displayed and what is recorded in the db, but even after quitting the program and restarting it still did not work.)"

so they basically suggest that I add a flag/option in my /etc/make.conf and then recompile both amarok and mysql? Maybe I will make time someday today during the football games to try this out…

thanks for the link I do appreciate it mate.

Good luck!

You might also try out Clementine, which is based on the previous Amarok version, it is quite nice. I use both.
Clementine should be in the KDEextra repo of whatever version of OpenSuSE/KDE you use.


so they basically suggest that I add a flag/option in my /etc/make.conf and then recompile both amarok and mysql?

Be cautious, the Gentoo way is to compile everything from source in any case, and SuSE does it differently. And I’m not sure you should edit the make.conf file in any case.

Yeah I thought about it… then thought better about it and decided to just revert to kde:factory. Good for me because we actually got 4.6 rc2 which is sweet. Also good because amarok now recognizes all of my songs… but there is still a problem with it’s library.

As for your earlier clementine suggestion I’ve tried it out already and it works well, just don’t like the UI as much as amarok’s though…right now while I’m still fiddling with amarok I have songbird 1.4 and rhythmbox installed as well, both of which give me no problems.

I’ve finally gotten amarok to recognize all my music files though, they show up in my local library now at least. The only problem is now it seems allot of files have incorrect id3 tags associated with them… but only in amarok; by this I mean both Rhythmbox and Songbird have my library with the correct tagging.

I’m now in the process of going through my library and removing all but the id3v2.4 tags for all my songs using puddletag (excellent program btw). Because I think somewhere there is a mismatch in the info contained in the different version tags which is screwing up amarok’s library… at least that’s what I hope is happening. <shrug>

Ok, just a quick update… after talking with some very helpful and kind people on #amarok on I was able to fix the problem.

I am using an external mysql db, and apparently the UID (unique id) that is assigned to each song can be longer than 128 chars. Well the column/field “UID” in the “URLS” table of your amarok database is set to be a varchar(128). So if the first 128 chars of the UID happen to repeat (as apparently they can) amarok thinks it is a duplicate song and will not add it to your database.

Changing the type of the “UID” column/field in the table “URLS” from varchar(128) to varchar(256) solved all my problems.

ALTER TABLE `amarokdb`.`urls` CHANGE COLUMN `uniqueid` `uniqueid` VARCHAR(256) CHARACTER SET 'utf8' COLLATE 'utf8_bin' NULL DEFAULT NULL  ;

is the command I used logging into the mysql db using the terminal… of course replace ‘amarokdb’ with your specific amarok database’s name…then ran a full rescan from within amarok and all my beautiful music was available finally. :slight_smile: