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: Correct an autocomplete error (mis-spelling) (i.e. genre) (Read 2297 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Correct an autocomplete error (mis-spelling) (i.e. genre)

When I go to tag my music files and use the genre field to indicate the type of music - I've added some custom genres but unfortunately I've misspelled some of them and when the auto complete takes over it inserts the wrong (misspelled) genre.  Where can I find the list of genres so I can edit it to correct the misspelling and maybe eliminate some of my custom entries.  I'm using  foobar2000 v 1.6.4 on a Windows 10 system.

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #1
Autocomplete is based on the existing tags in your library. You need to search your files and edit the metadata of the exact misspelling. For example if your genre field autocompletes to "Rock Gruunge" search for
 
Code: [Select]
%genre% IS Rock Gruunge
change to Rock Grunge and the faulty autocomplete entry should no longer show.

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #2
Somewhat related, I have had those problems before and thought about a possible solution using SMP scripts to find the culprits.
The idea:
It should be pretty easy to check the entire library for tags and count every time a tag value is found.
Those which have a really low frequency of apparition would be possible errors. Also some string similarity could be applied to propose the right value.
Finally, after all reported values are revised, any false-positive can be added to the "exclusion list" using the properties panel. Those will always be skipped in the future. Also, once the entire set of tags for your library is sanitized, it could be added to the exclusion list... limiting new revisions only to new tags (or wrong values) found from that point onward.

Many times I have found I put Jazz Rock instead of Jazz-Rock and things like that... and a script would find those errors automatically. Let me know if there is interest on it.

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #3
It should be pretty easy to check the entire library for tags and count every time a tag value is found.
Those which have a really low frequency of apparition would be possible errors. Also some string similarity could be applied to propose the right value.

The foo_facets component can give statistics over the occurrences, so that they show up like (yes, case-sensitive):
25 fusion
1 Fsuion
765 Fusion

That is much better than library view sorted by genre, where you would have 25 lines with "fusion" etc.

So what you then do, is to select those two lines with fusion and Fsuion, open Properties, enter "Fusion" into the Genre field (here fb2k will propose auto-completions), and then when those two entries are gone from the list, facets will list all over again and start on top of the list, so you have to scroll down to "f".

You might want to first scroll over and ask yourself: does the "capitalize" function do anything you don't want? It will convert "Modern classical" to "Modern Classical" etc., in line with most external sources (I think ... in particular, Them Idiots Who Designed Discogs Insisted That Song Titles Are Formatted Like This No Matter Whether They Are In A Language Where It Is Damn Wrong).

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #4
It should be pretty easy to check the entire library for tags and count every time a tag value is found.
Those which have a really low frequency of apparition would be possible errors. Also some string similarity could be applied to propose the right value.

The foo_facets component can give statistics over the occurrences, so that they show up like (yes, case-sensitive):
25 fusion
1 Fsuion
765 Fusion

That is much better than library view sorted by genre, where you would have 25 lines with "fusion" etc.

So what you then do, is to select those two lines with fusion and Fsuion, open Properties, enter "Fusion" into the Genre field (here fb2k will propose auto-completions), and then when those two entries are gone from the list, facets will list all over again and start on top of the list, so you have to scroll down to "f".

That's good enough too! Sometimes I have used it. Although If I remember, you can not sort by number of occurrences, so you have to manually check the entire list. That's the step I would like to avoid.
Just imagine starting foobar and showing a popup warning about wrong tags with a list of 6 possible wrong values. Then ofc, you can go to facets and fix it following your steps. Much easier that way. But the tag supervision would be done automatically, not requiring user intervention.

Quote
You might want to first scroll over and ask yourself: does the "capitalize" function do anything you don't want? It will convert "Modern classical" to "Modern Classical" etc., in line with most external sources (I think ... in particular, Them Idiots Who Designed Discogs Insisted That Song Titles Are Formatted Like This No Matter Whether They Are In A Language Where It Is Damn Wrong).
I do that for genres, although I find it absurd for titles. Hahaha now I feel a bit like an idiot.

 

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #5
Done. Takes 1 sec for 75 K tracks.
The logic is simple. Lists ALL tag values, and counts their frequency. Then I get the 10% lower freqs and limit the list to 10 values per tag (all configurable).

That's the first part (left values). The second part is the string comparison.
The report offers plausible values according to the rest of tags. i.e. all values (30) on the report are compared to the entire tag value list, for any tag, and their similarity is computed. Anything being at least 85% similar is considered an alternative value.

Also, since I'm not only checking that a tag A (rock) is misspelled (Rock) but that it may also be a TagB instead of a TagA (*), I indicate that possibility too .

(*) You may have put the right value at the wrong place, so it's not misspelled but misplaced.
X

For ex. my library has these errors (+ others):
Quote
Latin Rock,1 --> Latin Rock(as style)
Blues Rock,10 --> Blues Rock(as style)
Classic Rock,10 --> Classic Rock(as style)
I put those values as genre but they should be styles!

Quote
Clasic Rock,1 --> Classic Rock
Desert blues,1 --> Desert Blues
Neo Psychedelia; Shoegaze,1 --> Possible multivalue tag not split
Lo-FI,1 --> Lo-Fi
...
While these are values clearly misspelled (one of them is a multivalue tag, but was not split when tagging it)

Have added it to the next release of my set of scripts, if someone is interested just let me know.

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #6
Although If I remember, you can not sort by number of occurrences
You can. Statistics -> Items.

But the problem about that is that if you have 1 item with "piano" you don't know what it should have been until you select it and try to auto-complete. If you have something close in the alphabet ...

Re: Correct an autocomplete error (mis-spelling) (i.e. genre)

Reply #7
Quote
You can. Statistics -> Items. ...
Missed that. Thanks! Not being able to integrate it into a CUI panel I'm using it less and less...

Quote
But the problem about that is that if you have 1 item with "piano" you don't know what it should have been until you select it and try to auto-complete. If you have something close in the alphabet ...
Yep, the SMP script does it now automatically and gives you the right alternative(s). So it's solved for me.