Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Playlist-Tools-SMP (Read 62767 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: Playlist-Tools-SMP

Reply #125
XD
We are lost in translation
XD
I'm starting to get it
The test that I did this morning with some files already tagged with all necessary tag were very good. The result playlists were very accurate with the song selected. I can wait to have all the library scanned.
It is a cool way to make a listening playlist, almost like a personal DJ.
Hard to learn at the beginning, but worth the effort.

Re: Playlist-Tools-SMP

Reply #126
XD
We are lost in translation
XD
I'm starting to get it
The test that I did this morning with some files already tagged with all necessary tag were very good. The result playlists were very accurate with the song selected. I can wait to have all the library scanned.
It is a cool way to make a listening playlist, almost like a personal DJ.
Hard to learn at the beginning, but worth the effort.

Yep. I'm sorry but that's the design philosophy, do it yourself. It's stated at multiple places hahahaha

If you tag properly the library and fine tune a bit the buttons, you may easily create infinite playlists according to your tastes with your own tracks (no the ones considered to be "popular").

If someone wants "click and done", there it is Spotify or Find n' play script, based on internet charts and popularity. I strongly dislike that approach since:
1. It requires permanent internet connection to play music.
2. It's based on user's listening. And things with more listens are shown more, so they get more listens, ad infinitum...

Personally I listen to more music than English-based music or music with an eurocentric focus. And all those tools fall short as soon as you listen to something "not popular enough", so I prefer tools based on the actual musical content without a bias. I find extremely interesting to create a blues playlist where Hill Country Blues (Otis Taylor) can play nicely along Desert Blues (Ali Farka Touré), even if both come from totally different countries and cultures. But some of their music is actually similar if you consider their roots and how they sound. That's totally lost with the popularity/rating approach.

Spoiler (click to show/hide)

Re: Playlist-Tools-SMP

Reply #127
Not a complaint, is what is it. Hard to learn But quite useful.

I need to make a warning about mixxx.

Didn't support the foobar multi value tags. In the first run I didn't notice because was made in a folder with downloaded files without correct tags. But in the next run in a full tagged folder it destroys all multi value tag (genre, artist, composer,etc..) of every tag managed by the program.

Fortunately, I make regular backups, but this is a serious problem. To make the problem worst, it didn't replace the '; ' with a ', ' or something similar. It joins the values with a space, making almost impossible to recover tags like artist and composer.

It is a pity, the results of key and bpm were good and fast, but this is a no no.

If anybody knows any software to get KEYs in linux .....

The others tools I find were so old and didn't even compile.




Re: Playlist-Tools-SMP

Reply #128
As already noted, picard works fine in any SO. Will remove mixx from the readmes.

You may also use this to get key and BPM:
https://mtg.github.io/essentia-labs/news/2015/12/22/static-binaries-for-extractors/
Code: [Select]
streaming_extractor_music.exe file.flac out.txt
Spoiler (click to show/hide)

Extracting the tag and tagging is up to you, but doable with scripts on batch.

Or KeyFinder
https://github.com/ibsh/is_KeyFinder

Code: [Select]
Tags may be sourced from:

+--------------------------------------------------------------------+
|                           TAGS   SOURCES                           |
+----------+---------------------------------------------------------+
| Tag name |                 Software (UNIX/Windows)                 |
+----------+---------------------------------------------------------+
+----------+---------------------------------------------------------+
|          | Picard - AcousticBrainz Tags   plugin                   |
|          |      https://picard.musicbrainz.org/plugins/            |
|    KEY   +---------------------------------------------------------+
|          | KeyFinder   (*)                                         |
|          |      https://github.com/ibsh/is_KeyFinder               |
+----------+---------------------------------------------------------+
|          | Picard - AcousticBrainz Tags   plugin                   |
|          |      https://picard.musicbrainz.org/plugins/            |
|          +---------------------------------------------------------+
|    BPM   | KeyFinder   (*)                                         |
|          |      https://github.com/ibsh/is_KeyFinder               |
|          +---------------------------------------------------------+
|          | Foobar -   Foo_BPM Plugin                               |
|          |      https://www.foobar2000.org/components/view/foo_bpm |
+----------+---------------------------------------------------------+
|          | Picard - AcousticBrainz Tags   plugin                   |
|          |      https://picard.musicbrainz.org/plugins/            |
|   MOOD   +---------------------------------------------------------+
|          | Foobar -   Biography script (*)                         |
|          |      https://github.com/Wil-B/Biography                 |
+----------+---------------------------------------------------------+
|          | Foobar - Biography script   (*)                         |
|   THEME  |      https://github.com/Wil-B/Biography                 |
+----------+---------------------------------------------------------+
|          | Picard                                                  |
| COMPOSER |      https://picard.musicbrainz.org/downloads/          |
+----------+---------------------------------------------------------+

(*) May require additional configuration or steps to either set a
compatible tag name or merge values. See 'Tagging requisites' readme.

NOTES AND WARNINGS:

- Mixx: https://mixxx.org
Provides KEY tags, but will flatten all multivalue tags with spaces,
making impossible to undone the tagging. Issue has been unresolved for
years.

- Essentia: https://essentia.upf.edu/download.html
See Precompiled extractor binaries (Linux, OSX, Win).
Allow to extrack KEY and BPM tags, but output to a txt file. Could be
used with scripting for batch processing:
streaming_extractor_music.exe file.flac out.txt

Re: Playlist-Tools-SMP

Reply #129
As already noted, picard works fine in any SO. Will remove mixx from the readmes.

Yes it works, and I found out how to avoid overwriting the tags, but going folder to folder is a titanic task with over 70,000 files.
Maybe it can scan without going to the process of identify the album, but I didn't find out how

You may also use this to get key and BPM:
https://mtg.github.io/essentia-labs/news/2015/12/22/static-binaries-for-extractors/
Code: [Select]
streaming_extractor_music.exe file.flac out.txt
Spoiler (click to show/hide)

Extracting the tag and tagging is up to you, but doable with scripts on batch.

Or KeyFinder
https://github.com/ibsh/is_KeyFinder

I'll already try Essentia and keyfinder, along others similar. Some of they need an old ffmpeg library to compile (not present in recent versions).
Some old binaries (linux and windows) works, but going file to file with my library is even worse than release by release. The process to scripting the thing to my need is out of my knowledge.

In the GitHub of mixx there is a reference to fix the problem with multi value and a Pull requests to include the fix in next version, but I think the Pull requests is to prepare the code to an actual fix, so it could be a loooong time until the problem was fixed. (if it is at all)

My major problem is the size of the library to tag and the fact that is already tagged and organized. To new files, there is no problem , I need to retag them anyway, but losing the work of years.....

I thought out  a dirty solution at my scope.
Doing a $meta_sep(multivalue_camp,'++++') in the tags that use mixxx, scan the files and before that split it out again using ++++ as separator. It will be a long time.... But in lack of a better solution seems to be the less painful approach, until a better idea of course.



 


 

Re: Playlist-Tools-SMP

Reply #130
Well considering AcousticBrainz will shutdown this year, at some point I had to find replacements for BPM/key for myself.

So I have implemented key detection within Foobar using Essentia (see above). Along the other tagging tools. Will do the same for BPM. Just uploaded it to github (no release, just clone the repository).

Some unix bugs are fixed (in the current state of the repository), others must be fixed in a new version of SMP. Can't do anything about it. Unix users should backup the xxx-scripts folder first, in case something goes wrong. Will not be able to provide support for 20 days. If updating, please also update all my other scripts with current files (clone repository).

Re: Playlist-Tools-SMP

Reply #131
Well considering AcousticBrainz will shutdown this year, at some point I had to find replacements for BPM/key for myself.

So I have implemented key detection within Foobar using Essentia (see above). Along the other tagging tools. Will do the same for BPM. Just uploaded it to github (no release, just clone the repository).

Some unix bugs are fixed (in the current state of the repository), others must be fixed in a new version of SMP. So can't do anything about it. Unix users should backup the xxx-scripts folder first, in case something goes wrong. Will not be able to provide support for 20 days.

Ah, Picard gets them from AcousticBrainz, that is why it needs to find the release first.

Cool, It will save me a lot of time of retaging, with a large library every operation takes forever. And foobar trend to crash with numerous files processed at once (maybe the memory limit of 32 bits) so it must be done it batch of around 1000 files at a time.

I hope the break will be a good vacation time.

Enjoy!
   

 


Re: Playlist-Tools-SMP

Reply #132
Well considering AcousticBrainz will shutdown this year, at some point I had to find replacements for BPM/key for myself.

So I have implemented key detection within Foobar using Essentia (see above). Along the other tagging tools. Will do the same for BPM. Just uploaded it to github (no release, just clone the repository).

Some unix bugs are fixed (in the current state of the repository), others must be fixed in a new version of SMP. So can't do anything about it. Unix users should backup the xxx-scripts folder first, in case something goes wrong. Will not be able to provide support for 20 days.

Ah, Picard gets them from AcousticBrainz, that is why it needs to find the release first.

Cool, It will save me a lot of time of retaging, with a large library every operation takes forever. And foobar trend to crash with numerous files processed at once (maybe the memory limit of 32 bits) so it must be done it batch of around 1000 files at a time.

I hope the break will be a good vacation time.

Enjoy!
   
Yep. I have written a new ticket at picard to essentially replace AcousticBrainz (which will no work at 2023) with offline processing using Essentia (the backend of AcousticBrainz).

https://tickets.metabrainz.org/projects/PICARD/issues/PICARD-2512?filter=allopenissues

So if it gets approved (feel free to vote it), will be on Picard too. No changes for the final user, but at least data will be available forever and requires no release identification.

Re: Playlist-Tools-SMP

Reply #133

Yep. I have written a new ticket at picard to essentially replace AcousticBrainz (which will no work at 2023) with offline processing using Essentia (the backend of AcousticBrainz).

https://tickets.metabrainz.org/projects/PICARD/issues/PICARD-2512?filter=allopenissues

So if it gets approved (feel free to vote it), will be on Picard too. No changes for the final user, but at least data will be available forever and requires no release identification.

Seems that I must create a GitHub account  ;D

About the new set, Scripts crashes foobar (world map work, but it always do). I previously delete all old panels and the js_data folder related info.

Maybe I need some file to be present and if not trigger the SMP bug and crash the program itself?

Re: Playlist-Tools-SMP

Reply #134
I forgot to test the playlist manager. I delete the panel when it starts crashing in pm tests.

Works fine.

The buttons toolbar and playlist tools not
For curiosity, I tried to load the test1.js (toolbar buttons) that you upload in previous posts. This file load the toolbar. I can even add some buttons, until I tried any from playlist tools, that crashes the panel but not foobar. Seems logic that things not work well because is from another release, but it loads. Maybe this could give you some clue.



Re: Playlist-Tools-SMP

Reply #135
More test. With your last github files, no old files.

Using the _switchPaths.bat

The 32bit test didn't work in this .bat. I must copy the fart_32.exe to fart.exe to run the .bat.

After this the buttons_toolbar.js didn't crash foobar anymore, but crashes the panel. The readme popups are shown

buttons_toolbar::
Code: [Select]
cyclicTagsDescriptor - File loaded: Z:\home\xxxxx\bin\foobar2000\profile\scripts\SMP\xxx-scripts\helpers\dyngenre_map_xxx.js
Search Same By Button loaded.
Remove Duplicates Button loaded.
Search by Distance Buttons loaded.
User's music_graph_descriptors - File loaded: Z:\home\xxxxx\bin\foobar2000\profile\scripts\SMP\xxx-scripts\helpers\music_graph_descriptors_xxx_user.js
User's music_graph_descriptors has been loaded but it contains no changes... using only default one.
Search by Distance (CUSTOM) Buttons loaded.
Playlist Tools Menu Button loaded.
Playlist Tools: creating default settings...
Playlist Tools: updating settings...
foo_spider_monkey_panel:
Error: Spider Monkey Panel v1.6.2-dev+7c0928bf (Playlist Tools: Buttons Bar: Playlist Tools: Buttons Bar v3.0.0-beta8 by XXX)
include failed:
deleteMainMenuDynamic is not defined

File: playlist_tools_menu.js
Line: 4885, Column: 2
Stack trace:
  createMainMenuDynamic@playlist_tools_menu.js:4885:2
  updateMenuProperties/<@playlist_tools_menu.js:4754:8
  updateMenuProperties@playlist_tools_menu.js:4752:11
  @buttons_playlist_tools.js:39:2
  @buttons_toolbar.js:112:4

buttons_playlist_tools:
Code: [Select]
User's music_graph_descriptors - File loaded: Z:\home\xxxxx\bin\foobar2000\profile\scripts\SMP\xxx-scripts\helpers\music_graph_descriptors_xxx_user.js
User's music_graph_descriptors has been loaded but it contains no changes... using only default one.
Playlist Tools: creating default settings...
Playlist Tools: updating settings...
foo_spider_monkey_panel:
Error: Spider Monkey Panel v1.6.2-dev+7c0928bf (Playlist Tools: Button: Playlist Tools: Button v3.0.0-beta8 by XXX)
deleteMainMenuDynamic is not defined

File: playlist_tools_menu.js
Line: 4885, Column: 2
Stack trace:
  createMainMenuDynamic@playlist_tools_menu.js:4885:2
  updateMenuProperties/<@playlist_tools_menu.js:4754:8
  updateMenuProperties@playlist_tools_menu.js:4752:11
  @buttons_playlist_tools.js:39:2

Direct crash, no readme popup



Re: Playlist-Tools-SMP

Reply #136
More test. With your last github files, no old files.

Using the _switchPaths.bat

The 32bit test didn't work in this .bat. I must copy the fart_32.exe to fart.exe to run the .bat.

After this the buttons_toolbar.js didn't crash foobar anymore, but crashes the panel. The readme popups are shown

buttons_toolbar::
Code: [Select]
cyclicTagsDescriptor - File loaded: Z:\home\xxxxx\bin\foobar2000\profile\scripts\SMP\xxx-scripts\helpers\dyngenre_map_xxx.js
Search Same By Button loaded.
Remove Duplicates Button loaded.
Search by Distance Buttons loaded.
User's music_graph_descriptors - File loaded: Z:\home\xxxxx\bin\foobar2000\profile\scripts\SMP\xxx-scripts\helpers\music_graph_descriptors_xxx_user.js
User's music_graph_descriptors has been loaded but it contains no changes... using only default one.
Search by Distance (CUSTOM) Buttons loaded.
Playlist Tools Menu Button loaded.
Playlist Tools: creating default settings...
Playlist Tools: updating settings...
foo_spider_monkey_panel:
Error: Spider Monkey Panel v1.6.2-dev+7c0928bf (Playlist Tools: Buttons Bar: Playlist Tools: Buttons Bar v3.0.0-beta8 by XXX)
include failed:
deleteMainMenuDynamic is not defined

File: playlist_tools_menu.js
Line: 4885, Column: 2
Stack trace:
  createMainMenuDynamic@playlist_tools_menu.js:4885:2
  updateMenuProperties/<@playlist_tools_menu.js:4754:8
  updateMenuProperties@playlist_tools_menu.js:4752:11
  @buttons_playlist_tools.js:39:2
  @buttons_toolbar.js:112:4

buttons_playlist_tools:
Code: [Select]
User's music_graph_descriptors - File loaded: Z:\home\xxxxx\bin\foobar2000\profile\scripts\SMP\xxx-scripts\helpers\music_graph_descriptors_xxx_user.js
User's music_graph_descriptors has been loaded but it contains no changes... using only default one.
Playlist Tools: creating default settings...
Playlist Tools: updating settings...
foo_spider_monkey_panel:
Error: Spider Monkey Panel v1.6.2-dev+7c0928bf (Playlist Tools: Button: Playlist Tools: Button v3.0.0-beta8 by XXX)
deleteMainMenuDynamic is not defined

File: playlist_tools_menu.js
Line: 4885, Column: 2
Stack trace:
  createMainMenuDynamic@playlist_tools_menu.js:4885:2
  updateMenuProperties/<@playlist_tools_menu.js:4754:8
  updateMenuProperties@playlist_tools_menu.js:4752:11
  @buttons_playlist_tools.js:39:2

Direct crash, no readme popup




My bad because I updated it without testing from repository...

I missed to upload a helper file so it crashes (but works fine on my side since I have all files).
Also fixed the bat file (I reversed the architecture identification, so it used the x64 bit binary on x86 systems ::) ) .
Updated github with both changes. So... redownload all scripts (to not mix absolute and relative paths) and perform the same steps you did before to make it work (no need to change fart anymore though).

