PDA

View Full Version : Multiple ARTISTSORT (etc) tags



zonkzonk
2007-07-04, 17:24
The SlimServer Supported Tags wiki page (http://wiki.slimdevices.com/index.cgi?SlimServerSupportedTags) says, in reference to ARTISTSORT, ALBUMSORT, and TITLESORT, that:

"Artist, Album and Title sort order behaviour is unpredictable when multiple values are used."

So if I tag something with:

ARTIST=Butch Cassidy
ARTISTSORT=Cassidy, Butch
ARTIST=The Sundance Kid
ARTISTSORT=Sundance Kid

Then SlimServer might sort Butch under "S" and the Kid under "C"?

Why?

Can this please be fixed?

I understand that it can't just magically know that "Butch Cassidy" corresponds to "Cassidy, Butch", but an arbitrary rule such as "The first ARTIST corresponds to the first ARTISTSORT, the second to the second, and so forth" would be both simple and sufficient.

Is there a place other than this forum where such requests are supposed to be made?

Thanks.

ceejay
2007-07-05, 14:19
The place for requesting enhancements is bugzilla at http://bugs.slimdevices.com/ - you'll need to create an id for yourself but its quick and painless. Do have a good search first in case someone else has already submitted a similar request.

However don't hold your breath for a change being made, unless you feel like working throught the perl and submitting a patch yourself. Otherwise your best bet would be to hope that someone else in the community thinks "thats a good idea" and does it for you.

If you are hoping that someone else will do this then you'll need to think through exactly how you want it to work in all the tricky corner cases you probably haven't thought of yet!

I don't recall seeing htis one come up before though.

HTH
Ceejay

swhite58
2007-07-05, 20:25
This could be a bit tricky. It looks to me that the problem is in the tag data standard itself if you can link specific ARTIST and ARTISTSORT fields.

Unless Slimserver can be made to take into account the order in which they are entered and pair them that way:

ARTIST=Butch Cassidy;The Sundance Kid
ARTISTSORT=Cassidy, Butch;Sundance Kid

If you do this, you would have to be mindful of instances when the SORT form is the same as the normal form. So if you also wanted to index "Led Zeppelin" in the same tag we would have to do this:

ARTIST==Butch Cassidy;Led Zeppelin;The Sundance Kid
ARTISTSORT=Cassidy, Butch;Led Zeppelin;Sundance Kid

or maybe:

ARTIST==Butch Cassidy;Led Zeppelin;The Sundance Kid
ARTISTSORT=Cassidy, Butch;;Sundance Kid

Anyway, back to work ...

Shane

JJZolx
2007-07-05, 22:30
It's more than just a bit tricky. I don't know if any of the different tagging specs place any requirements on field order. What if your tagging program decided to neatly store fields in alphabetical order by field name then value? You could have:

ARTIST=Bob Smith
ARTIST=Mark Jones
ARTISTSORT=Jones, Mark
ARTISTSORT=Smith, Bob

gerph
2007-07-06, 01:04
It's more than just a bit tricky. I don't know if any of the different tagging specs place any requirements on field order. What if your tagging program decided to neatly store fields in alphabetical order by field name then value? You could have:

ARTIST=Bob Smith
ARTIST=Mark Jones
ARTISTSORT=Jones, Mark
ARTISTSORT=Smith, Bob

ID3v2 only allows the use of a single frame per tag (one performer tag and one sort tag). The ordering of values within multi-value tags is not defined by the specification.

A brief look at the ogg tag specification (also used for FLAC) implies nothing about ordering and therefore I would assume that you cannot trust the ordering to be preserved.

In addition, merging of ID3v1, APE and ID3v2 tags may result in multiple additional fields being obtained. For example, ID3v1 might hold the name 'Chris de Burgh' and the ID3v2 might hold the name 'Chris De Burgh'. These would appear as two distinct, different artists and so be placed in the array. This would cause confusion between any assumed ordering for the TSOP field. A solution to this particular problem is to untick the box that says to use ID3v1 tags.

Anyhow, as you say, the above reordering may quite happily be performed by the tag editor, and cause chaos. And the walls will come tumbling down.