Kodi Community Forum

Full Version: The perennial classical music scraping problems
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
So I have a couple of thousand works of classical music and I'd like to play them back on the speakers in the sitting room, which are connected to a fairly new Pivos Xios DS running the latest Gotham beta nightly.

This has proven... problematic.

They are all completely consistently tagged Ogg Vorbis files (I wrote the ripping and tagging scripts, so I can be sure they are consistent), one Ogg file per movement in a multilevel directory hierarchy, using Ogg comments (composer, title, tracknumber etc) plus 'artist' for the actual performer of the work, date for the performance date, plus a couple of nonstandard tags that I don't expect anything to handle without help: compositiondate and classification (which holds the opus number, etc).

Now even though XBMC can't handle the composer tag, I can at least get the composers' names to appear by using the albumartist tag. But... that's not ideal, because there appears to be no way to get XBMC to show *only* the album artist: all we have is 'artist', which shows you a horrible mishmash of composers and performers, jammed together without distinction.

That's bad enough, but worse yet, if we have multiple recordings of a single work (differentiated by 'date' and 'artist' but with the same 'title' and 'albumartist'), XBMC jams all the recordings together, *in track number order*, so all the recordings of the first movement appear before all the recordings of the second, etc. This seems wholly useless for any purpose.

Obviously, this is worse than useless. What I really need is to display only album artists at the top level for any file containing both an album artist and an artist, and have an extra layer by artist, under the title layer, iff there is more than one artist for a given (title * album artist) combination, but XBMC appears to have no way to do that.

So... has anyone else tackled this problem? Is there an easy solution I'm missing, perhaps involving some new tag or a hack on an existing one, or will I have to dive into the code?