The other problems... SMP bugs, you know. If relative paths don't work, then that's an old bug since years... can not do anything about it and @TheQwertiest has not been able to fix it yet. Will report it again after my trip.

Re: Playlist-Tools-SMP

Reply #137
Bang!


Perfect.

The script works, no errors of any kind in installation.

I used the external taggers. Key, FooID, BPM and ReplayGain working.

I add and remove several buttons without problem.

Now is time to tune up my tags.

Bpm, fooid and key could  take time but are covered (Cool external tools additions)

After finishing that comes the big genre/style restructuration.

I read the search by distance info and the dyngenre_map_xxx.js with the clusters, supergroup, etc.

Now makes sense to me what you said about structure, looks very cool how its group and makes relations and exclusions between genres and styles.

A few questions about the different kinds of search.

WEIGHT: -> Score
In the description, there is no reference to any specific sets of genres, styles tags to match. It takes my genre and style as is or use the music_graph_descriptors?

GRAPH: -> Score + Distance
How is taken the data to compare with music_graph_descriptors?
I mean, it joins my genre+style and then makes its internal magic or my genre tag will compare to music_graph genres and my style tag with music_graph styles separately?

DYNGENRE: -> Score
Only match genre/style again dyngenre_map_xxx?

In general

I assume that all method makes use of mood, theme, key and bpm.

