• 1
  • 8
  • 9
  • 10(current)
  • 11
  • 12
  • 15
v17 Music Library Improvements - Krypton
Dave,

First off - thanks for all the work you've been putting in on this project. Just a quick bit of feedback as I've lost track a bit on where Krypton is at and how close to final it's supposed to be.

When I scan my music to the Krypton library it is picking up the composer tag. If I open the database I can see my tag entries in the SongArtistView. So, for example, I have:
Song: Wings
Artist: Birdy
Composer: Jasmine van den Bogaerde / Ryan Tedder

In the SongArtistView there are three lines as expected for Artist, Composer and Composer. When I check the song information in Kodi (using the Estuary skin) it also shows Artist and Composers correctly. This is brilliant. However, when I look under the Composer sub-menu of Roles none of the above appear (i.e neither Jasmine, her alter ego Birdy nor Ryan). They all appear under All Contributors - but that's a hell of a long list and not easy to navigate. There are people (artists) listed in the Composer sub-menu but I'm not sure of the source of that list.

Finally, at present there's no option to choose roles under smart playlist creation.

I know it's still work-in-progress, so I'm not expecting all this to be complete. Just keeping you informed what I'm seeing, and as you know there's no general feedback or progress update section about Krypton in these forums.
Thanks for testing and feedback Paul, always welcome.

The names that appear on Song Info as composers should also appear on the Composer sub-menu (node) like they do under All Contributors. BTW Contributors can be a crazy long list, but it does provide a view for how many people the library knows about. I'm not sure what you are seeing happening. There is still some work in that area to do, but it could be useful for me to have a look at your MyMusic60.db if you are able to put that somewhere I can collect from.

Smart playlists - I have some changes awaiting approveal in that area. You should be able to choose role for an "artists" list, and see just composers etc. but drilling down will fail e.g. click on composer, get blank albums list.

Quote:and as you know there's no general feedback or progress update section about Krypton in these forums.
Yes, I know, makes it hard for both sides IMO. Anything about music I am happy to here on this thread, or on a separate one in the music forum labelled "Krypton"
(2016-09-27, 20:17)DaveBlake Wrote: it could be useful for me to have a look at your MyMusic60.db if you are able to put that somewhere I can collect from.

I've sent you a link by PM, though don't be surprised if I've completely messed it up.
OK, I worked it out - or at least kind of. It's to do with having Album Artists Only set. If I edit the custom node for composers and change the line:

Code:
<path>musicdb://artists/?role=Composer</path>

to

Code:
<path>musicdb://artists/?role=Composer&albumartistsonly=false</path>

all of the composers in the database show up. I'm afraid I don't understand these nodes enough to work out how they are supposed to update when you change Album Artists Only setting, or if this is supposed to be included in all paths by default.
Ah yes, well deduced Paul. The albumartistonly flag option in the node path does effect what composers you see - true, false or missing means use the system "Show song and album artists" setting. When false (or blank and system wide is album and song artist enabled) you see all composers. When true (or blank and system wide is album and song artist disable) you see only those composers that are also album artists - a much shorter list.

So without albumartistsonly in the path the node behaviour changes with the system setting, with it the behaiour is fixed.

I realy could do with getting an explanation of all this in wiki Smile

Thanks for your DB, even though it sounds that all is working OK, that will be interesting test data for me to look at.
I've been testing Kodi 17 betas on my Amazon FireTV and I've encountered an issue where on certain—but not all—albums, all songs are listed twice.

I did some digging and found this query that is executed to display the list of songs for an album:

Code:
SELECT songview.*, songartistview.* FROM songview JOIN songartistview ON songartistview.idsong = songview.idsong  WHERE (songview.idAlbum = 607) AND (songview.idSong IN (SELECT song_artist.idSong FROM song_artist WHERE song_artist.idArtist = 138  AND song_artist.idRole = 1 ) OR songview.idSong IN (SELECT song.idSong FROM song JOIN album_artist ON song.idAlbum=album_artist.idAlbum WHERE album_artist.idArtist = 138))

When I execute that query in an SQL client, I do indeed get a list where each song is listed twice. The records differ in the value for the strRole columns, one record has "Artist" and the other has "Orchestra". This is derived from table song_artist, where there are two records per song, with differing idRole values. The "Orchestra" role makes no sense here, there is certainly no orchestra involved with this rock music album.

I have rescanned an affected album into a completely new and empty database with Beta 3, and the effect remains.

Where does that Orchestra entry come from?

Kind regards
Stefan

