More Intelligent Artist Sorting

Posted by: tonyc

More Intelligent Artist Sorting - 11/03/2002 21:33

Okay, this is a bit of a cross-post because nobody reads General anymore.

I recently downloaded my entire collection for a mass re-tagging and cleanup, and I started to think about how to enter artists with names like "The Doors." I posed my question in the General forum, and found that others have varying strategies:

"The Doors" - Fuzzy matching finds it, but it is sorted with the T's instead of the D's.
"Doors" - Fine for searches and sorting, but doesn't look quite right.
"Doors, The" - Fine for searches and sorting, looks really stupid.

Furthermore, some people that solo artists be sorted by last name rather than first name. Currently the Empeg (and any other player on the planet) is going to sort "Tori Amos" with the T's instead of the A's. Thinking back, I always sorted my CD's by last name and didn't even think twice about it, but it does make more sense to sort by last name (like the record stores do.)

So I thought up this idea (I'll be really embarassed if it's been asked for before.) Allow users to tag their MP3's and enter into Emplode with artists in Lastname, Firstname format. (Or any other comma-separated string such as Doors, The.) Use that string in the FID files and the database, and internally for sorting. But when displaying the artists, switch it around (easy to code), with the part after the comma first and the part before the comma last. This would ideally be done in both Emplode and the player.

In this manner, users can decide how their artists get sorted, and the artists will still be displayed correctly. It's not dependent on locale-specific stuff like what your definite article happens to be, etc. True, it's more work than allowing the player to automatically parse out "The", but I think it's more flexible, and the benefits outweigh any disadvantages I can see. With artist soup views on the horizon, I think this will be even more of a bonus.

So... comments?
Posted by: hybrid8

Re: More Intelligent Artist Sorting - 11/03/2002 22:11

Love the idea (as already mentioned in General), so please (powers that be) consider this a BIG "Me Too" seconding of this wish list item. This takes care of something I was going to end up posting in here in a couple of weeks anyway.

Scheduling... I'd be fine with this as a post-2.0 feature, but it would be very nice for inclusion whenever player-side soup views get enabled. So if that's going to make it for 2.0, this would be ever so nice to squeeze in as well.

Bruno
Posted by: wfaulk

Re: More Intelligent Artist Sorting - 12/03/2002 00:20

As I said in my response to your post in the other thread, I think using a specific delimiter would be an even better idea. To recap, use a delimiter that functions sort of the same way as your comma, but would be more precise about the spacing, etc. If this character were a tilde (~) (which would be a bad choice), then the artist should look something like "Beatles~The " (note the trailing space) or "Amour~L'" (note the trailing apostrohe and the lack of a trailing space). When searching, the player should search on the string as given, but when displaying, it should print the part after the delimiter first, and print the rest, except the delimiter itself after, with no additional spacing thrown in.
Posted by: Taym

Re: More Intelligent Artist Sorting - 12/03/2002 06:00

I don't know if it requires too much work, but what about this:
In emplode, create two or three fields (artist1, Artist2, Artist3, for example) all belonging to one "artist name" group. Than put a checkbox next to each of the two(three) field, meaning that that mp3, when sorted by artist, will be sorted in particular according to THAT specific field of the whole "artist name" group, but it will still be shown everywhere as "Artist1 Artist2 Artist3" .

Example:

Artist1 Artist2
The [x]Doors

Checkbox is next to Doors, so it will be sorted by "D", but will always show as "The Doors"
Posted by: tms13

Re: More Intelligent Artist Sorting - 12/03/2002 06:18

An alternative to displaying with a checkbox would be to highlight the primary key in bold or something, and provide a menu entry to change it. I think this would look nicer.
Posted by: tonyc

Re: More Intelligent Artist Sorting - 12/03/2002 08:24

I think the comma idea is more intuitive personally. Your idea is a little cleaner in that it doesn't trip over real commas like in Crosby, Stills, Nash & Young, but the "database guy" in me says that the Artist field is one entity. Plus ID3v2's handling of multiple artist fields is questionable at best.

But to be honest I'd take *any* implementation of this feature if it were easy to use. The comma idea is just one way that I think is intuitive and relatively easy to program. Hell, I wrote out the pseudocode in the other thread, not that it'll be that easy when dealing with live bullets on the Empeg, but can it be *that* difficult, either?
Posted by: tonyc

Re: More Intelligent Artist Sorting - 12/03/2002 08:32