Makes sense to add here FooId as a custom?

Hope that it use the merge and match method. With only minimal adjust (that I can do in the user file) my previous tags will be ready to rock.

If it is done separately, it will involve more work. My current structure (discogs similar) have few genres and too much generic, is almost  entirely dependent on styles.



Excellent work man.

I'm just beginning to understand the internal dynamics but the deeper I dig, the more useful it seems.

An of course BIG thanks for your support and especially for your patience

Have a lovely holidays

 8)

Re: Playlist-Tools-SMP

Reply #138
WEIGHT: -> Score
In the description, there is no reference to any specific sets of genres, styles tags to match. It takes my genre and style as is or use the music_graph_descriptors?

Code: [Select]
WEIGHT presets work by matching genre\style tags (Rock != Hard Rock),
without using complex logics. Therefore they work with arbitrary tag
values.

'As is'. Just simple matching. Works with any tag.

GRAPH: -> Score + Distance
How is taken the data to compare with music_graph_descriptors?
I mean, it joins my genre+style and then makes its internal magic or my genre tag will compare to music_graph genres and my style tag with music_graph styles separately?
Merged. Then matched against the descriptors with complex logic. Simple matching is also taken into account (see previous method) for not found styles/genres.

DYNGENRE: -> Score
Only match genre/style again dyngenre_map_xxx?

