Bug 146800 - Grouping by Album Artist tag
Summary: Grouping by Album Artist tag
Status: RESOLVED UNMAINTAINED
Alias: None
Product: amarok
Classification: Applications
Component: general (show other bugs)
Version: 1.4.5
Platform: unspecified Linux
: NOR wishlist
Target Milestone: ---
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-06-15 00:26 UTC by Dana Jansens
Modified: 2009-08-03 04:07 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dana Jansens 2007-06-15 00:26:18 UTC
Version:           1.4.5 (using KDE 3.5.6, Kubuntu (feisty) 4:3.5.6-0ubuntu14)
Compiler:          Target: i486-linux-gnu
OS:                Linux (i686) release 2.6.22-rc4-dana

I'd like to group by the *Album Artist* rather than the song artist. Many CDs have a single artist, but different artists in the songs (featuring or compilations or dj mixes).
Comment 1 Dominik 2007-07-12 03:01:26 UTC
i would like to add that i do not just wish an additional option to be added to the "group by" action, but that it would be possible to select any of the ID3v2 frames available in an mp3 as a group option.

i tagged all my music with the musicbrainz picard tagger and this tagger does set a frame called "TXXX" (actually it does set a couple of frames with that name) the description "MusicBrainz Album Artist" and the text of the album artist. i do not know if there is an other way to set "Album Artist" i never heard of an official tag called "album artist".

anyhow it would be great if i could group my music in the collection browser by this mentioned tag and then by "Album". because i got the same problem as Dana. a lot of albums have just one song with a different artist and all these albums appear under the node various artists.

for the record: albums that have different artists in each track do have the TXXX frame set to "Various Artists". which is great.

i sniffed a little bit around with the sqlite3 tool in the Collection.db and as far as i understood the database it would be necessary to expand the database to achieve that wish / task we have. assuming the collection browser is just a presentation of that database the information i would like to use to group my mp3's by, lays still in the single files.

cheers dominik
Comment 2 Dana Jansens 2007-07-12 03:14:38 UTC
Oh, it seems the "Album Artist" is something just informally agreed upon on by players like Winamp.  The "TPE2" tag in IDv2 is used for it.
Comment 3 Seb Ruiz 2007-07-12 03:22:54 UTC
I think it would be over the top to allow grouping by arbitrary metadata. Rather, we should think about which particular tags would really be useful. Also, we don't like having too much stuff in the interface, makes for clutter and an unfriendly experience.

But yes, perhaps we should allow grouping by album artist.
Comment 4 Dominik 2007-07-12 13:47:40 UTC
I guess you are right Seb. being able to group by all available tags would be a little bit of an overkill but according to this file http://www.id3.org/id3v2.4.0-frames I'd say TPE1 - TPE4 sound kind of interesting.
Comment 5 Brez 2007-11-29 13:53:42 UTC
*** This bug has been confirmed by popular vote. ***
Comment 6 djmatic8 2008-03-25 09:38:06 UTC
The lack of support of custom tags is in fact the main cause of inability to use fields like "Album Artist" (which absence is the main annoyance, IMO).

Allowing user-definable tags is more flexible than just using a fixed number of id3 fields. (Using 'magic numbers' is widely considered to be a bad programming practice anyway :) It's because id3 is not the only way to store music metadata.

Amarok plays many other formats and "TPE1", "TPE4", etc. may map to another tags there. So it's crucial not to depend on fixed field names.

The user may want to store the date of addition of the file, for example (which seems to be a very useful sort key in some cases, btw), or some other useful for him/her data.

As for "Album Artist", there is no an official standard tag name for it, so it must be configurable (maybe map "ALBUMARTIST", "Album Artist", "<user-defined-albumartist>", (even a regexp of tag name) to single internal album_artist which would be of help for people, who can't/doesn't want to edit actual tags in files).
Comment 7 HairMetalAddict 2008-04-05 11:54:05 UTC
Adding my support for this. Lack of use of the Album Artist tag makes for quite a headache trying to find discs. Did that disc have 1 track with a different artist name? Ooops, it's not that artist's disc anymore, gotta check Various Artists. "Do not list as Various Artists" splits the disc up, which is even less useful.

http://musicbrainz.org/release/b1aa4998-eb5f-49b8-9411-3008c12e117b.html

This is just one of dozens of examples in my collection on why the album artist is needed. In this case, the single first track causes it to get lumped into Various Artists, though it's obviously an Aerosmith disc. And being part of a 3-disc set, it splits up the collection as well having it under VA while others are under Aerosmith.

MB (Picard) includes an Album Artist tag which helps avoid things like this. Put it to use! :-)
Comment 8 Thomas Martitz 2008-05-17 19:42:21 UTC
I want to have that too. I desperately miss sorting by album artist.
Comment 9 William Bohn 2008-05-20 01:27:07 UTC
A possible solution could be to allow the user to decide what ID3 tags to group by. To be frank, I was surprised this feature wasn't implemented.

That said, I really think that grouping by album artist would be really great to help put all the albums that I have by multiple artists into a "Various Artists" entry - there's no sense for me to see the artist's name in the collection listing when I only have one song by them as part of a mix CD.
Comment 10 Gary Steinert 2008-10-01 13:39:48 UTC
May I also add my support for this idea.

The only problems I foresee are:
 - Firstly, there is no 'Album Artist' ID3 tag. I don't know about other tagging systems. This could lead to problems with tracks that use the TPE2 tag as the specification intends, or use another tag for the album artist.

 - Secondly, with regards to selecting any tag to sort by, it is very unlikely that every tagging scheme that amarok supports has an equivalent for every ID3 tag. Therefore, a limited number of tags that are widely supported may be a better idea.