Eh.. Hmm. I don't like the special character, actually the best idea I've heard was using a double comma for "escaped commas" kind of like a double backslash is an escaped backslash. So it'd look like this:

"Beatles, The"
"Crosby,, Stills,, Nash & Young"

I agree that CSN&Y looks ugly if you're playing it in WinAMP, but how many artists have *real* commas in them? Emerson, Lake and Palmer.. CSN&Y... John, Paul, George & Ringo.. Oh wait, nevermind, that's Beatles, The. But there's not that many out there. There are far more that you would want to add the comma for to sort them properly, including all of the "The" artists as well as solo artists from Amos, Tori to Zevon, Warren.

Also, I don't see why you'd need to include the trailing space. I think the player's algorithm for displaying it could just add a space automatically, since you always want one between the last word of the part after the comma and the first word. It should just be an implied space.. When would you not want the space, or when would you need more than one space? I can't think of any reasons why a single implied space (not saved in the artist field) wouldn't work. It's a pain to make sure that a space is at the end of each one... I'd just embed it in the player's algorithm instead.

Please someone from Empeg tell me this is a good idea and has a chance to make a 2.1 release.
Posted by: Taym

Re: More Intelligent Artist Sorting - 12/03/2002 09:00

Well, what I was thinking is that whenever the database in the empeg is created, emplode should insert the "Artist" field from the ID3v2 in ONE of the three fields in the empeg dbase. Than it will be up to you to break it down according to your preference, and select how to sort.
Posted by: peter

Re: More Intelligent Artist Sorting - 12/03/2002 09:05

Well, what I was thinking is that whenever the database in the empeg is created, emplode should insert the "Artist" field from the ID3v2 in ONE of the three fields in the empeg dbase. Than it will be up to you to break it down according to your preference, and select how to sort.

It seems to me that the idea of having a separate field for "Artist sort key" (or some less geeky name), which is automatically filled from the artist name until and unless explicitly hand-edited, is a better one -- partly because it's simpler, but mostly because it maps more naturally onto ID3v2. It can even get left blank if it ends up equal to the Artist field.

This is of course all in post-2.0-land...

Peter
Posted by: tonyc

Re: More Intelligent Artist Sorting - 12/03/2002 10:04

It seems to me that the idea of having a separate field for "Artist sort key" (or some less geeky name), which is automatically filled from the artist name until and unless explicitly hand-edited, is a better one -- partly because it's simpler, but mostly because it maps more naturally onto ID3v2. It can even get left blank if it ends up equal to the Artist field.

That works, too... But how are you defining "simpler?" The comma method only requires one ID3 field (TPE1 artist) to be filled out. I haven't seen *any* ID3v2 taggers which support the TSOP (artist sort order) frame. Without wide support of that frame, it's going to be difficult for everyone to properly tag their MP3's correctly.

The solution I proposed, while it might get ugly with a few artists which have commas in their name, wouldn't require a special ID3v2 tagger, in fact, it would work with V1 tags, which I'm sure many people are still using.

This is of course all in post-2.0-land...

But of course. I'm glad you guys are willing to talk about post-2.0 features with us. I'd like to hear what Roger has to say from an Emplode perspective. If Emplode were to actually become a full-fledged tagger as has been hinted at, my argument against using the TSOP frame might be moot.
Posted by: tms13

Re: More Intelligent Artist Sorting - 12/03/2002 10:05

Hmm, trailing space. Could this be used as a magic flag to say "Treat all commas literally"?

No, it couldn't - Harry Connick, Jr. needs to have one literal and one syntactic comma. Damn. Maybe trailing space could be used to invert the sense of comma and double comma?
Posted by: peter

Re: More Intelligent Artist Sorting - 12/03/2002 10:37

But how are you defining "simpler?"

Simpler than taym's three-artist-fields solution, I meant. If we're adding fields to Emplode, let's add ones that map neatly to ID3v2.

I'd like to hear what Roger has to say from an Emplode perspective.

Roger's on holiday this week and so isn't saying much from an emplode perspective; he did, however, just SMS me to ask who originally recorded "Back To My Roots". I thought it was Odyssey, but I wasn't sure.

Peter
Posted by: genixia

Re: More Intelligent Artist Sorting - 12/03/2002 10:56

This idea sounds great, although I'd like to be able to search on both last name and first name. I don't think that this would be too difficult to do, effectively any comma in a name adds a second search term. This certainly is more workable than the concept of trying to match any substring within a name.

Maybe a better concept would be to use parenthesis so "The Doors" becomes "(The) Doors", which would indicate that "Doors" is the sort term.