Yep. I may add more values there. It's a simplification of the graph method (much faster).

In general

I assume that all method makes use of mood, theme, key and bpm.

Makes sense to add here FooId as a custom?
Yes. How methods and tags are used is done according to your configuration.

No, fingerprinting is useless for similarity comparison. It's only useful to find duplicates.


Hope that it use the merge and match method. With only minimal adjust (that I can do in the user file) my previous tags will be ready to rock.
Yep, [configured] tags are merged and matched. Note you must tag your entire library in a consistent way though. Don't use Discogs for some and MusicBrainz for others, since that will give mixed results. Stick to one method for all tracks, it will work fine.

Re: Playlist-Tools-SMP

Reply #139
Hi @regor, hope you enjoy your vacations!
Thanks for the answers.
I'm interested in the Graph (score+distance).
In order to make the search more accurate, is important to maintain consistence in tags. Not only internal, also with the values in music_graphs.
My actual tags have the first, but for the tests I did seems to present some inconsistencies with the music_graph ones.

For example a NIN album. I have a structure similar to discogs.
Genre: Electronic, Rock
Style: alternative Rock, Industrial Rock.

If i understand the match, the electronic genre will match "['Electronic Music_supercluster',electronic']],"  and this is "['Electronic Music_supercluster',['Breakbeat Dance_cluster','Four-to-the-floor Dance_cluster','Downtempo_cluster']]" and is an anti influence "['Electronic Music_supercluster',['Metal_supergenre','Classic Rock XL','Punk Rock_supergenre','Country_supergenre','Blues_supergenre','Jazz_supergenre']]" ,  for potential similar groups for industrial and alternative rock.