Edit: I ripped the affected album myself with EAC and edited the ID3 tags in Amarok, and I am quite certain there are no tags referencing anything about an orchestra. Note these are FLAC files.

Edit II: On further digging I discovered that there is indeed a BAND tag set to the name of the artist which is set by EAC. This tag seems to be one of the three versions of the TPE2 tag, where another version is ORCHESTRA. It's not ideal for EAC to write that tag, but it should also not lead to the songs being listed twice.
Thanks for feedback Stefan.

Firstly yes v17 processes the BAND or ENSEMBLE tag in Vorbis or APE tagged music files and stores the contents as an artist with a role of "orchestra" for that song. There is no standard tag in ID3 v2 but TMCL = "name, orchestra" would do the same, (note not TPE2 which has become album artist in all common use despite the standard saying it is orchestra) . You can stop EAC from creating that tag in the settings for that software is you want, but that is a separate matter fom solving the problem of getting songs twice.

Seeing duplicate songs:
The query you list is a join, and it is intended to have multiple rows per song, one for evey artist that contributes to the song - that includes people that play many different roles e.g musicicans, composer, producer etc. But subsequent processing should be picking out the correct number of songs from this results set, not showing duplicates. That is the area I need to explore.

I have had one report of this before, but the user stopped replying and I was unable to resolved what had happened. I hope you will be able to work with me to see if I can get further this time.
Can we start with a little more information:

Are you using SQLite or a MySQL database?
If MySQL then what version are you running?
Could you possibly share the resulting dataset that the example SQL you list gives when run on your client?
Sure, I am eager to help in any way I can. I am using a remote MariaDB database (version 10.1.17). You can find a dump of the query here: https://paste.kde.org/pnwvsb9p4. IDs have changed from the previous query since the album is currently the only one in the database.
Here's a full SQL dump of the database: https://paste.kde.org/pk61mygaw
not sure if any help dave, but I tried his db and with mysql they come in this order 1-17 1-17 where is on my db (which you have Smile) they show up 1,1 2,2 etc. on my db you can check with this

SELECT songview.*, songartistview.* FROM songview JOIN songartistview ON songartistview.idsong = songview.idsong WHERE (songview.idAlbum = 11255) AND (songview.idSong IN (SELECT song_artist.idSong FROM song_artist WHERE song_artist.idArtist = 87 AND song_artist.idRole = 1 ) OR songview.idSong IN (SELECT song.idSong FROM song JOIN album_artist ON song.idAlbum=album_artist.idAlbum WHERE album_artist.idArtist = 87))
Hum.... MariaDB, that could be contributing.

I got the database dump of the single album, and that all looks as I expect. But the query results link didn't exist, and I really need to see the dataset that MariaDB is returning when running that songview query. My suspicion is that row order is different to what SQLite and MySQL return. There is no "ORDER BY" in the query, as Kodi does its own sorting not the RDBMS most of the SQL does not have sort order, so MariaDB could be defaulting to an unexpected order that is cocking up the subsequent dataset processing.

Stefan if you could supply the dataset result for that query I should be able to confirm or rule this idea out.

Marantz not too sure what you are saying, but always happy to have others take an interest. Are you saying you get duplicated tracks too ? If so then remind me of you system please (I know you have told be before, but I lose track!)

Generally people forgive me if I forget who you are, what you have, and what we did togther.... Smile
I don't mean to be rude, but I am getting old and these details become a blur.
I linked a CSV dump of the dataset result in post #143. Or do you need some other format?

Edit: The forum adds a period to the end of the URL that makes it point nowhere. You'll have to remove that manually.
Link cocked by forum, ah yes, of course!

And it is an ordering issue. MariaDB returning things differently from MySQL/SQLite by default, then the processing of the dataset incorrectly finds the tracks. The solution is to add ORDER BY, but I do wonder if it will impact speed generally.

Thanks for this. Will you mind testing a patch when I make one?
Certainly!

You probably know this, but it's generally not a good idea to expect a certain kind of sorting from a database, especially if you don't know what kind of database engine you are querying. Without ORDER BY, record order is usually undefined, so, taking a certain kind of result for granted can backfire, as seen here. Smile
davetblake, I tried myself with mariadb 10.0 which has always worked for me, and the version of my db you have is with mariadb 10.0. That John williams album I posted idAlbum = 11255 also shows up twice when I scanned today using beta3, back when I used beta1 or two it worked. So something must have changed in the scanning.
  • 1
  • 8
  • 9
  • 10(current)
  • 11
  • 12
  • 15

Logout Mark Read Team Forum Stats Members Help
Music Library Improvements - Krypton1