Genres from artist.nfo not appearing as Genres
#1
I just went through my entire music collection and created artist.nfo files for all artists. I scraped last.fm to get the tags, and cleaned it up and added these tags as genres into the NFO files. I just ran my first scan yesterday, and realized that these genres are NOT showing up when I click "Genres". I made several custom genres that should be appearing in the list, but are not. The only genres that DO appear are the ones that are are embedded within track tags. HOWEVER, when I go to the artist information page, the custom genres all correctly appear. The NFO files were all created using the correct formatting, as outlined here.

[Rest of quest spilt into separate thread]

I'm using Kodi 16.1 (directly from the google play store) on an android tablet.
Reply
#2
(2016-06-02, 13:38)nuentes Wrote: I just went through my entire music collection and created artist.nfo files for all artists. I scraped last.fm to get the tags, and cleaned it up and added these tags as genres into the NFO files. I just ran my first scan yesterday, and realized that these genres are NOT showing up when I click "Genres". The only genres that DO appear are the ones that are are embedded within track tags. HOWEVER, when I go to the artist information page, the genres all correctly appear. It took me a while to realize just what was going on, but I made several custom genres that should be appearing in the list, but are not. The NFO files were all created using the correct formatting, as outlined here.

Unfortunately after all your efforts artist genres, as scraped from NFO or online sources, are merely display values. You see them when you look at the artist infomation dialog, and that is all. All the genre filtering in both standard nodes, custom nodes and playlists is entirely based on song genre as derrived from the music file tags.

As far as I can tell it is that way by design. I guess it is historic going back to when internal tags were the only way to get library information, and no one has ever tried to tie the scraped artist genre into the database fully relationally, it just gets stored like instruments or date of birth etc.

It is a non-trivial change to get all possible levels of genre working together (or independantly by user choice), and to do so in a way everyone is happy with and can understand, but it is on my ever growing list of things to try to improve.

So sorry if this is unexpected behaviour - point me at the best bit of wiki to change and I will add the explanation.
Reply
#3
(2016-06-02, 17:37)DaveBlake Wrote: Unfortunately after all your efforts artist genres, as scraped from NFO or online sources, are merely display values. You see them when you look at the artist infomation dialog, and that is all. All the genre filtering in both standard nodes, custom nodes and playlists is entirely based on song genre as derrived from the music file tags.

As far as I can tell it is that way by design. I guess it is historic going back to when internal tags were the only way to get library information, and no one has ever tried to tie the scraped artist genre into the database fully relationally, it just gets stored like instruments or date of birth etc.

It is a non-trivial change to get all possible levels of genre working together (or independantly by user choice), and to do so in a way everyone is happy with and can understand, but it is on my ever growing list of things to try to improve.

So sorry if this is unexpected behaviour - point me at the best bit of wiki to change and I will add the explanation.

Oh poo. That was actually the primary reason why I migrated everything to artist.nfo files. Well, looks like I'll be making a python script tonight to write everything to the tags. That sucks. I have to assume that "style" and "mood" are the same way? Not really sure where to update the wiki for this.
Reply
#4
Also - re: genres

I feel this could be cleared up with 1 setting with 3 options:
Music Track Genre determined by:
A: Track Genre + Album Genre + Artist Genre Combined
B: Track Genre + Album Genre
C: Track Genre Only

Maybe that's an oversimplification. I'm new to this... just an idea. Obviously the hard part is actually writing the code, not just making a setting Smile

And another side note - I'm new to using genres - if an artist has genres of "Rock / Pop / Alt Rock", does it really add "Rock / Pop / Alt Rock" as an entry in the Genre list?
Reply
#5
(2016-06-02, 18:42)nuentes Wrote: Oh poo. That was actually the primary reason why I migrated everything to artist.nfo files. Well, looks like I'll be making a python script tonight to write everything to the tags. That sucks. I have to assume that "style" and "mood" are the same way? Not really sure where to update the wiki for this.
Yes with Kodi tags are king! Personally I am happy with that because there is lots of tagging software about, and managing NFO files seems a right faff. Also the current NFO scraping process only works for artists that have a unique folder will all their songs beneath it e.g. Artist/Album/Songs, and this is too simplistic. It fails if you have albums by multiple artists e.g. composer, conductor, orchestra, or for artists on compilations or only featured on songs on albums by other primary artists. Not only does it fail but you can get some very odd results where the common path Kodi found was unexpected.

As for moods and styles, no they are not the same as genre!