So in this scenario the electronic genre tag is misleading the results for an artist that could travel into industrial and alternative, introducing dance elements and negating the link to rock group and metal.

So my genre tag is making more bad than good for search by distance.

As I understand the structure I need to aim to super_genres and let the component do the clusters and super_cluster group.

So genre:industrial style:industrial rock, alternative rock would be the right choice?

Same for other cases as genre:electronic style:House, chicago house. Genre:House Style: chicago house will be the way to go?

Re: Playlist-Tools-SMP

Reply #140
So genre:industrial style:industrial rock, alternative rock would be the right choice?

Same for other cases as genre:electronic style:House, chicago house. Genre:House Style: chicago house will be the way to go?
genre:electronic style:House, chicago house.
Genre:House Style: chicago house

Both are equivalent (there is no practical difference between styles and genres, they are just for hierarchy in library viewers). Although I would not tag something as house if it's also Chicago House (unless it's really relevant).

About the rest, I don't see it as a problem although I get your point.

You can always find an artist in a genre/style/cluster which may be related to another group from another genre/style which is also an "anti-influence", but that doesn't invalidate the code logic or the tag system you use.

I mean... obviously there are cases, like NIN, where you can argue they may be similar to Metal or alt. rock for ex. BUT
1. Tracks are meant to be individually tagged. If you tag all tracks from an album/artist with the same genre/style then obviously that's not the real deal. Mass tagging systems which arbitrarily assign a genre to an artist give wrong results. Not all tracks from Aerosmith are classic rock, neither Frank Sinatra did only swing.
2. If you stick to an arbitrary mass tagging system (discogs), the results are consistent with that system. Garbage in, garbage out.
3. Electronic music is still contrary to Country for ex. In a general sense, no matter how many particular counterexamples you give. It is simply a rule saying "Country is usually not similar to electronic music". Obviously there are artists which surely mix  country and electronic.
4. GRAPH method clearly imposes a particular tagging ecosystem (specific genre/styles, tracks tagged individually, ....), and there is no way to bypass it. The more curated the tags are, the better the results. SCORE or DYNGENRE method may give better results for non consistent tagged libraries.
5. GRAPH requisites are clearly stated everywhere though, and the tagging system is shown in "Draw Graph.html" file in case someone doesn't want to dive into the js files. There may be cases where an user doesn't agree with my pov, that's fine, but at least the system is clearly documented and shown in case anyone wants to get the best results. In any case "music_graph_descriptors_xxx_user.js" may be freely edited to add your own tags, anti-influences, etc.