The only issue would be that the tweak order code might also have to be modified? I imagine that the search parameters are tied in somehow. I don't know.

I recently read another thread about searching for 'Live' albums - the user wanted to be able to effectively search for the occurance of 'Live' in the whole album title.
I wonder if this idea could be used there too, so "The Doors Live" becomes "(The) Doors (Live)", so "Doors" remains the sort term, but "The" and "Live" both end up as search terms.

Of course, escaping might have to be dealt with, similar to the "Joe, Bob, and the Family" issue in using commas.
Posted by: tonyc

Re: More Intelligent Artist Sorting - 12/03/2002 11:00

Simpler than taym's three-artist-fields solution, I meant. If we're adding fields to Emplode, let's add ones that map neatly to ID3v2.

Ah, okay.

Hmm... I guess for now I'm going to set all my artist fields with the comma. If you guys decide to go with the TSOP frame implementation (*if* you decide to implement this feature in the first place, I don't want to be TOO presumptuous), I guess it's just a little bit of Perl to copy the TPE1 text to the TSOP frame and reverse it to put it back into the TPE1 frame. But I'm defintely hoping for the all-in-one frame comma implementation.
Posted by: wfaulk

Re: More Intelligent Artist Sorting - 12/03/2002 16:17

Because French (and possibly other language's) articles can occur without a space. That's what I was trying to show in my example:

L'Amour

as

Amour~L'

(Not that there's a band by that name, as far as I'm aware.)
Posted by: tonyc

Re: More Intelligent Artist Sorting - 12/03/2002 16:25

Oh yeah. Ma cinq ans de français didn't help that fact register in my brain. Oh well screw the French.

Well I guess we'll see where this feature ends up as 2.0x evolves. We need to see a 2.0 final first.
Posted by: hybrid8

Re: More Intelligent Artist Sorting - 12/03/2002 16:47

Or yet another variation on the same theme that no one has mentioned... Leave all your ID3 tags the way they are... (The Whatever)

AND...

Have emplode handle the creation of the swapped names at import time. Then your tag display isn't affected in other programs.

This allows additional control by not forcing you to modify the ID3 tags in the original files. But that's still an option if you prefer.

Having a second database entry can also be something private for the player database and doesn't have to mimick any existing ID3 tag. That has its drawbacks of course. but it can also be something handled with a function in emplode for auto population as well as manual.

Whatever the end result, I think the consensus is that we want the ability to sort and display in a logical order with the ability for forced customization. Is this a neat and small catch-all?

Bruno
Posted by: tonyc

Re: More Intelligent Artist Sorting - 12/03/2002 16:58

Whatever the end result, I think the consensus is that we want the ability to sort and display in a logical order with the ability for forced customization. Is this a neat and small catch-all?

Yeah that about sums it up, and we've all made our cases for various implementations. In the end it will be up to what "copious free time" the guys have. If the past is any indicator, they will come up with something that works even better than anything we've come up with so far. But I'm guessing it will have elements from at least a couple of these suggestions.

At this point I think I'm going to put the commas into my tags just so they're sorted properly until this feature appears.
Posted by: Taym

Re: More Intelligent Artist Sorting - 12/03/2002 17:26

Peter,

now this is such a much better idea, and simpler than mine. So, expanding it a little bit, maybe what we need is simply ONE extra field. Whenever we do not like ANY of the standard fields for sorting pourposes, we can "activate" the extra fileld, type something in and have the song sorted by that. We could in theory have the extra field replace any of the standard ones by simply selecting in some way (checkboxes, list, and so on) WHAT field should be replaced by the extra one, in sorting procedures.
Now, am I making sense? What do you think?
Posted by: Nosferatu

Re: More Intelligent Artist Sorting - 16/03/2002 12:00

Avez vous demandé un Français ?
Posted by: Roger

Re: More Intelligent Artist Sorting - 18/03/2002 02:22

...just SMS me to ask who originally recorded...

Well, Hugo and I were sitting in a bar, having a little apres-ski when the newer version came on the jukebox.

We've since decided that we should clone Peter and supply him to pubs so that he can answer this sort of question whenever anyone needs to know .

Posted by: peter

Re: More Intelligent Artist Sorting - 18/03/2002 04:07

We've since decided that we should clone Peter and supply him to pubs so that he can answer this sort of question whenever anyone needs to know.

Or perhaps a well-known brewer should bring out a series of books aimed at settling this kind of bar-room argument?

Nah, that'd never make any money...

Peter