Unlike genre, they are just held as a single string for each song, album or artist e.g. a song can have mood = "Cheerful / Fast / Romantic" and nowhere is that split or codified in any way. Want to find "Romantic" songs you need to filter with a rule that "contains" "Romantic". Also song mood comes from tags, whilst album and artist mood comes from scraping and no attempt is made to align them. A mood rule on an artists type smart playlist only looks at artists that had a mood scraped, it pays no heed to mood of the songs and vica versa. So scarpe artist mood, and you can create an artists mood playlist but not a songs one (unless you have also tagged the songs with mood)

Far from consistent!!

Quote:And another side note - I'm new to using genres - if an artist has genres of "Rock / Pop / Alt Rock", does it really add "Rock / Pop / Alt Rock" as an entry in the Genre list?

No, to be clear. If songs are tagged with genre = "Rock / Pop / Alt Rock" (that is space-slash-space the default item separator) then Kodi splits that into 3 genre values "Rock" "Pop" and "Alt Rock" in the genre list. Do some test tagging and all will become clear.


Quote:I feel this could be cleared up with 1 setting with 3 options:
Music Track Genre determined by:
A: Track Genre + Album Genre + Artist Genre Combined
B: Track Genre + Album Genre
C: Track Genre Only

Maybe that's an oversimplification. I'm new to this... just an idea. Obviously the hard part is actually writing the code, not just making a setting Smile
Suggestions always welcome, I enjoy talking requirements and solutions through with others. Writing code is easy, that's pretty much typing, good design is the hard part.

It needs to deal with having artist genre but missing for songs, or having both but conflicting. I agree that simply ignoring the scraped value is unhelpful 9and darn annoying if you just spent time entering them). It also impacts on how navigation works - current standard nodes work differently to playlists - but all that for another thread sometime (where I can confuse everyone at the same time).

I'll come back on your "split albums" when you have shown me your tags/screenshots.
Reply
#6
(2016-06-02, 19:53)DaveBlake Wrote: Yes with Kodi tags are king! Personally I am happy with that because there is lots of tagging software about, and managing NFO files seems a right faff. Also the current NFO scraping process only works for artists that have a unique folder will all their songs beneath it e.g. Artist/Album/Songs, and this is too simplistic. It fails if you have albums by multiple artists e.g. composer, conductor, orchestra, or for artists on compilations or only featured on songs on albums by other primary artists. Not only does it fail but you can get some very odd results where the common path Kodi found was unexpected.

As for moods and styles, no they are not the same as genre!

Unlike genre, they are just held as a single string for each song, album or artist e.g. a song can have mood = "Cheerful / Fast / Romantic" and nowhere is that split or codified in any way. Want to find "Romantic" songs you need to filter with a rule that "contains" "Romantic". Also song mood comes from tags, whilst album and artist mood comes from scraping and no attempt is made to align them. A mood rule on an artists type smart playlist only looks at artists that had a mood scraped, it pays no heed to mood of the songs and vica versa. So scarpe artist mood, and you can create an artists mood playlist but not a songs one (unless you have also tagged the songs with mood)

Far from consistent!!

I mean, I get that tags are the way to go for the masses, but I really thought this would work. I feel I'm taking a tv show/episode approach to music, but there is such an old infrastructure behind music, that it's very well set in it's ways at this point. Ok - well, it's good to know that at least I won't need to take these measures with moods and styles

(2016-06-02, 19:53)DaveBlake Wrote: No, to be clear. If songs are tagged with genre = "Rock / Pop / Alt Rock" (that is space-slash-space the default item separator) then Kodi splits that into 3 genre values "Rock" "Pop" and "Alt Rock" in the genre list. Do some test tagging and all will become clear.
Ah - I had scanned some recently downloaded albums, and saw an entry that had slashes in it, so I thought it was combining them. However, it must have just been one poorly tagged album.

(2016-06-02, 19:53)DaveBlake Wrote: Suggestions always welcome, I enjoy talking requirements and solutions through with others. Writing code is easy, that's pretty much typing, good design is the hard part.

It needs to deal with having artist genre but missing for songs, or having both but conflicting. I agree that simply ignoring the scraped value is unhelpful 9and darn annoying if you just spent time entering them). It also impacts on how navigation works - current standard nodes work differently to playlists - but all that for another thread sometime (where I can confuse everyone at the same time).

I'll come back on your "split albums" when you have shown me your tags/screenshots.
Hmm - maybe I should provide an example:
Let's imagine an artist with genre's of Metal / Alt Metal releases a softer album which gets tagged as Alt Metal / Alt Rock, and on this album, they have a track that is tagged Rock / Pop

If the user has option A enabled, the genre for this track would resolve to Metal / Alt Metal / Alt Rock / Rock / Pop.
If they had option B enabled, the genre for this track would resolve to Alt Metal / Alt Rock / Rock / Pop
and if they had C enabled, it would resolve to Rock / Pop