I see it in a different way. You may have an Electronic, Country track. And both genres may be "anti-influences", but that may be right. The code will show first tracks with both genres, then tracks with only one of them. And that's what anyone would naturally expect. If I have a country electronic track, I don't expect most country tracks being similar to it, that's what "anti-influence" aims for.

For NIN in particular, there is an Electro-industrial estyle btw. For ex. their 94's album:
X
I would not say none of those tracks are alt. rock, and only some of them are industrial rock.

Now if you happen to have a lot of industrial/electronic tracks and they are not shown as similar tracks then... either you are not configuring the parameters right, or you are not using the right genre/styles (clearly electronic + industrial is = electro-Industrial) or you need an additional "influence" parameter. Only in the last case you may add your own parameters to the user file (see the readmes) or I may consider adding it.

For ex. lets say you note electro-Industrial should be linked as "origin/derivate" to ambient industrial. If that was the case, I could add it. (not a real example)

Re: Playlist-Tools-SMP

Reply #141
https://www.discogs.com/release/1022210-Aerosmith-Aerosmith
Released:   Jan 1973
Genre:   Rock
Style:   Blues Rock, Classic Rock

https://www.discogs.com/release/4022434-Aerosmith-Music-From-Another-Dimension
Genre:   Rock
Style:   Classic Rock, Hard Rock
Year:   2012

Speaking about discogs, for ex. according to this those 2 albums should be pretty similar XD I don't think so, no way the 2012 album is a classic rock album.... (neither all tracks have the same style, nor they are hard rock). There are also date considerations but those are taken already into account. Applying graph method to "Discogs tagged" libraries give results as good as the tagging system, i.e. not so good.

You may have to consider time spent tagging vs usefulness of tags. Fast tagging methods have their own weaknesses. Just stick with whatever works for u, sometimes good enough is good enough... (and obviously if you improve your tags manually fixing them, the results will be better).

Re: Playlist-Tools-SMP