A solution, however, may come in allowing users to set an album artist for an entire album within amarok. This could set the TPE2 or a TXXX tag (or equivalent) for every track within the album. This allows users to sort by album artist whilst causing minimal work for the user (they only have to set the album artist for each album instead of each track individually).
Also, if an album artist is not present, the artist should be used, meaning album artist need only be set on albums that have more than one artist.

Hope to see this feature soon. Unfortunately I'm not quite skilled enough to take this on myself.

Gary
Comment 11 Ben Kloester 2008-11-08 15:01:09 UTC
I'd be interested in writing a patch for this.

I've already downloaded the 2.0 source and had a hack around, and think I know where the changes would need to be made.

Specifically, I'd want to add an Album Artist option(s) to the Group By pull-down, which would group by Album Artist (or by Album Artist then by Album). I would take Album Artist to be TPE2 - I know this is not the intention of the IDE standard, but Apple has essentially made it the de facto Album Artist tag and all the other players have followed suit, so it is well on the way to becoming the 'standard'.

Possible future expansion of the Group By drop down to include another option "Custom" which would launch a popup allowing the user to specify one or more custom tags to group by. However that is probably worthy of another ticket, as it's really a separate feature.

Is there somewhere other than bug tickets that Amarok devs usually spec stuff out? Does anyone have any different opinions on what this should look like/how it should work?
Comment 12 Gary Steinert 2008-11-11 15:37:20 UTC
If you look into the Amarok code, more specifically the database, we do have an album artist field. How that relates to the TPE2 tag I'm honestly not sure, but this field might be a starting point for you

Also, if you're looking for a place to discuss ideas, try the #amarok channel on irc.freenode.com, someone should be there most of the time to help you along
Comment 13 M. Thomas Frederiksen 2009-01-19 13:34:09 UTC
> ... I would take Album Artist to be TPE2 - I know this is not the intention
> of the IDE standard, but Apple has essentially made it the de facto Album
> Artist tag and all the other players have followed suit, so it is well on the
> way to becoming the 'standard'.

I agree let's do it!  I'm all over standards in most cases, but let's be honest, in this case:

1) Useably will benefit from adopting the de facto standard.

2) There's no reason to cling to the standard as written anyway, as it's a rubbish standard that was never a serious attempt at gathering all the data that a musical archivist would want.  No doubt in the future a real standard for tagging files with comprehensive data will be developed, but in the mean time we'll have to do the best we can with what we've got.  
   
> Possible future expansion of the Group By drop down to include another option
> "Custom" which would launch a popup allowing the user to specify one or more
> custom tags to group by. However that is probably worthy of another ticket, as
> it's really a separate feature.

Along those lines, I'd like the option of listing years in order.  At the moment grouping by Artist/Year - Album, put the years backwards... which I guess some people want, but I don't.  a, b, c ... 1, 2 ,3 (not 3, 2, 1)
 
I know Python, and I'm learning PyQt at the moment.  I'd like to do some work on Amarok, and other itches.  So if someone can point me in the right direction, I'll be happy to take a look at it.

Comment 14 Ben Kloester 2009-02-10 15:21:33 UTC
I've been looking into this bug and it will require quite a few changes to implement, but is within my capacity, I believe. The changes needed include:

CollectionScanner::readTags: Needs to read in TPE2 and save it as an AlbumArtist attribute along with all the other attributes currently set. This will rely on upstream changes to Taglib, proposed here: http://mail.kde.org/pipermail/taglib-devel/2009-January/001069.html. It's probably possible to do w/o Taglib but much nicer to just use its AlbumArtist support if/when it is included.

ScanResultProcessor::processDirectory: Heuristic will need to be changed to use AlbumArtist rather than Artist for the most part, and the most frequently occurring artist when eg TPE2 is empty. Artist should still be used to calculate whether an album is a compilation or not - eg less than 50% of tracks from same artist might be considered a compilation. NB. the compilation flag should become less important anyway if albumartist support is implemented.

QueryMaker: Add AlbumArtist to ValidFilters and QueryType enumerations.

MetaQueryMaker: Add AlbumArtist QueryType to MetaQueryMaker::setQueryType.
Possibly modify constructor (can we use Meta::ArtistList 

Inherited methods of Meta::Artist::Albums() will need to be changed to base the listing of albums returned on AlbumArtist rather than Artist.

Inherited classes of QueryMAker will need several changes depending on how we wish to implement albumartist support (complementary to arranging by artist\album? or replacement?)

CollectionWidget: Changed to add some frontend for the new sort by album artist.

CollectTreeItemModel: Depending on how this is implemented (replace/complement) modify to allow arranging the tree view by album artist.

That's all I've got for now; sure there are a gazillion other dependencies and changes, but it's late and I could only spare a cursory look at the code.

If anyone has any suggestions or guidance to provide, let me know. I imagine there's going to a be a heap of edge cases for this type of feature so assistance in spec'ing out behaviour is appreciated.



 
Comment 15 Damien Cassou 2009-04-17 16:42:17 UTC
I would like the behavior of Amarok 1. It seems that's what is discussed here, but I don't understand why it is so complex because it worked on Amarok 1 perfectly (at least for me). I would like the 'Various Artists' category and the album artists.

Thank you for Amarok.
Comment 16 Matt Rogers 2009-08-03 04:07:00 UTC
Thank you for taking the time to report this bug for Amarok. Amarok 1.4 is now unmaintained and will no longer see any improvements. Because of this, and the massive amount of changes Amarok has undergone throughout the 2.x series of releases, we are closing bugs that no longer apply to the 2.x series due to changes in functionality, the underlying architecture, or a conflict for the vision of Amarok 2.

We appreciate the time you took to provide feedback about Amarok 1.4 and will look forward to any feedback you may provided about Amarok 2. Thanks.