Back to the split albums: http://i.imgur.com/dbyIsdR.png
Reply
#7
(2016-06-02, 21:51)nuentes Wrote: I mean, I get that tags are the way to go for the masses, but I really thought this would work. I feel I'm taking a tv show/episode approach to music, but there is such an old infrastructure behind music, that it's very well set in it's ways at this point. Ok - well, it's good to know that at least I won't need to take these measures with moods and styles

You are not alone in wanting Kodi to use the scraped artist genres, but of course there are a lot of us that rely on the current behaviour too. But in my view it is video that is behind in this area by making little if any use of file tags. With video you have to have NFO or scrape and parse the filename etc., music is well ahead because it has tags Smile

Quote:Ah - I had scanned some recently downloaded albums, and saw an entry that had slashes in it, so I thought it was combining them. However, it must have just been one poorly tagged album.
Kodi will recombine (song) genre values to make a single string to display for an item, possibly what you saw, but the genres node will list them individulally.

Quote:Hmm - maybe I should provide an example:
Let's imagine an artist with genre's of Metal / Alt Metal releases a softer album which gets tagged as Alt Metal / Alt Rock, and on this album, they have a track that is tagged Rock / Pop

If the user has option A enabled, the genre for this track would resolve to Metal / Alt Metal / Alt Rock / Rock / Pop.
If they had option B enabled, the genre for this track would resolve to Alt Metal / Alt Rock / Rock / Pop
and if they had C enabled, it would resolve to Rock / Pop

Yes I got what you meant, but an example is always useful. Lots more decisions to make of course.
How does genres node work - showing union of values from all levels or depending on A, B, or C option?
How does the genre for an artist or album resolve, option dependant same as song?
How does drill down from genres node work?
e.g. C enabled I click on genre "Rock" what artists do I see?
C enabled I click on genre "Metal", what artists do I see? Then what albums and then songs?
Say some of my songs don't have genre tags but the artist(s) does(do), do they apply to those songs regardless?
Say my song genres are a mess I want to ingore completely, can I?

All rhetorical, but just a sample of why it is more than just a setting Smile
Reply
#8
Hum.... I think it makes sense to split this thread we are having two separate conversations really. So lets see if my mod skills are up to it!

There we go, discussion of splt EP etc. is here http://forum.kodi.tv/showthread.php?tid=278117
Reply
#9
For me the perfect behaviour would be that Kodi was able to set genres per song basis, just with the tags I saved for each song. Then to take them and set the album genres using those of the songs it contains, and then using those from the albums to set the artist genres. It is what has the most sense to me though i know that would be not possible with actual Kodi.
At the moment I'm not using scrapers nor nfo's, and looking with interest to Kodi 17, though I didn't download it yet.
Time, time, time is what I lack...lol
HTPC
Silverstone Grandia GD05 - Intel i5 3570k -Asus H61M-G Micro-ATX - Unidad Blu-ray
MSI GTX970 4GB GDDR5 - 8 GB RAM DDR3 - AVR Denon X3400H Atmos - LG  OLED 55C7V
Reply
#10
HOLD THE PHONE.

Inspiration just struck.

Currently, within my NFO files, I am using the Genre and Mood tags, however STYLE is blank (it is also blank in all of my media tags). Since you said style behaves differently, could I (in theory) duplicate my genre tags into the style tags, and then only use the style tags as if it were genre? And could I make artist smart playlists using this tag?

I was working on the script yesterday, and realized I don't know how to check/change tags for m4a/flac files with mutagen, only mp3s. Rather than read or learn, this would be a much quicker fix for me.
Reply
#11
(2016-06-03, 14:37)vicmanpergar Wrote: For me the perfect behaviour would be that Kodi was able to set genres per song basis, just with the tags I saved for each song. Then to take them and set the album genres using those of the songs it contains, and then using those from the albums to set the artist genres. It is what has the most sense to me though i know that would be not possible with actual Kodi.
At the moment I'm not using scrapers nor nfo's, and looking with interest to Kodi 17, though I didn't download it yet.
Time, time, time is what I lack...lol

That is what Kodi currently does. Smile
Well kind of. It does not set artist genre but all the filtering of artist by genre uses the genre of the songs by that artist, as if that was the genre of the artist.

Time is the problem for all of us!
Reply
#12
(2016-06-03, 15:31)nuentes Wrote: Currently, within my NFO files, I am using the Genre and Mood tags, however STYLE is blank (it is also blank in all of my media tags). Since you said style behaves differently, could I (in theory) duplicate my genre tags into the style tags, and then only use the style tags as if it were genre? And could I make artist smart playlists using this tag?