Reply #142
Maybe the examples gives a wrong impression of the intention of my question.
My problem is that maybe my structure is too generic in the genre field and it gives me mixed results when doing graph searches.
I tried to explain.
I used genre as a great placeholder, and I have very little list of genres. electronic, classical,rock, pop, soul, funk, metal, hip-hop... and a few more for specific things as soundtrack, child music....
The rest goes to the style tag.
This is useful for facets use, but when I was trying the search by distance I noticed that it is leading to a lot of misleading results.
Not only with electronic, also with rock and others, because in my structure the genre tag is more a generic placeholder (to filter more easily in facets) than a real genre tag.
The real genre definition is made with the style tag.
In summary, under my electronic tag there are from classical oriented music (like Peter Broderick) to extreme metal music.
Using facets is easy to navigate, but when I'm using the search by distance I saw that it is not too optimal.
My genre tag is too generic and that the search includes a lot of misplaced elements from unrelated styles that are linked by my generic placeholder tag.

I did some test remaping the genre and style component tags to my style only and the results was a bit better but this leads to a new problem, not all files have a style, some are simply rock, reggea, hip-hop...
So I was thinking that I could redo my genre tag system to something less generic. Eliminating the generic placeholder (electric, rock, etc) and elevating in the hierarchy things like classic rock, hard rock, house, to the first category (genre)
And in order to make them more graph friendly I would like to know if using the equivalents in style_supergenre as my genre tag could improve the situation..
I'm not trying to make the question about the accuracy of genres and style definitions. (subjetive by nature), I'm only trying to make my structure more suitable to use the graph search.
Yeah the tag from online services are sometime a bit off (with all services, the pop/rock tag from allmusic is abominable) but my tags are not a copy or any of them. The structure is similar to discogs(few genres with generic meaning and styles to define differences) but the values are hand wrote.


For controversial reason only :P
industrial+electronic is not equal electro-industrial.
Front Line Assembly and Esplendor Geométrico are not a thing that must be in the same similar songs tracks list.
But jokes aside, that was not my concern.

For example.
I made a search distance with a Front Line Assembly song (genre:electronic style:electro-industrial)
Mostly are good results, covenat, kmfdm, die krupps ministry,... but it gives me also some weird ones like zappa (an album that have electronic, concrete music influences), steve reich (electronic, minimalism), Aphex Twin (IDM, electronica).
So the problem seems to be the generic electronic genre tag


Re: Playlist-Tools-SMP

Reply #143

For NIN in particular, there is an Electro-industrial estyle btw. For ex. their 94's album:
[attach type=thumb]22846[/attach]

A lot of useful info in this discussion by you both.

Regarding the image above - how did you tag those? manually or is there a mass tagger for track level genres? 


Bang!


