Home User Forums SongKong Music Tagger Jaikoz Music Tagger Albunack Music Service

Thursday 30 March 2017

MinimServer with SongKong: Part 3: Sorting Conductor and other fields

Go forward to Part 4: Groups and Works
Go back to     Part 2: Sorting Composer by Sort Name

In the last section we saw how to sort Composer by the ComposerSort field, lets now apply the same principle to the Conductor field. But if we look at the tag mapping section of MinimServer User Guide again we find that a ConductorSort field is not listed

Some History

At one point the only computer music files commonly found were WAV format but at this time (when harddrives were more expensive and smaller) WAV didn't really support metadata and WAV files were too large to be that useful. But then MP3 was invented, originally with the ID3v1 metadata format and then shortly afterwards the ID3v2 metadata format.

The ID3v2 specification supported alot of fields, and was rather complicated. Music players and tagger software spent years trying to fully support ID3v2. As a result of this when other tag formats came along like Vorbis Comments (used by Flac and Ogg) and Atoms (used by Apple Lossless/Lossy) the software concentrated on ensuring they had support for fields equivalent to those in ID3.

ID3v23 had no sort fields, ID3v24 added ArtistSort , and then Apple added ComposerSort and AlbumArtistSort, and these became a defacto standard. But none of the big players has added ConductorSort and hence it is rare to see it in supported in any format or player.


SongKong Support

But the field does exist in SongKong and Jaikoz, the information is freely available in MusicBrainz so it made sense to add this when tagging. All audio metadata formats do in fact support a standard way to add custom fields, its just that ConductorSort is not listed not as a standard field.


Finding Non standard Field Names


If we look at SongKong Field mapping table  we can see that ConductorSort is listed slightly differently depending on the audio format.
  • TXXX:CONDUCTOR_SORT (MP3, WAV, AIF)
  • ----:com.apple.iTunes:CONDUCTOR_SORT(MP4)   
  • CONDUCTOR_SORT (Flac, Ogg, Wma)

The TXXX and ----:com.apple.iTunes are those formats standard way of creating custom fields and MinimServer understands this and can read such fields, all TXXX fields and all ----:com.apple.iTunes can be read by MinimServer. When you specify such fields in MinimServer you don't specify the TXXX or ----:com.apple.iTunes parts.

Any field in Flac or Ogg format can also be read by MinimServer.  

So we only need to look at the second part. For all the formats this is CONDUCTOR_SORT, this is great because it means that MinimServer can be configured the same whatever format you are using.

But if they were different and you had audio in different formats (e.g FLAC and WAV) then you would need to use tag aliasing.


Adding Conductor Sort to the Configuration

We take the same approach as we did with ComposerSort, but because we are using a non-standard field we use its actual tag name which for all formats is CONDUCTOR_SORT (note the underscore), case does not matter. Because we are adding another rule to the itemTags and tagValue we separate the rule with a comma.

i.e. 

itemTags:ComposerSort, Conductor_sort  
tagValue:Composer.value.sort={ComposerSort},Conductor.value.sort={Conductor_Sort} 





And if we rescan and view in our control point we can see conductors are now sorted by their last name.




Orchestra Sort

We can apply the same mechanism for the Orchestra field. Orchestras are not individuals so the first name / last name rule does not apply. But the problems of sorting non-latin names and avoiding orchestras with 'The' at the start of the name all being grouped under 'T'  do. So simply modify configuration adding the following, as shown in the screenshot.

i.e. 

indexTags:Orchestra
itemTags:Orchestra_sort
tagValue:Orchestra.value.sort={Orchestra_sort}




We can apply sort to the Artist and All Artists index as well, but there is much more to discuss with artists. Next post we change tack and show how to use SongKong with one of MinimServers killer features, Groups and Works.



 

No comments:

Jthink blog Jthink Facebook page google_plus Jthink YouTube channel Email Paul at Jthink Subscribe to Weekly Newsletter