I was working on the script yesterday, and realized I don't know how to check/change tags for m4a/flac files with mutagen, only mp3s. Rather than read or learn, this would be a much quicker fix for me.

So to recap: your songs are tagged with genres, but not the ones you want. You have collected genre data and created artist.nfo with the genre you want only to find Kodi isn't looking at it.

Yes if you put that artist genre value in mood or style artist metadata via an NFO then you could make smart playlists that use it. There isn't a way to make a node that lists all the mood or style values, like the genres node does, you would have to make a smart playlist for each value explicitly. The filter rules are not passed down from a playlist, so having filtered a list of artists by mood or style when you click on one of them you get all their albums regardless of mood or style.

I don't know if this gets you what you want?

The problem you will face is with artists that do not have a simple unique common folder for all albums and songs. It is a current weakness with NFO.

I don't know how many artists you have in your collection or how they are organised, but I would be tempted to use something like Mp3tag, grab all the files for artists of a certain genre, and tag the songs correctly. Not slick automated scripts etc., manual labour but you end up with something that Kodi can do lots with.
Reply
#13
(2016-06-03, 16:34)DaveBlake Wrote: So to recap: your songs are tagged with genres, but not the ones you want. You have collected genre data and created artist.nfo with the genre you want only to find Kodi isn't looking at it.

Yes if you put that artist genre value in mood or style artist metadata via an NFO then you could make smart playlists that use it. There isn't a way to make a node that lists all the mood or style values, like the genres node does, you would have to make a smart playlist for each value explicitly. The filter rules are not passed down from a playlist, so having filtered a list of artists by mood or style when you click on one of them you get all their albums regardless of mood or style.

I don't know if this gets you what you want?

The problem you will face is with artists that do not have a simple unique common folder for all albums and songs. It is a current weakness with NFO.

I don't know how many artists you have in your collection or how they are organised, but I would be tempted to use something like Mp3tag, grab all the files for artists of a certain genre, and tag the songs correctly. Not slick automated scripts etc., manual labour but you end up with something that Kodi can do lots with.

I only have a few tracks that are tagged with genres. I'd say there is 0.5% of my library of 1200+ artists (4000+ albums) that has tag-embedded genres. For a short while, I had been utilizing the last.fm genre tagging script from Picard, but later abandoned it. The NFO files are the master version of the genre list, as I've cleaned them up quite a bit and filtered out the muck. So yes - the bulk of what you said is true.

That's fine that there is no node for that. I can quickly make some smart playlists (or make the xml files on my computer and then upload), and do some other cool stuff with my skin to get the styles to appear as genres. What I want is to be able to select one genre and get a list of artists within that genre. The purpose is to discover new artists I haven't yet listened to. I usually listen to music by the album, and rarely shuffle tracks, so I just want to pull up a list of artists within a genre (or combination of genres), and then play an album from some artist.

The problem you mentioned is I believe something that I won't have an issue with. All artists are within their own individual folder, with the exception of Various Artists albums.

I outlined by music folder setup pretty well in this post if you are interested
Reply
#14
Ok, use artist mood or style. You could build a set of filter type custom nodes that list artists with a certain mood/style - remember they are a non-codified string, a rule for "contains" "metal" will also find "alt metal" etc. but I';m sure you can find your way around this.

You're sure all artists have their own folder? In our other thread you do have some multiple artist albums, not many perhaps, and sure you could adjust them (taking care with mbids). No songs with featured artists that are different from the primary album artist? No collaborations? Just be aware, I have had Kodi take root as the common folder and mysteriously filled a library with "Adam Ant", other artists being renamed - wierd but quite funny.

Anyway it sounds like it will get you what you want Smile

Don't forget our split Ep discussion continues on the other thread, and I will get back to that scraping thread eventually too.
Reply
#15
Ok, I wrote up the script to update all my artist.nfo files. Thanks for letting me know they are non-codified... I'll use that to my advantage and add a prefix of "xyz" or something to the first genre for each artist. This will make it easy for me to find the primary genre for a artist when building the playlists.
[Edit] - ugh, I just realized I can simply set "begins with" when making the playlist. I am not a smart man. Glad I realized before running the script!

Yeah, there are certainly a few instances of collaborations and featured artists. I'm not terribly concerned if those don't show up. They don't seem to be wrecking my intended result, so I'm not concerned at the moment.

Back to the other side discussion we were having about how genres should work. I guess the biggest thing for me is... If I'm making a smart playlist of artists, the genre should be coming from the artist, rather than inherited from the grandchild object.
Reply



Logout Mark Read Team Forum Stats Members Help
Genres from artist.nfo not appearing as Genres0
This forum uses Lukasz Tkacz MyBB addons.