I really like what you have going on there!
However does clicking 'style/artist genres/album genres' display selection data somewhere? (it's odd as ALL style/artist genres is selected but only Bricolage displays)

Re: Playlist-Tools-SMP

Reply #144

For NIN in particular, there is an Electro-industrial estyle btw. For ex. their 94's album:
[attach type=thumb]22846[/attach]

A lot of useful info in this discussion by you both.

Regarding the image above - how did you tag those? manually or is there a mass tagger for track level genres? 


Bang!


I really like what you have going on there!
However does clicking 'style/artist genres/album genres' display selection data somewhere? (it's odd as ALL style/artist genres is selected but only Bricolage displays)

The facets component is in playlist mode, so only show info from the select playlist.
The playlist is generated by the library tree panel of the left.
I have bricolage album selected, so all info in facets is about this only album.
About tags:
First genre-style are my tags, handwritten album by album.
Artist and album genres are an amalgam of almusic, discogs and last.fm genres colected by diverse components. Usefull to have a quick view of what kind of data I had download already and like a template to tag the principal genr and style..

When the playlist have more albums, for example in this playlist from the folder that contain new additions to library, not tagged and classified yet, it looks very different.


Of course the facet filters are adaptable to different browsing activities. In this case, are oriented to make easier to identify missing data.

Re: Playlist-Tools-SMP

Reply #145
The facets component is in playlist mode, so only show info from the select playlist.

When the playlist have more albums, for example in this playlist from the folder that contain new additions to library, not tagged and classified yet, it looks very different.

Of course, thanks! I was actually thinking 2 different Facets. (*edit*) I just realized you're probably also using Wilb's Library Tree on the left side, not Facets

RE: preview or Library incoming items - I run a 2nd Foobar customized for retagging workflow. (Polishing the stones before they get added to the piles.)

Re: Playlist-Tools-SMP

Reply #146
The facets component is in playlist mode, so only show info from the select playlist.

When the playlist have more albums, for example in this playlist from the folder that contain new additions to library, not tagged and classified yet, it looks very different.

Of course, thanks! I was actually thinking 2 different Facets.

RE: preview or Library incoming items - I run a 2nd Foobar customized for retagging workflow. (Polishing the stones before they get added to the piles.)

Tagging.....the never ending work.  ;D

Re: Playlist-Tools-SMP

Reply #147
Maybe the examples gives a wrong impression of the intention of my question.
About your last example... why you consider the results are wrong? If you have a zappa track tagged as electronic, then it's obviously a valid result. If you don't like it, then why did you tagged it as electronic? The script also takes into consideration BPM, key, etc. if an electronic track happens to match all the others in most aspects... why do you consider it as a non valid result? i.e. maybe if you listen to the playlist (instead of the tags) you would be amazed to find it just sounds right there. (unless there is a really weird mistake on tagging)

I follow your discussion, but as said, you can NOT simply tag an entire album as electronic just because it has "electronic influences". Or apply an appropriate style to it and scrap the electronic genre tag.

And yep, you will have to redo a proper genre tag to make it work. Use a second genre tag for facets.

Also as I already noted, you can configure the search.... you can not expect to have one search by distance button to entry with all genres as is. If you specifically want to search different styles within electronic genre, why don't you adjust the score? There is a custom button for that.

It seems to me you are also running into problems because you are not fine-tuning the search parameters, but the results are pretty valid to me. If you put a low score or a high distance filter, obviously you will get most electronic styles as result. When you make it more strict you will only get the most similar styles.

X

It's like expecting to only see chicago blues tracks when you use one of those tracks as reference... but using the same parameters to get different rock styles. Why do you expect that? Electronic genre is a really huge cluster, if you want more specific results finetune the search parameters..

About the tags that should be used, as said, the js descriptors and the HTML file render the graph with tag names.

Re: Playlist-Tools-SMP

Reply #148
Not wrong, I understand why this result is included, just not the outcome I wanted.
but I found one solution to my problem.

You're not wrong, part of the bad results are caused to a high value in max distance and genre weigh, plus the heavy association of a specific tag to a large supergenre or supercluster.

I commented out the style_substitutions that associate my generic tags (electronic, rock, pop) to a complete supergenre or supercluster, reduced the weigh of genre tag, increased the style, reduced the max distance to exclude and give theme a 0 (only a few tags have it).

With this and some minor additions in style_substitution to match some differences in tag names, the results are a lot much better.

No more electronic, pop, rock genre contamination and more focuses on the specific styles of the songs that start the search.

I left the house, trance and techno supergenre association to the single tag to avoid the fact that all have a electronic genre tag and with the above edits also gives results between the margins of club music.

Also change the 'Metal_supergenre ->Heavy Metal to just Metal to match my genre structure and remove and association of "harcore rap" to "hardcore" .This one is a bit excessive in my opinion in general terms, it is not rare that people have hardcore with no relation of any kind to rap. Even automatic tags like last.fm ones use it in a great variety of situations. But anyway, minor details.

Some more tuning will be needed to align with my taste and understanding of genre relations, but things are in the right way.

In general, I must say that I'm very happy with the results of your component. Sometimes I trend to overthinking when in fact there is a easier solution at hand.

That will be all about the search questions.

Now about the keys (don't hate me please)

After the mixx fiasco with multivalue tags I asked some friends who work in clubs and pubs, and managed to get a working copy of traktor.
This software seems to works with multivalue tags (if they are id3 v2.3, v2.4 gives problems) and is very fast analyzing the key tag and gives results for bpm more consistent than the bpm of foobar (that gives different results with the same config over the same song and have a strange fixation with 76, even when a rerun gives other value totally different ;) ). Traktor gives these kinds of key to write:
musical
musical (all sharps)
open keys
key text

What kind I must choose to match the key that I have already written with the essentia tool?

Re: Playlist-Tools-SMP

Reply #149

For NIN in particular, there is an Electro-industrial estyle btw. For ex. their 94's album:
[attach type=thumb]22846[/attach]
I would not say none of those tracks are alt. rock, and only some of them are industrial rock.


Regarding the image above - how did you tag those- manually or is there a mass tagger for track level genres?