getmusicbee.com

MusicBee & Add-Ons => Customizations => Plugins => Topic started by: Mayibongwe on July 30, 2022, 04:34:00 PM

Title: LyricsReloaded (Latest)
Post by: Mayibongwe on July 30, 2022, 04:34:00 PM
Download the new plugin version from the add-on link here (https://www.getmusicbee.com/addons/plugins/467/lyrics-reloaded-current/).

What started out last weekend as a quest to learn the general workings of regular expressions has somehow led to me finding my way around the Lyrics Reloaded plugin. I am not really someone who knows what they're doing, but I figured since I could make sense of some of the code, I might as well make one or two enhancements...and that is exactly what I have done. I have received permission from frankz - the forum hero member who revived the then-abandoned plugin and kept it alive ever since - to publish my version of this plugin and essentially take over the responsibilities associated with it and its userbase.

Changes:

-   The plugin appears to have originally been designed to make use of three lyrics loaders or retrieval methods (static, search and API)
    But only one was ever implemented from what I can tell - the static loader which requires websites to have straightforward, predictable URLs.
    Users can now make use of a search loader which is capable of retrieving lyrics from URLs with unique IDs for every track.

-   The log file has now been programmed to reset every ten MusicBee sessions (startups, to be precise) in order to keep its length at a reasonable range.

-   Genius, Musixmatch and Deezer have been added as built-in providers.  

-    Added a non-UI setting (https://getmusicbee.com/forum/index.php?topic=36952.msg202900#msg202900) that allows you to either enable or disable the line that shows where retrieved lyrics are from.
     There's also another setting (https://getmusicbee.com/forum/index.php?topic=36952.msg202912#new) to accompany it that allows you to position the displayed source at the top or bottom.

Credits:

-   @quick_wango (created this invaluable plugin)
-   @frankz (resuscitated the plugin)
-   @Steven (no MusicBee, no plugin)
-   Every other MusicBee user who contributed towards this project (such as providing regex fixes, etc.)

How to use the new loader:

The search loader functions more or less the same as the static loader. The difference lies in the definition of the config section.

identity url           refers to the site address where the song search is conducted.
identity pattern   refers to the pattern that extracts the unique ID for the song (if it exists).
lyrics url               refers to the previous url's homepage which will be auto-concatenated with the unique ID previously extracted.
lyrics pattern       refers to the pattern that extracts the lyric content.

Example:
Code
name: Lyrics Freak
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase

    title:
        type: title
        filters: artist
        
config:
    identity url: "https://www.lyricsfreak.com/search.php?q={artist}+{title}"
    identity pattern: ['[^a]\shref="(?<identity>.*?)"', 's']
    lyrics url: "https://www.lyricsfreak.com"
    lyrics pattern: ['data-title=".*">(?<lyrics>.*)<div class="lf-marker\s', 's']
    
post-filters:
- strip_html
- utf8_encode
- entity_decode
- [regex, '\[.*?\].*?(\w)', '$1', s]
- [regex, '\(feat\..*?\)', '', s]
- [regex, '.*?(\w.*)', '$1', s]
- trim
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 04:35:24 PM
Current list of optional providers
These will be kept up to date and accessible from the same add-on link in the previous post.

-   Cušpajz
-   Google
-   Letras de músicas
-   Lyrics
-   Lyricsify (*)
-   Lyrics Freak
-   Lyrics Mania
-   Lyrics Mode
-   Megalobiz (*)
-   Metal Archives
-   Oldie Lyrics
-   Pesni Guru
-   RC Lyrics Band (*)
-   Smriti
-   Song Lyrics
-   Songtexte
-   Teksty

(*) synchronized lyrics

After a long period of testing I think I can draw up some conclusions for myself.
The plugin is giving fantastic results these days, using this order of providers which I have found to be optimal:

1. Genius
2. MusixMatch
3. Deezer
4. Metal Archives (*)
5. Genius (fuzzy)
6. Deezer (fuzzy)

(*) only useful if you have a lot of (more obscure?) metal

Have a look at these stats by hiccup if you wish to know which providers have better success rates:
-   https://getmusicbee.com/forum/index.php?topic=36952.msg205407#msg205407
-   https://getmusicbee.com/forum/index.php?topic=36952.msg203168#msg203168

All you need to know about how to make a custom provider:
-   https://getmusicbee.com/forum/index.php?topic=25406.msg145769#msg145769
-   https://getmusicbee.com/forum/index.php?topic=36952.msg204745#msg204745
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 04:43:43 PM
Some of the reasons behind the removal of other default providers: https://getmusicbee.com/forum/index.php?topic=9994.msg116979;topicseen#msg116979
Does anybody object to the change and would like for those to be added back as defaults?
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 05:52:31 PM
[placeholder]
This is where other working yml's will be located and kept to up to date.
1.  What does the above post actually mean?  It seems incomplete (--[placeholder]?).

2.  Can you please provide the download in a zipped package with a version number (and preferably a readme) so we can keep things easily separated from other versions?  BTW, downloaded DLL has a version number of 1.1.13.

3.  THANKS for implementing this new revision/technique;  haven't tried it yet but I will get back with comments.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 06:11:03 PM
Replaced the old DLL with the new one just downloaded and started MusicBee;  MusicBee crashes after displaying this error message:

MusicBee v3.5.8245.32534P  (Win10.0), 30 Jul 2022 13:08:

System.NullReferenceException: Object reference not set to an instance of an object.
   at CubeIsland.LyricsReloaded.LyricsReloaded.shutdown()
   at CubeIsland.LyricsReloaded.LyricsReloaded.Finalize()

Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 06:19:21 PM
Oh boy. Can somebody else confirm the error above?
sveakul, can you delete the log file and start MusicBee again to see what happens? It's the only thing right now I think can be related to the message.
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 06:26:43 PM
1.  What does the above post actually mean?  It seems incomplete (--[placeholder]?).

2.  Can you please provide the download in a zipped package with a version number (and preferably a readme) so we can keep things easily separated from other versions?  BTW, downloaded DLL has a version number of 1.1.13.

3.  THANKS for implementing this new revision/technique;  haven't tried it yet but I will get back with comments.
#1
I intend to go over all the default yml's to confirm if they're all functional.
When I've done that, I'll include them in that post for everyone to access them (either through a download link or as literal text inserted using the forum's code tag).

#2
I will do that just now.

#3
I need as much feedback as I can. I'm new to all this and need pointers to anything I'm overlooking.
Title: Re: LyricsReloaded (Current)
Post by: hiccup on July 30, 2022, 06:31:35 PM
Oh boy. Can somebody else confirm the error above?
It seems to work here. (on 3.5.8237p)
This is now the default order, right?:

(https://i.imgur.com/zyGQtfv.png)

edit:
updated to 3.5.8246, still working
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 06:46:07 PM
Also just updated to 3.5.8246P and all is working fine.
@sveakul, maybe it's conflicting with other reloaded versions? Idk. Try to remove the other reloaded plugins from the plugins folder as well to see if the error still pops up.

@hiccup, actually, there should be only one default provider (Google). I removed the other providers.
Could it be that those 3 providers are your own located in AppData\mb_LyricsReloaded\providers ?
But still, there should be a 'google' appearing there, unless you've unticked it.

Can y'all confirm if the downloaded dll has a modification/creation date of ‎Friday, ‎July ‎29, ‎2022 ?
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 06:51:47 PM
Oh boy. Can somebody else confirm the error above?
sveakul, can you delete the log file and start MusicBee again to see what happens? It's the only thing right now I think can be related to the message.

This time uninstalled the existing DLL first instead of copying over, incl. deleting the logs, the subfolder in Appdata, etc.  Added the new DLL via the MB "Add Plugin" menu and received this error:

(https://i.imgur.com/ejZ2ZLL.png)

MusicBee crashes afterwards on attempting to Save.  Why would it be looking for a log file that has yet to be created?
Title: Re: LyricsReloaded (Current)
Post by: hiccup on July 30, 2022, 06:53:29 PM
I'm sorry, I just tested very briefly (with half a mind) only to check/confirm if there was a serious bug when starting.
I'll do some proper testing later.
You are probably right about my appdata. I recall naming the providers "(new)" myself some time ago.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 07:10:01 PM
OK, here we go:

1.  I created an empty text file named mb_LyricsReloaded.log in the AppData/mb_LyricsReloaded subfolder (the "providers" folder had already been created by the first load attempt) and restarted MusicBee.

2.  BANG!  It works!  :)

3.  In Tags(2), the available providers list from the clean install shows Google, and "chartlyrics.com" of all things. I assume the latter was never actually removed from the original plugin, as it's not present as a yml file.

Going to add my yml's now and test how they coexist with Google.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 07:24:57 PM
The following yml files I was using with the old version work with this one and cycle properly through the "Search Next provider" option: azlyrics, genius, metrolyrics, musicmatch.  The code of the actual files can be found in the old thread, don't have time to hunt them down now.

Mayibongwe, great job on the new Google source, it seems to be working amazingly well!  Very much appreciate your effort.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 07:38:46 PM
Some of the reasons behind the removal of other default providers: https://getmusicbee.com/forum/index.php?topic=9994.msg116979;topicseen#msg116979
Does anybody object to the change and would like for those to be added back as defaults?

I would like to see songlyrics.com added back as a source in the DLL;  AFAIK no yml file exists for that one, and it picks up a lot of more obscure metal and goth stuff.

Edit:  OOPS, found one on frankz's GitHub site and it does work;  copy the code below to a textfile like "songlyrics.txt", change the extension to .yml, pop it in Providers and add under Tag(s)2 after restarting MB.

Code
name: Song Lyrics

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '[^\sa-z0-9]', ""]
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "http://www.songlyrics.com/{artist}/{title}-lyrics/"
    pattern: ['<div id="songLyricsDiv-outer">(?<lyrics>.*?)</div>', s]
    
post-filters:
- strip_html
- entity_decode
- clean_spaces
- utf8_encode
- [fix_broken_chars, 'Ã', ISO-8859-1]
- [replace, 'þ', 'ß']
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 08:15:32 PM
My deepest apologies to the forum for the massive scare.
I investigated the cause of the error reported by sveakul and found out that it was a result of something I had overlooked when setting the log file to be cleared.
I hadn't put any error handling in there to ensure that the file existed or not before doing any operations on it. But that is fixed now and I have confirmed it.

Would appreciate a 2nd confirmation by sveakul. Re-download the plugin.
I have also done your initial recommendations, such as including a readme file to the download - which is merely a copy from this plugin's previous versions.
I'll edit it to include the changes I've made a bit later.

Apologies again.
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 30, 2022, 08:24:08 PM
3.  In Tags(2), the available providers list from the clean install shows Google, and "chartlyrics.com" of all things. I assume the latter was never actually removed from the original plugin, as it's not present as a yml file.
If I'm not mistaken, chartlyrics.com is a MusicBee native lyrics provider. This plugin's source files do not appear to have any trace of it.

I would like to see songlyrics.com added back as a source in the DLL;  AFAIK no yml file exists for that one, and it picks up a lot of more obscure metal and goth stuff.
The 'placeholder' post on this thread is meant to serve as a place where I'll store all available yml's that can be used with this plugin.
I wanted to go over all of them first and then make them available.
Another reason I have not included the others as built-ins, is because they break frequently as you probably already know.
Google is meant to serve as the only default provider since, as far as I can tell, it is not one to change its structure as frequent as the individual providers do.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 30, 2022, 08:32:30 PM
Would appreciate a 2nd confirmation by sveakul. Re-download the plugin.

Deleted the log, downloaded the new 1.1.15 dll and unzipped it over the previous one, restarted, and can confirm all is still operating well!  Thanks!  Glad to know the initial problem wasn't hallucinatory, haha..  This is a beast with the Google source plus the ymls.
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 31, 2022, 03:55:24 PM
Had a rough start yesterday, but we are now where we are supposed to be as far as the plugin is concerned.
I have updated the 2nd post with a current list of all optional providers that I could find.

I have intentionally omitted A-Z Lyrics from the download just to keep MusicBee and the plugin on the safe side.
Anybody who wants it for personal use can dig up its yml from the previous plugin thread (https://getmusicbee.com/forum/index.php?topic=25406.0).
(https://i.imgur.com/ivfyxQr.png)

I also didn't include the following because they do not seem to be functional at the moment:
- Metro Lyrics
- Urban Lyrics
- Hindi Lyrics
- Musixmatch Asian (I couldn't see how it's any different from the normal Musixmatch. So I left it out for now)
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 31, 2022, 06:53:52 PM
Thank you Mayibongwe for pulling the yml's together in one package!

I have been extensively testing the plugin on a wide variety of radio stream stations/genres, using Google as the first source choice.  While Google does a good job finding the majority, about 40% of the time a yml provides the hit.  Use all of 'em because you never know--for example chartlyrics.com provided the ONLY hit for a couple of songs.  Thanks for the totally new sources (Lyrics Mania, etc).
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 31, 2022, 07:43:54 PM
Thank you for all the feedback you've given so far, sveakul.
That comment in green from the image in my previous post appears to be a note from the AZ lyrics website (in html format) to providers like this plugin.
There was a discussion on it here and I also think it shouldn't be officially associated with MusicBee and the plugin:
https://getmusicbee.com/forum/index.php?topic=25406.msg181755#msg181755


Edit addressing the second point of sveakul's post:

To anybody else with a comment on this, I'd like to hear more opinions on whether other providers should be built into the plugin or not.
I personally happen to agree with redwing on this note (the reply linked on the third post of this thread).
Making them optional sounds more advantageous to both user and maintainer, than making them defaults.

I noticed hiccup had "(news)" added to his custom sources to avoid conflicting them with old, and possibly broken built-ins at the same time.
With the way things are at the moment, he wouldn't have to wait for me to make any fixes if any providers are broken.
He would simply fix them himself and also avoid the inconvenience of having to manage duplicates.
Title: Re: LyricsReloaded (Current)
Post by: phred on July 31, 2022, 08:01:00 PM
Nice job Mayiboongwe. Still running it through some testing.

Is there a way to find out which source provided the found lyrics rather than searching through hundreds of lines of the log file?
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 31, 2022, 08:08:09 PM
Is there a way to find out which source provided the found lyrics rather than searching through hundreds of lines of the log file?
Thanks phred. Please also re-read my previous post to see the edit and make an opinion on that subject.
Where would you want to see the name of the source that provided the lyrics? In the retrieved lyrics themselves?
Title: Re: LyricsReloaded (Current)
Post by: phred on July 31, 2022, 08:17:14 PM
Where would you want to see the name of the source that provided the lyrics? In the retrieved lyrics themselves?
At the bottom or top of the retrieved lyrics if possible. But some folks may not like that interfering with lyrics display. This would be my first choice. "Lyrics retrieved from xxx." Or simply the provider.

Or perhaps having the word "SUCCESS" in the log file for successful finds. That way I could run a search in Notepad++ for the word "SUCCESS."
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on July 31, 2022, 08:33:12 PM
Or perhaps having the word "SUCCESS" in the log file for successful finds. That way I could run a search in Notepad++ for the word "SUCCESS."
Not sure if you are aware, but the log file already outputs "lyrics found from <provider>!" for successful finds.
So a search on "found" should already achieve the same result - unless you are suggesting "success <provider>" would be better wording for it.

At the bottom or top of the retrieved lyrics if possible. But some folks may not like that interfering with lyrics display. This would be my first choice. "Lyrics retrieved from xxx." Or simply the provider.
Theoretically, I should be able to provide a setting for that in some way. I'll do some research on it to see if it is within the scope of my capabilities.
I also happen to be simply winging my way around the plugin. I don't really have any solid background on this type of stuff.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 31, 2022, 08:52:13 PM
Is there a way to find out which source provided the found lyrics rather than searching through hundreds of lines of the log file?
phred forgive me if you already are aware of this, but when you right-click in the lyrics window after they are retrieved, you get in subdued type at the start of the options list the source of the lyrics being displayed, like "Lyrics Source: Google."
Title: Re: LyricsReloaded (Current)
Post by: phred on July 31, 2022, 09:12:03 PM
Not sure if you are aware, but the log file already outputs "lyrics found from <provider>!" for successful finds.
So a search on "found" should already achieve the same result - unless you are suggesting "success <provider>" would be better wording for it.
That's still too cumbersome since a search for "lyrics found" or "lyrics found from" brings up "NO lyrics found..." So perhaps on the source that actually found the lyrics the word SUCCESS <provider> be entered in the log. While still keeping the "no lyrics found" intact.
Code
no lyrics found from Google

Quote
Theoretically, I should be able to provide a setting for that in some way. I'll do some research on it to see if it is within the scope of my capabilities.
I also happen to be simply winging my way around the plugin. I don't really have any solid background on this type of stuff.
Theoretically, -any-thing can be done. :-) But if it's too much of a struggle, and the "SUCCESS <provider> is easier, I can live with that.
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 31, 2022, 09:12:47 PM
Thank you for all the feedback you've given so far, sveakul.
That comment in green from the image in my previous post appears to be a note from the AZ lyrics website (in html format) to providers like this plugin.
There was a discussion on it here and I also think it shouldn't be officially associated with MusicBee and the plugin:
Whoops, I missed that actually, thanks for bringing it to my attention.  I got rid of the link in the post that referred to it.
Title: Re: LyricsReloaded (Current)
Post by: phred on July 31, 2022, 09:17:01 PM
phred forgive me if you already are aware of this, but when you right-click in the lyrics window after they are retrieved, you get in subdued type at the start of the options list the source of the lyrics being displayed, like "Lyrics Source: Google."
No, I wasn't aware of it. And while I have often right-clicked on the lyrics, typically to edit them, I suppose i overlooked the subdued type you referred to. However, it's not at all helpful when it appears like this:
(http://i.imgur.com/hjKY0rAl.jpg) (https://i.imgur.com/hjKY0rA.jpg)
I -know- my lyrics are embedded in the music file. I want to know -where- they came from.
So the question becomes, are your lyrics embedded? And if not (i.e. in a text file) does right-clicking show the source?
Title: Re: LyricsReloaded (Current)
Post by: sveakul on July 31, 2022, 10:27:26 PM
phred, my comments on the lyrics source appearing in the context menu of the window was not meant in reference to an archived-type trace for music files with embedded lyrics, but only for identifying the source BEFORE they are actually either saved into a file as embedded lyrics (which all of my files are), or before a radio stream starts a new track--for purely FYI purposes to see what yml produced it.  Sorry for the misunderstanding.  I agree, the ability to copy/paste/save that info with the actual lyrics would be a nice option to have available.
Title: Re: LyricsReloaded (Current)
Post by: phred on July 31, 2022, 10:36:40 PM
Sorry for the misunderstanding.
Ahhh ... and you gave me so much hope!!  :-)

Quote
I agree, the ability to copy/paste/save that info with the actual lyrics would be a nice option to have available.
Yes, that would be nice. Perhaps Mayibongwe can use this as a learning exercise and come up with a solution. And if not, I'll just have to search the logs. :-(
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on August 01, 2022, 05:51:07 PM
But if it's too much of a struggle, and the "SUCCESS <provider> is easier, I can live with that.
To avoid introducing new bugs at this early stage of the new plugin version, I will keep things simple and go with the 'searching the log' compromise.
Over time, I'm sure I'll be able to do something about providing a setting for what's been discussed.

In the meantime, if you re-download the plugin, the log file now outputs:
[FAIL] no lyrics found from <provider> and [SUCCESS] lyrics found from <provider>
Before the change, it was showing [DEBUG] in both cases.
Title: Re: LyricsReloaded (Current)
Post by: phred on August 01, 2022, 06:58:23 PM
To avoid introducing new bugs at this early stage of the new plugin version, I will keep things simple and go with the 'searching the log' compromise.
Over time, I'm sure I'll be able to do something about providing a setting for what's been discussed.
That's understandable.

Quote
In the meantime, if you re-download the plugin, the log file now outputs:
[FAIL] no lyrics found from <provider> and [SUCCESS] lyrics found from <provider>
Perfect! It's easy enough to search for "SUCCESS" when I want to see where the lyrics came from.

Thanks for implementing this. And I look forward to having the source displayed with the lyrics sometime down the road.
Title: Re: LyricsReloaded (Current)
Post by: Mayibongwe on August 02, 2022, 03:15:09 PM
And I look forward to having the source displayed with the lyrics sometime down the road.
Turns out there wasn't a lot complicated to it. So I've gone ahead and provided a setting for this - it's not in the UI though.

To get the retrieved lyrics showing where they came from:
- Re-download the latest version (v1.1.15.2) and move it to the plugins folder.
- Open MusicBee and a mb_LyricsReloaded.ini settings file will be created in ...MusicBee\AppData\mb_LyricsReloaded .
- Open that file and change the <showSource> setting to 'true'.

You only ever need to do this once. Going forward, all retrieved lyrics will have a "Source: <provider>" at the bottom, when this setting is enabled.
Title: Re: LyricsReloaded (Current)
Post by: phred on August 02, 2022, 03:48:35 PM
Turns out there wasn't a lot complicated to it. So I've gone ahead and provided a setting for this - it's not in the UI though.
This is really, really, REALLY great. Thanks so much for adding this.
(http://i.imgur.com/TINtVOpl.jpg) (https://i.imgur.com/TINtVOp.jpg)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 02, 2022, 04:39:56 PM
Glad to know it's working fine for me and you without any issues.
Hope that will be the case for everyone else.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 02, 2022, 05:10:07 PM
Hope that will be the case for everyone else.
For those who don't care where the lyrics come from, they need to do nothing. The change is transparent.
For those who do care, as long as they spell "true" correctly in the ini file, there won't be any problems.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 02, 2022, 05:39:12 PM
Glad to know it's working fine for me and you without any issues.
Hope that will be the case for everyone else.
This really IS nice.  I know I'm going out on a limb here, but is there any chance there could be an option to show the source line at the TOP of the lyrics instead of at the end?  So as to tell immediately where they're from without needing to scroll down for those not fitting the pane.  If not, no biggie!
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 02, 2022, 05:53:16 PM
is there any chance there could be an option to show the source line at the TOP of the lyrics instead of at the end?
I wouldn't object to having that as an option, but not as a change.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 02, 2022, 05:54:04 PM
This really IS nice.  I know I'm going out on a limb here, but is there any chance there could be an option to show the source line at the TOP of the lyrics instead of at the end?  So as to tell immediately where they're from without needing to scroll down for those not fitting the pane.  If not, no biggie!
I didn't want to be the one to ask, but since you did, I'll give this a +1 as I'd prefer it at the top also. And if not doable, it's not a deal-breaker.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 02, 2022, 07:02:29 PM
...but is there any chance there could be an option to show the source line at the TOP of the lyrics instead of at the end?
Adding settings is now straightforward. Re-download the new version and change <showSourcePosition> to "top".
By default, the source will be positioned at the bottom (provided it is set to be displayed at all, that is).
I haven't tested it thoroughly, but it should work without problems as it's using the same functions as the previous setting.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 02, 2022, 07:44:32 PM
Works GREAT, nice to see it accomodates all preferences, many thanks Mayibongwe!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 02, 2022, 08:36:05 PM
Awesome. The pleasure's all mine. This is the MusicBee world after all.
Making things as highly customizable as possible is the name of the game around here.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 02, 2022, 08:48:53 PM
Re-download the new version and change <showSourcePosition> to "top".
GIDDY-YUP!!!
Very nicely done. Thanks for not making us patiently wait.  :-)

Now for the real test to see if Google is better than the previous providers. I've got 2821 tracks that are missing lyrics. Although I will admit a good number of them may be instrumentals. I'll report back when completed.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 02, 2022, 09:53:43 PM
I'll report back when completed.
In about an hour I found 152 lyrics out of 2821 missing. Again, there are probably a good deal of instrumentals or spoken word tracks there. But before Google was a plugin provider, running the 2800+ tracks would perhaps turn up less than ten. So this is an additional success.

Now to find the motivation to go through the remaining track to determine if there instrumentals or not.
Title: Re: LyricsReloaded (Latest)
Post by: GoodMorning on August 03, 2022, 05:04:35 AM
The new Google provider seems to have fixed an issue that has annoyed me for a long time: songs with parentheses in the title will now (almost) always return a match, whereas before it rarely ever worked. So thanks for that!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 03, 2022, 06:56:54 PM
Yeah, the google search engine really does a marvelous job at getting accurate results, even when fed with slightly incorrect or incomplete information.
When I began looking at this, I wondered why nobody had ever tried using it as a direct source before.
But I soon realized there was a plugin limitation to it at the time. The plugin was using Firefox to return the websites' html dumps.
It worked fine for every other site, but with google webpages, it was returning some html filtered out content that didn't contain the full lyrics.

......

Still hoping for (more) feedback on the edited portion of this post: https://getmusicbee.com/forum/index.php?topic=36952.msg202801#msg202801
sveakul suggested that other providers be added back in as defaults. What do people think?
My opinion on it is stated on that reply, but the way forward obviously has to be what the majority decides.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 03, 2022, 07:10:34 PM
Yeah, the google search engine really does a marvelous job at getting accurate results, even when fed with slightly incorrect or incomplete information.
Party pooper here:
I get nothing using Google.
Zilch, nada, nakkes.

I briefly looked at the source code, and looked at the google part in it.
It's pretty much all abracadabra to me, but I did notice something I didn't really understand, but what seemed off.
But this vague hunch/complaint isn't helpful. I'll try to come up with a more detailed report the coming weekend.
(I am using FireFox for what it's worth)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 03, 2022, 07:15:30 PM
Still hoping for (more) feedback on the edited portion of this post: https://getmusicbee.com/forum/index.php?topic=36952.msg202801#msg202801
sveakul suggested that other providers be added back in as defaults. What do people think?
My opinion on it is stated on that reply, but the way forward obviously has to be what the majority decides.
I'll get back on that later too.
Considering my current issue with the google option, right now I would say yes.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 03, 2022, 07:25:40 PM
I'll try to come up with a more detailed report the coming weekend.
I'll be waiting for it. There's not a lot to work with at the moment.

But in the code, there is something about a default user agent. It was set to 'Firefox' when I started working on this.
And when I tried using the exact same google.yml, it was only returning 24 lines of html code that only contained about a paragraph of lyrics.
So I experimented with changing that user agent to 'Chrome', and all of a sudden, I was getting the full google html dump (200+ lines) that contained the lyrics.

My default and only web browser installed on this laptop is Chrome. So maybe that's why it works all of a sudden.
But I don't suppose phred, sveakul and others are all using Chrome as their default browsers too?

Just a premature hunch (from me) on why it may not be working as intended for you
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 03, 2022, 07:46:44 PM
It's been documented on some Mozilla forums that Google limits it's search results (or provides different results) when the user agent is not Chrome. I'm a strong user of and believer in Firefox and would only use Chrome if a gun was being held to my head. On occasion I have changed my user agent to Chrome in order to get better results. 99% of the time I use DuckDuckGo for web searches.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 03, 2022, 08:05:45 PM
…and would only use Chrome is a gun was being held to my head. On occasion I have changed my user agent to Chrome in order to get better results.
So you do have Chrome installed on your system?
Perhaps that's a prerequisite for the google part of the plugin to work.

Anyone without Chrome on his/her sytem using the new version of the plugin and getting results using google as the lyrics finder engine?
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 03, 2022, 08:15:44 PM
So you do have Chrome installed on your system?
I have a portable version of Chrome installed. But I using FF with a chrome user agent long before I installed Chrome. And got better results with it on FF than I did when using a FF user agent. But that doesn't confirm if Chrome is needed for the new plugin to work. Although I wouldn't think so.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 03, 2022, 08:24:15 PM
I have a portable version of Chrome installed. But I using FF with a chrome user agent long before I installed Chrome.
To me that's making it even more complicated.
So you have both Chrome portable installed, and some Chrome engine (agent?) that your FireFox uses in the background?

Let's keep it simple and wait for confirmation from somebody who has no Chrome software on his system at all.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 03, 2022, 08:37:53 PM
... and some Chrome engine (agent?) that your FireFox uses in the background?
No. A user agent is a text string (in FF) that tells the targeted website what browser I'm using. In this case the user agent is spoofing Chrome. There is no Chrome engine that's being used. But, as you know, the plugin isn't using FF or any other browser.

Since my Chrome install is portable, I will remove it and test the plugin and report back.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 03, 2022, 08:48:32 PM
Anyone without Chrome on his/her sytem using the new version of the plugin and getting results using google as the lyrics finder engine?
I do not have Chrome, only Firefox.  I am getting good results using Google selected as the primary lyrics finder, about 60% of first returned hits are from it (normally other sources find results also) and 40% of the hits are only from the yml sources.  A lot of this depends on the genre.  I listen to LOTS of obscure radio streams and sometimes the results will invert, but Google remains for me a valuable source.

Just to put my two cents in here to the question about building yml's into the DLL with Google, I would not mind that unless it came at the cost of the plugin never being able to use ymls in the "providers" folder anymore.  The idea of keeping both separate also appeals to circumstances when no other serach type (API, etc) is available other than scraping.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 03, 2022, 10:32:48 PM
Just to put my two cents in here to the question about building yml's into the DLL with Google, I would not mind that unless it came at the cost of the plugin never being able to use ymls in the "providers" folder anymore.  The idea of keeping both separate also appeals to circumstances when no other serach type (API, etc) is available other than scraping.
I wouldn't mind all the sources built into the plugin but if one of the sources changes its parameters for searching Mayibongwe will have to update the entire plugin. Whereas if we are using external YML files, it can be updated as soon as someone can figure out the new parameters. And that won't be me since I've tried before and have not been successful.  Either way we (I) would have to wait for a fix.
Title: Re: LyricsReloaded (Latest)
Post by: Casual Tea on August 04, 2022, 02:56:32 PM
I've tested the latest version of this plugin yesterday, and while the yaml sources work very well, I have as of yet not gotten a single Google result.
Thinking that maybe the artist I was listening to did not yield results on google, I used the "Google Search" feature from within MusicBee on a song.
Which did yield results for
https://www.google.com/search?q=%22Matthew%20and%20the%20Atlas%22+%22Cali%22+lyrics
this query for example. Clicking through the provider results within MusicBee and even redoing the search does not list Google as a source tho.
Tell me if you need more information about my setup to troubleshoot. I have both Firefox and Chrome installed (mainly using Firefox) and I tested this in MusicBee 3.5.8150.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 04, 2022, 04:10:55 PM
I'll try to come up with a more detailed report the coming weekend.
I'll be waiting for it. There's not a lot to work with at the moment.
It looks like it's a regional issue. (I'm in Europe)
On a hunch I activated a VPN connection (using a USA server) and the google option gives results.

(and the google main page suddenly displays commercial messages)
Title: Re: LyricsReloaded (Latest)
Post by: Casual Tea on August 04, 2022, 04:17:34 PM
That might be it. I'm from Europe as well.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 05, 2022, 02:55:46 PM
Ooh that's unfortunate. If there is a way to fix something like that within the plugin, I sadly wouldn't know anything about it.
Is the VPN workaround something you guys can live with?

To the both of you: in the log file when not using a VPN, what output does google flush out?
Do all the following steps not get processed?

02-08-2022 01:59:39 [DEBUG] Lyrics request: Alan Walker - Faded - Different World - Google
02-08-2022 01:59:39 [INFO] Google tries to load the lyrics...
02-08-2022 01:59:39 [DEBUG] The constructed URL: https://www.google.com/search?q=faded+alan-walker+lyrics
02-08-2022 01:59:41 [DEBUG] gzip compression detected
02-08-2022 01:59:43 [SUCCESS] lyrics found from Google!
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 05, 2022, 04:05:27 PM
Is the VPN workaround something you guys can live with?

No, it's not an option for me to turn on my VPN every time I have MusicBee running.
I will often have other applications running that may present problems when using a VPN.

Here is the error log.
First I ran MusicBee as usual, and the lyrics search failed (05:00).
Then I turned on my VPN (at 05:01), restarted MusicBee, and then the search was successful.

Code
05/08/2022 05:00:07 [INFO] mb_LyricsReloaded in version 1.1.15.0 started!
05/08/2022 05:00:07 [DEBUG] Loading config from field provider_google_com
05/08/2022 05:00:07 [INFO] Provider loaded: Google
05/08/2022 05:00:07 [DEBUG] Received a notification of type PluginStartup
05/08/2022 05:00:07 [DEBUG] Received a notification of type MusicBeeStarted
05/08/2022 05:00:07 [DEBUG] gzip compression detected
05/08/2022 05:00:12 [DEBUG] Lyrics request: Blondie - Hanging On the Telephone - Parallel Lines - Google
05/08/2022 05:00:12 [INFO] Google tries to load the lyrics...
05/08/2022 05:00:12 [DEBUG] The constructed URL: https://www.google.com/search?q=hanging-on-the-telephone+blondie+lyrics
05/08/2022 05:00:13 [DEBUG] gzip compression detected
05/08/2022 05:00:13 [WARN] The pattern </div></div></div></div><div class="hwc"><div class="BNeawe tAd8D AP7Wnd"><div><div class="BNeawe tAd8D AP7Wnd">(?<lyrics>.*)Source: didn't match!
05/08/2022 05:00:13 [INFO] No lyrics found.
05/08/2022 05:00:13 [FAIL] no lyrics found from Google
05/08/2022 05:00:18 [INFO] Plugin disabled
05/08/2022 05:01:02 [INFO] mb_LyricsReloaded in version 1.1.15.0 started!
05/08/2022 05:01:02 [DEBUG] Loading config from field provider_google_com
05/08/2022 05:01:02 [INFO] Provider loaded: Google
05/08/2022 05:01:02 [DEBUG] Received a notification of type PluginStartup
05/08/2022 05:01:02 [DEBUG] Received a notification of type MusicBeeStarted
05/08/2022 05:01:02 [DEBUG] gzip compression detected
05/08/2022 05:01:08 [DEBUG] Lyrics request: Blondie - Hanging On the Telephone - Parallel Lines - Google
05/08/2022 05:01:08 [INFO] Google tries to load the lyrics...
05/08/2022 05:01:08 [DEBUG] The constructed URL: https://www.google.com/search?q=hanging-on-the-telephone+blondie+lyrics
05/08/2022 05:01:09 [DEBUG] gzip compression detected
05/08/2022 05:01:10 [SUCCESS] lyrics found from Google!
05/08/2022 05:01:13 [INFO] Plugin disabled
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 05, 2022, 07:44:48 PM
It's weird I gotta say.
I momentarily changed the region in my chrome settings to Netherlands and the google lyrics webpage was indeed not displaying any lyrics for any of the songs I searched with.
I don't really know why that happens but I guess it would be why the pattern was/is not matching.

But none of that would matter as long as the plugin had built-in providers that had the same content as Google itself.
From what I've noticed, Google mainly receives its lyrics from Musixmatch and Lyrics Find (I'm yet to see any other source besides those two).

So I have, in addition to Google, added a few more built-in providers.
- Genius
- Deezer (also gets its content from Lyrics Find)
- Musixmatch

With those part of the package as well, users from Europe won't be missing out on anything that Google offers.
hiccup, please confirm if those additions are all working without a need for a VPN.
I'm no longer using these websites' search functions; I'm using the google search engine instead (but it shouldn't be a problem unlike with Google itself as a source)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 05, 2022, 08:03:42 PM
Thnx, I will try that out!
(tomorrow)
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 05, 2022, 08:07:00 PM
I haven't tried the new combo DLL yet but noticed in the yml providers zip (which removed MusixMatch and Genius) that Lyrics Freak went from a mod date of 7/29 to 8/3--was the search technique modified for that site?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 05, 2022, 08:24:57 PM
Yep. Prior to changing the way Lyrics Freak matches its tracks, I couldn't connect a song like "Coming Home, Pt II" by Skylar Grey.
On the website, it is titled "Coming Home, Part 2" instead. So it wasn't matching that.
But I'm now using the google search engine for it and tracks like those are now being matched regardless of the minor differences in the title or artist.

This is all possible because of the new search loader. I can have the plugin run and extract data from two different searches at a time.
I wanna hear from hiccup first before I make the same change for all providers (just in case the google search engine will also fail for these).
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 05, 2022, 09:25:48 PM
I'm yet to see any other source besides those two
I have all my prior YMLs in the providers directory. Without doing the math, I'd say 75% of the retrieved lyrics come from Google, 20% come from Genius, and the rest come from A-Z Lyrics, Oldie Lyrics, and Lyrics Freak.
Overall, I'm happy with the way the plugin is working.
(http://i.imgur.com/dR9xG8Il.jpg) (https://i.imgur.com/dR9xG8I.jpg)
Title: Re: LyricsReloaded (Latest)
Post by: frankz on August 05, 2022, 10:55:23 PM
Finally had the chance to load up the new version and play with it a little. Minor problem, it's pulling some incorrect lyrics.

The requested song is Another Man by Smash Palace.  The lyrics retrieved are the song Smash Palace by Sharon O’Neill.

Code
05/08/2022 05:48:09 [DEBUG] Received a notification of type TagsChanging
05/08/2022 05:48:09 [DEBUG] Lyrics request: Smash Palace - Another Man - Fast, Long, Loud - Musixmatch
05/08/2022 05:48:09 [INFO] Musixmatch tries to load the lyrics...
05/08/2022 05:48:09 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Musixmatch+another-man+smash-palace
05/08/2022 05:48:09 [DEBUG] Lyrics request: Smash Palace - Another Man - Fast, Long, Loud - Genius
05/08/2022 05:48:09 [INFO] Genius tries to load the lyrics...
05/08/2022 05:48:09 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Genius+another-man+smash-palace
05/08/2022 05:48:09 [DEBUG] Lyrics request: Smash Palace - Another Man - Fast, Long, Loud - Google
05/08/2022 05:48:09 [INFO] Google tries to load the lyrics...
05/08/2022 05:48:09 [DEBUG] The constructed URL: https://www.google.com/search?q=another-man+smash-palace+lyrics
05/08/2022 05:48:09 [DEBUG] gzip compression detected
05/08/2022 05:48:09 [DEBUG] gzip compression detected
05/08/2022 05:48:09 [DEBUG] gzip compression detected
05/08/2022 05:48:09 [WARN] The identity pattern (?<identity>https://www.musixmatch.com/lyrics/.*?)& didn't match!
05/08/2022 05:48:09 [INFO] No lyrics found.
05/08/2022 05:48:09 [FAIL] no lyrics found from Musixmatch
05/08/2022 05:48:09 [WARN] The pattern </div></div></div></div><div class="hwc"><div class="BNeawe tAd8D AP7Wnd"><div><div class="BNeawe tAd8D AP7Wnd">(?<lyrics>.*)Source: didn't match!
05/08/2022 05:48:09 [INFO] No lyrics found.
05/08/2022 05:48:09 [FAIL] no lyrics found from Google
05/08/2022 05:48:09 [DEBUG] The constructed lyrics URL: https://genius.com/Sharon-oneill-smash-palace-lyrics
05/08/2022 05:48:10 [DEBUG] gzip compression detected
05/08/2022 05:48:10 [SUCCESS] lyrics found from Genius!
I think free text searching like this might be a problem for songs like this where there are no legitimate lyrics but words in the band or song title match some other context.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 06, 2022, 10:44:56 AM
The requested song is Another Man by Smash Palace.  The lyrics retrieved are the song Smash Palace by Sharon O’Neill.
I think free text searching like this might be a problem for songs like this where there are no legitimate lyrics but words in the band or song title match some other context.
I just tried to look for any website that might have the lyrics for that song and I honestly couldn't find any.
It'd be alarming if the providers returned incorrect lyrics while there was a correct version on their site.

For now, I'm thinking this is a rare occasion that doesn't yet hold weight against the benefits that this kind of free text searching provides.
But I do acknowledge its existence as the exception that it is.

I guess the question is, what would people prefer:
Should the providers return a no match when a song isn't available, rather than return incorrect lyrics?
If the former, then that means songs which had the potential of being matched even when the sites had differing titles/artists, would no longer get matched.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 06, 2022, 10:55:22 AM
So I have, in addition to Google, added a few more built-in providers.
- Genius
- Deezer (also gets its content from Lyrics Find)
- Musixmatch
I've started some extensive testing, and things are looking VERY promising.
But since I am making it some project, using a lot of songs (and different languages) for testing, and I would like to come back with useful and (provider-) specific results, it's probably going to be by the end of the day or perhaps tomorrow before I will get back with my report.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 06, 2022, 11:37:38 AM
When I began looking at this, I wondered why nobody had ever tried using it as a direct source before.
But I soon realized there was a plugin limitation to it at the time. The plugin was using Firefox to return the websites' html dumps.
It worked fine for every other site, but with google webpages, it was returning some html filtered out content that didn't contain the full lyrics.
I want to make a correction to that statement. I just realized there was in fact no plugin limitation at all.
Firefox being a default user agent at the time wasn't gonna get in the way of Chrome being specified as a user agent for the google.yml
All that I (or anyone at the time) needed to do was add this to the yml :

headers:
    User-Agent: 'Chrome'
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 06, 2022, 01:00:16 PM
An in-between observation;

I noticed some lyrics missing when using the build-in MusixMatch engine, that I believed I was able to retrieve before.
So I copied my stored yml of MusixMatch to the providers folder, activated it, and deactivated the build-in one.
And indeed I immediately got more results.

Some examples of songs the build-in MM didn't find, and the yml MM does:

Ivan Lins - Novo tempo
Margriet Eshuijs Band - Black Pearl
Chico Buarque - Fortaleza
Simone - Geraldinos e Arquibaldos
Ane Brun - Du gråter så store tåra
Nana Caymmi - Doce Presença
Walter Becker - Door Number Two

the yml:
Code
name: Musixmatch (new)

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [regex, "'", ""]
        - [regex, "/", " "]
        - [regex, '\s&(?=\s)', " "]
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '[^\sa-z0-9]\s*', ""]
        - [strip_nonascii, -]
    title:
        type: title
        filters:
        - strip_diacritics
        - lowercase
        - [regex, " '|' |/", " "]
        - [regex, "'", " "]
        - [regex, '\.+|,+|/+|(\W+(?=$))|(^\W+)', ""]
        - [regex, '\s&(?=\s)', " and"]
        - [strip_nonascii, -]

config:
    url: "http://www.musixmatch.com/lyrics/{artist}/{title}"
    pattern: ['<p class="mxm-lyrics__content.*?">(?<lyrics>.*?)<div [^>]*"lyrics-report".*?>', s]

post-filters:
- [regex, "<script.*?</script>", "", s]
- strip_html
- utf8_encode
- entity_decode
- clean_spaces

Any idea?
Title: Re: LyricsReloaded (Latest)
Post by: frankz on August 06, 2022, 02:28:12 PM
I just tried to look for any website that might have the lyrics for that song and I honestly couldn't find any.
That's the point, isn't it? If there are no lyrics for the song, the search should fail rather than return incorrect lyrics.  People (me included) set MB to auto-save lyrics when retrieved.  There's no benefit to anyone in retrieving incorrect lyrics.  Will every song by this band called "Smash Palace" return these same incorrect lyrics because a totally unrelated artist recorded a song by that name?
Should the providers return a no match when a song isn't available, rather than return incorrect lyrics?
If the former, then that means songs which had the potential of being matched even when the sites had differing titles/artists, would no longer get matched.
I'm not sure why I would want lyrics from a song to match online lyrics from a song with a different title by a different artist.

I agree that there are massive benefits to the free text Google searching and you are brilliant for being able to implement it.  But for sites where we know exactly how their URLs are constructed, it makes no sense to pull lyrics for songs where the URL is telling us it's the wrong artist all together.  Maybe some sort of check back to make sure the band name is at least similar?

There was never a widespread problem with finding the right page for a song on Genius or MusixMatch - that worked pretty reliably.  The problem was that they kept changing the way the lyrics showed up on the page so you couldn't get them into MB.  This solves the problem of sometimes finding no lyrics by creating a problem of sometimes presenting the wrong lyrics.

Just my $0.02 and presented as a fan of what you've done generally.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 06, 2022, 02:34:33 PM
So I copied my stored yml of MusixMatch to the providers folder, activated it, and deactivated the build-in one.
I haven't updated to the new .dll yet, but I did use some of the previous YML files that had been working with frankz's plulgin and with recent releases of this updates/new/current .dll.

Comparing your (hiccup's) YML for Musixmatch with mine I see one line that I have and you don't. And I'm not sure if it's necessary or not. I have been getting acceptable results with MM with the YML I'm using.

The line I have and you don't is
Code
- [regex, '<div class="inline_video_ad_container_container">', "\n", s]
which appears as the second line under post-filters.

Not sure if this will help in your extensive weekend test session, but thought I should mention it.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 06, 2022, 03:11:45 PM
I noticed some lyrics missing when using the build-in MusixMatch engine, that I believed I was able to retrieve before.
My bad. I wasn't accounting for those kind of urls before.
Will fix that for the next update.

Maybe some sort of check back to make sure the band name is at least similar?
There was never a widespread problem with finding the right page for a song on Genius or MusixMatch - that worked pretty reliably.
With Musixmatch and Genius, I can include a check to see if the artist will at least be contained in the url.
With sites like Deezer, that kind of check would not work as the urls are strictly unique IDs (digits throughout).

In a moment, I'll include that check and see if the results are still way off and if they are, then I'll revert back to how these providers functioned at first.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 06, 2022, 05:59:40 PM
Sadly, the check I thought I'd be able to add turned out to be a lot harder than it sounded.
So I've reverted Genius, Musixmatch and Lyrics Freak back to their original states - redownload the plugin.

To clarify what that means:
- Those three providers are no longer using the google search engine.
- So a user will now get a "no lyrics found" when the song strictly isn't available.
- But that unfortunately, also means song titles with bracketed contents in them (MusicBee strips those off before they get to the plugin)
  and ones with slightly different titles/artists than those available on the sites, would no longer get matched as well.
- So you'll need your songs tagged exactly as they appear on those websites if you want the plugin to make a match on them.
Title: Re: LyricsReloaded (Latest)
Post by: frankz on August 06, 2022, 06:52:51 PM
IMO this is a logical solution.  Those folks who want strict but maybe limited results can use the listed providers, and those who may want to loosen things up and take a chance with free text searching are still able to do so using Google as a lyric source, arranging them in the order of their choosing.  Great thinking.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 06, 2022, 07:02:27 PM
Sadly, the check I thought I'd be able to add turned out to be a lot harder than it sounded.
So I've reverted Genius, Musixmatch and Lyrics Freak back to their original states - redownload the plugin.
1.  Does this mean Genius and Musixmatch are still integrated into the DLL with Google, but are "doing their own thing" just like yml files (saw they are still removed from the providers yml zip)?

2.  Is Deezer still intergrated into the DLL?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 06, 2022, 07:12:14 PM
Yep, they are all still there. The change is only in the way they do their searching. Otherwise, they are set to work exactly how they used to before.
Users from Europe though (and possibly other regions that we do not yet know of) aren't able to use google as a source, due to something the plugin itself doesn't have control over.

Regarding the built-in yml sources missing from the providers zip file:
people can still access them from the configs folder in the source files. Although there's not much need to do so.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 06, 2022, 07:19:50 PM
Yep, they are all still there. The change is only in the way they do their searching. Otherwise, they are set to work exactly how they used to before.
Don't mean to pester you, but can you clarify "exactly how they used to before"?  Does that mean Genius and Musixmatch function the same way as when they were included as separate yml files?  And as Deezer made its only appearance as intergrated in the DLL, what search strategy is in use there?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 06, 2022, 07:30:02 PM
Sorry for the ambiguity. Yes, that means they are back to using the sites' search functions.
Before reverting back, I thought I'd make them use the google search engine as it appeared to match some songs which wouldn't have turned up when using a site's direct searching.
I didn't account for the fact that this would also return incorrect lyrics whenever there wasn't any available match.

Deezer's searching hasn't changed from what it was using when I introduced it.
It is still using the search loader (google search engine), but I suppose I should also make it use its own searching (for more accurate results).

I personally hadn't encountered an issue where incorrect lyrics were returned.
So I had no clue at first how much of an inconvenience it could cause with regards to the provider returning incorrect lyrics.
And I myself do not have MusicBee set to auto-save the lyrics. So I would have been aware in the event where incorrect lyrics were returned.
But for those who have that setting enabled, they would not be aware and I understand why people would not want a provider returning incorrect lyrics when it didn't find a match.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 08:24:57 AM
I'm still seeying discrepancies between using the build-in MusixMatch vs. my yml version:

build-in finds nothing, vs. yml finds correct lyrics:

Ivan Lins - Dinorah, Dinorah
Jacques Brel - Les Bonbons 67
Carla Bruni - Quelqu'un m'a dit

build-in finds wrong lyrics, vs. yml finds correct lyrics:

Simone - Pétala

build-in finds wrong lyrics, vs. yml finds no lyrics (which is the correct behaviour here):

Sharon Robinson - Sustenance
Simone - Fantasia

the yml I'm using:
Code
name: Musixmatch (new)

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [regex, "'", ""]
        - [regex, "/", " "]
        - [regex, '\s&(?=\s)', " "]
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '[^\sa-z0-9]\s*', ""]
        - [strip_nonascii, -]
    title:
        type: title
        filters:
        - strip_diacritics
        - lowercase
        - [regex, " '|' |/", " "]
        - [regex, "'", " "]
        - [regex, '\.+|,+|/+|(\W+(?=$))|(^\W+)', ""]
        - [regex, '\s&(?=\s)', " and"]
        - [strip_nonascii, -]

config:
    url: "http://www.musixmatch.com/lyrics/{artist}/{title}"
    pattern: ['<p class="mxm-lyrics__content.*?">(?<lyrics>.*?)<div [^>]*"lyrics-report".*?>', s]

post-filters:
- [regex, "<script.*?</script>", "", s]
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 08:45:44 AM
Did you re-download the plugin (v1.1.15.5)? Yesterday, I changed it back to how it worked at first.
The yml is exactly how it appears on yours (except that it also has that line which phred mentioned prior - which replaces an ad-line with a new line).
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 09:07:52 AM
Did you re-download the plugin (v1.1.15.5)?
I was convinced I had the latest one, but checking it, it said 1.1.15.4
I now downloaded 1.1.15.5, and the discrepancies are gone.
Thnx!
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 11:25:27 AM
I thought it might be interesting to get an idea of the success rate of finding correct lyrics for a couple of lyrics provider that the plugin can use.
After doing tests using around 100 songs of some various genres and languages, this is what it looks like for me:

           TEMPORARILY REMOVED
It was showing incorrect 'wrong lyrics' percentages
I'll post an updated version probably later today

Some of the 'smaller' providers were able to find some more obscure lyrics that the 'bigger' providers couldn't, so for me the next step will be to try and decide on the combination (and order) of providers to set to get the best average results.

edit,
No, I'm fooling myself, it's going to become more difficult.
I'll probably try to find lyrics providers that have lyrics for many of my not-found songs, and try to create (or edit existing) yml's to make those work.
If someone can point me to some tutorials/explanations on the workings of these yml's (perhaps somewhere in this thread, or in help files, or on github) it's appreciated…
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 01:05:22 PM
Those Genius stats are insane and I assume they're from v1.1.15.5 as 15.4 would definitely not have had a 0% for incorrect lyrics.

The downside with the google search engine is that it is biased towards English results.
Using the song examples that you've provided, I tried to make the correction that I'd said I'd make - but ended up not due to me rolling back to the first yml workings.
Tracks without a comment indicate that there was a correct match.

Ivan Lins - Novo tempo
Margriet Eshuijs Band - Black Pearl
Chico Buarque - Fortaleza
Simone - Geraldinos e Arquibaldos
Ane Brun - Du gråter så store tåra (the english translation was ahead of the original in the google search results)
Nana Caymmi - Doce Presença
Walter Becker - Door Number Two
Ivan Lins - Dinorah, Dinorah
Jacques Brel - Les Bonbons 67
Carla Bruni - Quelqu'un m'a dit (version listed at the top of the results has an English translation alongside and the yml's pattern is not built for that)
Simone - Pétala
Sharon Robinson - Sustenance (correctly returns a no match like the original)
Simone - Fantasia (the original cannot match it bcoz the artist on the site is 'Suzane & Simone', but with this, the match would occur)

..............................

Overall comments:
- The musixmatch yml below (which makes use of google searching) would mostly suit those who have most of their collection in English.
- There also would be a side effect in which songs that aren't available on the website, would return incorrect lyrics instead.
- Other users are right in that this behaviour would not be ideal as the default.
Code
name: Musixmatch_Google
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
        
    title:
        type: title
        filters: artist

config:
    identity url: "https://www.google.com/search?q=Musixmatch+{title}+{artist}"
    identity pattern: ['(?<identity>https://www.musixmatch.com.*?)%3Futm_|(?<identity>https://www.musixmatch.com.*?)["&]', 's']
    lyrics url: ""
    lyrics pattern: ['<p class="mxm-lyrics__content.*?">(?<lyrics>.*?)<div [^>]*"lyrics-report".*?>', s]

post-filters:
- [regex, "<script.*?</script>", "", s]
- [regex, '<div class="inline_video_ad_container_container">', "\n", s]
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 01:11:02 PM
Google:
I know 2000+ songs is a lot to go through, but it also would have been nice if phred could analyze a few of those and mention a few circumstances where the provider would have returned incorrect lyrics.

It'd be nice to know some of the circumstances in which this provider is bound to fail.
So far, I am aware that anything not English likely won't be found (and will leave room for incorrect lyrics being returned).

Lyrics Freak:
Having changed back to the site's search function yesterday, Idk for sure but I think the incorrect lyrics percentage would be a lot lower.
Were you using 1.1.15.4 for it? I think with 15.5, the searching would be a lot more stricter.

Deezer:
The high 'incorrect lyrics' percentage would unfortunately be something we have to live with as there is no other way I can do the searching.

I'll probably try to find lyrics providers that have lyrics for many of my not-found songs, and try to create (or edit existing) yml's to make those work.
If someone can point me to some tutorials/explanations on the workings of these yml's (perhaps somewhere in this thread, or in help files, or on github) it's appreciated…
In the 2nd post of this thread, I linked back to frankz's documentation post.
In the add-on readme, I linked the plugin's original author's github documentation page (which is no different to frankz's linked post though).
If that's not sufficient, people can ask whatever needs explanation and anybody on here with an answer would happily assist.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 01:23:59 PM
Lyrics Freak:
Having changed back to the site's search function yesterday, Idk for sure but I think the incorrect lyrics percentage would be a lot lower.
Were you using 1.1.15.4 for it? I think with 15.5, the searching would be a lot more stricter.

Deezer:
The high 'incorrect lyrics' percentage would unfortunately be something we have to live with as there is no other way I can do the searching.

Testing all of this has been slightly messy and complicated. (updating the plugin, VPN yes/no, using correct yml's, don't forget to empty cache, etc.)
So I wouldn't be too surprised if your suspicions about the wrong lyrics percentages being wrong are valid.

I'll re-test those and report back…
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 01:27:10 PM
I'll re-test those and report back…
That would be appreciated.
In the end, we should look for solutions that return more lyrics while keeping the incorrect percentages as minimal as possible (preferably avoidable at all, if possible).
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 01:51:53 PM
I'll re-test those and report back…
That would be appreciated.
In the end, we should look for solutions that return more lyrics while keeping the incorrect percentages as minimal as possible (preferably avoidable at all, if possible).
The 'wrong lyrics' percentages were indeed very wrong. My apologies for that. (also to Deezer and Lyrics Freaks ;-)
I'll see if I can maybe post new stats tonight. (going out now)

If Phred or anyone else has a (not too large) list of songs as a suggestion to add to my current sample song set, let me know.
The more variety, the better for its purpose.

What would e.g. add variety to my selection would be hip-hop/rap (I don't have much of that)
What would not be useful is music from artists such as The Beatles, U2, Simply Red, Adele, etc.
The lyrics for their music will easily be found by most providers.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 07, 2022, 02:24:28 PM
it also would have been nice if phred could analyze a few of those and mention a few circumstances where the provider would have returned incorrect lyrics.
I will spend some time double-checking lyrics that were retrieved from Google over the past couple of days, but I'm certainly not going through 2000 files. I'll do what I can to check a hundred or so.

Meanwhile hiccup's analysis is very well done. Don't expect the same from me. I'll provide the number of lyrics retrieved from Google and how many were correct or not.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 07, 2022, 07:50:31 PM
I will spend some time double-checking lyrics that were retrieved from Google over the past couple of days, but I'm certainly not going through 2000 files. I'll do what I can to check a hundred or so.
I checked the lyrics of 73 tracks that were sourced from Google using plugin v1.1.15.2 or 1.1.15.3. I could not find a single one with incorrect lyrics. Note that these are not obscure artists, but quite mainstream: Grateful Dead, Etta James, Al Kooper, J. Geils, and Janis Joplin, among others.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 09:05:49 PM
The current statistics of my finds:

(https://i.imgur.com/RjmZakn.png)

- corrected the mistakes in my previous table where Lyrics Freak and Deezer incorrectly showed a high percentage of 'wrong lyrics'
- added more songs to the sample database to improve on variety
  (e.g. two songs by Die Antwoord, as an homage to the new maintainer of this plugin
- added the column 'not found by Genius'
  because it now seems clear to me that Genius is the obvious choice to set as the main lyrics provider
  this column should be helpful as an indication to decide on adding, and setting the order of other providers to be searched for lyrics
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 07, 2022, 09:11:27 PM
A new statistic of my finds:
This is really great information. I have reordered my providers list based on your findings.

I appreciate the time this must've taken. Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 09:18:16 PM
This is really great information. I have reordered my providers list based on your findings.
I appreciate the time this must've taken. Thanks.
You are welcome phred.
Just remember to not set your VPN service to mimic some European country if you set to use 'Google' ;-)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 09:22:24 PM
Thanks for your reports guys. Really appreciated.

What would e.g. add variety to my selection would be hip-hop/rap (I don't have much of that)
What would not be useful is music from artists such as The Beatles, U2, Simply Red, Adele, etc.
The lyrics for their music will easily be found by most providers.
Neither do I. But I assume Genius has a lot of that. I recall reading somewhere that it was initially called Rap Genius, but then later expanded to other genres and stuff.
I had the assumption that the majority of everyone's collection would most certainly be mainstream/popular.
In any of the providers, I had zero faith in finding lyrics for my local artists' music or some EDM songs that usually get released on YT only.
Unless we found more providers like Oldie Lyrics with databases inclusive of obscure music, those without a lot of pop music would not find a lot of joy with this yet.

This is essentially a call to anyone who knows any other sites with a fairly large database, besides the ones we have already.

.......

I'm honestly shook by Deezer's 0% incorrect return rate.
It is using the 'free text searching' method that we've already seen to be not too reliable.
I guess that kind of searching is specific to websites (some recommend incorrect lyrics where there are no matches, while others do not).
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 09:30:03 PM
I'm honestly shook by Deezer's 0% incorrect return rate.
It is using the 'free text searching' method that we've already seen to be not too reliable.
Either it's a result of your great work on the plugin,
or I f*ed up. (again)

If you or anyone else runs into wrong lyrics provided by Deezer, please post the Artist - Song in this thread.
I'll then add it to my sample database, and we can get rid of the virgin 0% ;-)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 09:40:07 PM
The statistics post from hiccup above has been linked in the second post of this thread.
It'll be very useful to everyone when it comes to deciding on what order to set these built-in and optional providers.

Personally, I only have google enabled.
While testing Lyrics Freak the other weekend, I realized that my IP address must have been temporarily banned because the provider was no longer going past "...tries to load lyrics".
Assuming this was likely to happen with other providers as well, I had disabled them and left google alone as it was getting good results for my specific collection.
So enabling others would have been redundant for my use case.

Edit:
The plugin also has some rate limiting code in it. So maybe that played a role as well and it wasn't necessarily the website that had put a temp ban on me.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 09:47:17 PM
While testing Lyrics Freak the other weekend, I realized that my IP address must have been temporarily banned because the provider was no longer going past "...tries to load lyrics".
Yeah, rate limiting for sure is another complication/consideration.
During testing my IP was banned by Musixmatch.
A good deed never goes unpunished :-(
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 07, 2022, 09:54:15 PM
This is essentially a call to anyone who knows any other sites with a fairly large database, besides the ones we have already.
My #1 recommendation there would be the Metal Archives database (https://www.metal-archives.com/ (https://www.metal-archives.com/)).  Despite the site name, this giant discography contains many genres that stretch way beyond the expected "metalhead" foundation, with plenty of cross-over into goth, wave, alternative, etc.  When they are available, which is most of the time, the lyrics appear in the album track listing when "Show lyrics" is clicked, as in the example below.

(https://i.imgur.com/alioER2.png)

The only problem I know of is that MusicBee users in Russia would find this URL not available without VPN due to content dispute.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 09:56:07 PM
The statistics post from hiccup above has been linked in the second post of this thread.
I notice that post also mentions the supported providers:

-   Cušpajz
-   Letras de músicas
-   Lyrics Freak
-   Lyrics Mania
-   Lyrics Mode
-   Oldie Lyrics
-   Smriti
-   Song Lyrics
-   Teksty

It might be good if we could add and describe what the added value of each of those providers is (supposed to be).
To make that happen it would be nice if users that use them and have some experience with them could provide some input on that.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 07, 2022, 10:18:11 PM
My #1 recommendation there would be the Metal Archives database (https://www.metal-archives.com/ (https://www.metal-archives.com/)).
Thanks. Will look at that one just now.

I notice that post also mentions the supported providers.
Tomorrow evening, I will add all of them as plugin defaults. I will see how it goes in the long run.
My biggest fear with regards to making them all defaults was that it would take a toll on me, as it would require me to quickly fix the plugin whenever any of the providers broke.
If they won't break as often as I assume, then I can manage having all of them included.

It might be good if we could add and describe what the added value of each of those providers is (supposed to be).
To make that happen it would be nice if users that use them and have some experience with them could provide some input on that.
Hope others will step in here whenever they get time.
I'm not the best candidate for this. As I've mentioned, I mostly have pop music which any provider is likely to find.
While deciding on whether the new additions were good enough to be published, I was making sure that they, at the very least, had MJ's Heal The World.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 07, 2022, 10:51:23 PM
Tomorrow evening, I will add all of them as plugin defaults. I will see how it goes in the long run.
Are you sure it's a good idea to add them all?
At this moment it doesn't seem clear what the added value of each of them is.

I have tried a few of them, and many didn't seem to add any value. (for the songs I have been testing the plugin on)
'Quality over quantity' to me would seem a better approach here.
Maybe only add the ones that are proven to have added value, and/or are specifically requested by users?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 09, 2022, 06:38:31 PM
My #1 recommendation there would be the Metal Archives database.
A yml for Metal Archives has been added to the providers zip file. You'll also need to re-download the plugin to get it working.
Their structure is somewhat different to what we'd been working on before - so some part of the plugin needed updating.

Maybe only add the ones that are proven to have added value, and/or are specifically requested by users?
Agreed. I've now added Letras de músicas as a default provider as well.
Will look to include Lyrics Freak on the next update.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 09, 2022, 06:53:30 PM
Agreed. I've now added Letras de músicas as a default provider as well.
I had high hopes for that one, because at first it seemed to provide lyrics others didn't have.
But after more testing and fine-tuning, I now don't find it to have much added value any more.
And what is very bad about it, most lyrics it returns have long listings of webpage code beneath them, making things very ugly.
(that might get resolved by tuning the yml, but considering the added value of Letras, I am not going to bother with that myself)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 09, 2022, 07:11:09 PM
Btw, I just updated the stats image in post #91
(#92 if you are logged-in)

It now also displays the results when using a third provider additional to:
1. Genius
2. Musixmatch
3. ...
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 09, 2022, 07:57:01 PM
But after more testing and fine-tuning, I now don't find it to have much added value any more.
And what is very bad about it, most lyrics it returns have long listings of webpage code beneath them, making things very ugly.
(that might get resolved by tuning the yml, but considering the added value of Letras, I am not going to bother with that myself)
That's alright. The less built-in providers, the better for me.
I now notice that it also has a high incorrect lyrics percentage...a provider like that should be left optional.
About the extra html code, I will see if I can find a song that returns such (but it'd be a lot quicker if you could remember a song or two that I can test out).
And thanks a lot for all the testing you've been doing. It's very much appreciated.

(#92 if you are logged-in)
For me, it's also in post #91 while logged-in.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 09, 2022, 08:04:55 PM
About the extra html code, I will see if I can find a song that returns such (but it'd be a lot quicker if you could remember a song or two that I can test out).
(https://i.imgur.com/2LHSzFZ.png)
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 09, 2022, 08:33:38 PM
A yml for Metal Archives has been added to the providers zip file. You'll also need to re-download the plugin to get it working.
Metal Archives fails to return a single hit on tracks it definitely has lyrics for, even as the only provider selected in the retrieval options.  Am using the yml just posted and the 1.1.15.6 dll with a mod date of 8/9/2022 (4:52 PM) and size of 232,960.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 09, 2022, 08:48:47 PM
From what I can see the search expression in the Metal Archives yml is missing the song title parameter and using album only.  Here is the search expression that will return a hit on the track title ("song title")/band name and produce it in a list with an option to show lyrics, regarddless of album title, in case that helps.  Because the DLL part is unknown to me, sorry if you already are aware of this.

Code
https://www.metal-archives.com/search/advanced/searching/songs?songTitle=<Title>&bandName=<Artist>#songs
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 09, 2022, 08:52:51 PM
Strange, what's the log file saying? I tested it using the album tracks showing in your previous screenshot.

I just modified the yml to include songs with bracketed contents (e.g the Portishead cover from your screenshot).
I also upped a v1.1.15.7 (replaced the built-in Letras with Lyrics Freak) - in terms of functionality, it's the same as 15.6

But none of that (the changes associated with 15.7) will help with "fails to return a single result". The log entries will give me clues...
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 09, 2022, 08:58:15 PM
The url that the yml is using leads to this page for Frayle's The White Witch album: https://www.metal-archives.com/albums/frayle/The%20White%20Witch
Then from there, it grabs the ID for whatever song is being requested from that album.

Tomorrow, I will look at using the url you've provided. It seems straightforward.
But it should already work in its current state. I'm curious to see what the log's saying.

Edit:
Quote
Tomorrow, I will look at using the url you've provided. It seems straightforward.
Actually, the results from that advanced searching are no good for what we're after.
So it looks like there's no other way to get to the lyrics other than through the method which the yml is currently using.

In the screenshots:
#1 is when I've got my mouse over the lyrics button.
#2 is the link that the button accesses.

(https://i.imgur.com/8P0VKKk.png)
Look at #2 here. There's really nothing of use in that "link".

(https://i.imgur.com/eixsaTH.png)
Whereas here, #2 has this song's unique ID showing in that link.
That number is later on used by the plugin to access the lyrics from this url: https://www.metal-archives.com/release/ajax-view-lyrics/id/4568597
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 09, 2022, 10:16:37 PM
Sorry for not checking the log first--the answer is indeed there.  The search may be assuming that the track title is an album title.

I use the plugin almost exclusively when listening to radio streams, so that when the stream metadata sent includes band name and track title I can see the lyrics (if found) for the playing song.  Stream metadata almost NEVER includes the album title, just artist and track title.  This works perfectly fine for all the other sources the plugin retrieves, just not this one.  An example from the log for the song "Starlight" by the band "Waterland":

09/08/2022 03:26:39 [DEBUG] Lyrics request: Waterland - Starlight -  - Metal Archives
09/08/2022 03:26:39 [INFO] Metal Archives tries to load the lyrics...
09/08/2022 03:26:39 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Waterland/
09/08/2022 03:26:39 [DEBUG] gzip compression detected
09/08/2022 03:26:39 [WARN] The identity pattern Starlight\n</td>.*?lyricsButton(?<identity>.*?)" didn't match!
09/08/2022 03:26:39 [INFO] No lyrics found.
09/08/2022 03:26:39 [FAIL] no lyrics found from Metal Archives

If I'm interpreting this right, it's looking for a list of albums from the band Waterland, and then trying to find the title "Starlight" therein which fails because it's a track title not an album title.

I'm not surprised this site is a tough nut to crack.  If it helps at all, there is a source plugin for Foobar's "lyric show panel" just for this site that still works fine after 4  years.  If looking at how it works might help (it's also a DLL so opaque to me), it's downloadable at https://hydrogenaud.io/index.php?PHPSESSID=olto6kq35b21uv73jjal04vumh&action=dlattach;topic=108084.0;attach=11999 (https://hydrogenaud.io/index.php?PHPSESSID=olto6kq35b21uv73jjal04vumh&action=dlattach;topic=108084.0;attach=11999) .
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 09, 2022, 10:44:48 PM
For the same song, this is how the process should go:
Code
09-08-2022 11:22:53 [DEBUG] Lyrics request: Waterland - Starlight - Our Nation - Metal Archives
09-08-2022 11:22:53 [INFO] Metal Archives tries to load the lyrics...
09-08-2022 11:22:53 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Waterland/Our Nation
09-08-2022 11:22:54 [DEBUG] gzip compression detected
09-08-2022 11:22:54 [DEBUG] The constructed lyrics URL: https://www.metal-archives.com/release/ajax-view-lyrics/id/3344838
09-08-2022 11:22:55 [DEBUG] gzip compression detected
09-08-2022 11:22:55 [SUCCESS] lyrics found from Metal Archives!
Without the album name, the search will need to be 3 levels deep.
1. Search for the album using title and artist.
2. Search for the track-listing (unique ids) using the album.
3. Search for the lyrics using the song id.

I mean, that's a bit of an overkill. I didn't wanna leave 3 footprints on a website in quick succession - I think that may bring heat to MusicBee.
The search loader only dips in twice, and I don't think that's too bad. Three would be a stretch not gonna lie.
I'll sleep on it and get back to you tomorrow.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 10, 2022, 12:04:01 AM
Yes, it's a uniquely constructed site that's for sure.  Another foobar-related plugin that handles it successfully is at https://www.reddit.com/r/foobar2000/comments/o7ua73/lyric_show_panel_3_lyrics_from_genius_musixmatch/ (https://www.reddit.com/r/foobar2000/comments/o7ua73/lyric_show_panel_3_lyrics_from_genius_musixmatch/) .  You are probably dealing with an entirely different programming environment and of course set of different display requirements.  If it's undoable with MusicBee that's fine just forget about it, you've given us plenty of your free time as it is, and believe me it is much appreciated.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 10, 2022, 06:59:47 AM
Yes, it's a uniquely constructed site that's for sure.
There are some unofficial api's to be found for it. (I didn't know there could exist something like an unofficial api)
Here's one that seems to work:
https://github.com/Loki-Afro/metalarchives
I've no idea at all if this could be helpful in any way for MB though.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 10, 2022, 04:07:19 PM
I am noticing two instances where the Metal-Archives yml doesn't seem to function properly.

1.
https://www.metal-archives.com/albums/Helloween/Helloween/935514
has lyrics for all tracks, but the plugin returns none.

2.
https://www.metal-archives.com/albums/Carcass/Torn_Arteries/956082
only has the lyrics for #4 and #10

But songs 1-3 will get the lyrics for #4 returned,
and songs 5-9 will get the lyrics for #10 returned.

Something similar for https://www.metal-archives.com/albums/Hooded_Menace/The_Tritonus_Bell/949017
where track 1 is labelled 'instrumental', but the plugin will retrieve the lyrics of #2 for it.

edit/addition
Some hard-rock blasphemy:
For https://www.metal-archives.com/albums/Anvil/Forged_in_Fire/1906
no lyrics gets returned when e.g. playing #7
 
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 10, 2022, 05:05:23 PM
hiccup:  on the cases when you got lyrics returned from the Metal Archives yml, they were for files containing album tags, not radio streams, correct?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 10, 2022, 05:12:09 PM
hiccup:  on the cases when you got lyrics returned from the Metal Archives yml, they were for files containing album tags, not radio streams, correct?
Yes. All my testing is done using locally stored files.
Are you seeing different results when streaming?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 10, 2022, 05:58:47 PM
sveakul, re-download the plugin.
Metal Archives should work with radio streams as well now, albeit a bit slower and susceptible to time outs at times.
I realized I could just workaround the 'not wanting to conduct three searches on a site at once' issue by having google carry out the first search instead.
That ensures that the searching on the website itself is still kept at a maximum of two, as originally planned.

And to clarify a bit on my initial hesitance:

It was not that it couldn't be done with MB.
I was just worried that if I were to account for this special case, where radio streams do not have album names,
I would have had to make the plugin run three searches on the metal archives website and that's where my concern was.

I'm not really sure where we stand in terms of the legality of all this web scraping business (especially since we're dealing with copyrighted content).
But something like 3 automated searches in 3 secs, every 3 mins (average duration of a song), multiplied by the number of users,
would at some point have become an overload to the site's servers. That kind of attention should never be brought to MB or the forum.
And tbh, I doubt there are any websites that allow this kind of web access, but since "everyone does it", it's fine so long as we don't fly over the radar.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 10, 2022, 06:06:50 PM
I am noticing two instances where the Metal-Archives yml doesn't seem to function properly.
Will look at those just now. Some tweaks in the yml should address that.
.........

As long as a user is using local files with a filled album tag, this provider should still operate just the same.
It'll only use google (become a bit slower) when the album tag is empty.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 10, 2022, 06:53:34 PM
And tbh, I doubt there are any websites that allow this kind of web access, but since "everyone does it", it's fine so long as we don't fly over the radar.

It's probably wise not to turn this into a lengthy discussion addressing all aspects related to this, but for one thing:
I am pretty sure that none of these lyrics providers owns the rights of even one single lyric they openly display on their websites, and so making them available to anyone with an internet connection.

What is also interesting (and kind of funny) is that even the larger commercial ones don't seem to be certain or straightforward on what 'the rules of this game' are.
Out of curiosity of how this all works, I registered to a couple of them. (as a potential contributor)
One of them stated that when adding lyrics, you were not allowed to copy and paste lyrics from other sources to theirs.
You should carefully listen to the song and it's lyrics, and type what you hear yourself.
Yeah, right. I am sure everybody does that, and all the lyrics they are offering were created in that way.
Let's just hush, and carry on with our no-money-making hobby?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 10, 2022, 07:53:11 PM
@Mayibongwe:  tried Metal Archives again with the 1.1.15.8 download, and now it is finding lyrics there from radio streams, but only at about a 50/50 rate compared to Foobar which I used for side-by-side comparison with the same streams.

I think we can probably agree that the Metal Archives capability of the plugin is "It is what it is," and just let it go at that.  Thank you for your efforts once again.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 10, 2022, 07:56:31 PM
Yes. All my testing is done using locally stored files.
Are you seeing different results when streaming?
Yes, as in zero results (for Metal Archives) before today--but see my last post (Reply #121).
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 10, 2022, 08:11:14 PM
… but only at about a 50/50 rate compared to Foobar which I used for side-by-side comparison with the same streams.
Perhaps you could name a couple of songs or albums that foobar2000's plugin finds that 'our' plugin doesn't?
Providing specifics would probably be helpful to Mayibongwe in case he is willing to investigate this further.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 11, 2022, 05:31:00 AM
… but only at about a 50/50 rate compared to Foobar which I used for side-by-side comparison with the same streams.
Perhaps you could name a couple of songs or albums that foobar2000's plugin finds that 'our' plugin doesn't?
Providing specifics would probably be helpful to Mayibongwe in case he is willing to investigate this further.
I'll try to provide something more helpful over the next couple of days as far as missed tracks with corresponding log entries, no time right now.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 11, 2022, 03:09:12 PM
...but only at about a 50/50 rate compared to Foobar which I used for side-by-side comparison with the same streams.
What hiccup said...more examples would be helpful whenever you get the time.
But I did notice how it wasn't matching artist names with spaces in the google part of it. That should be fixed now.

....metal-archives.com/albums/Helloween/Helloween/935514
has lyrics for all tracks, but the plugin returns none.

....metal-archives.com/albums/Anvil/Forged_in_Fire/1906
no lyrics gets returned when e.g. playing #7
Those two have the same problem. The website has got two album versions for each of them.
So for the first one, the search is leading to this page instead of going directly to the page you've linked: https://www.metal-archives.com/albums/Helloween/Helloween
To account for those, I have resorted to the google searching as well - so it's now the default and should work with these too.

....metal-archives.com/albums/Carcass/Torn_Arteries/956082
only has the lyrics for #4 and #10

But songs 1-3 will get the lyrics for #4 returned,
and songs 5-9 will get the lyrics for #10 returned.

Something similar for ....metal-archives.com/albums/Hooded_Menace/The_Tritonus_Bell/949017
where track 1 is labelled 'instrumental', but the plugin will retrieve the lyrics of #2 for it.
I have changed the lyrics pattern for the yml that should address this.
Re-download both the plugin and the yml (btw, I also fixed the extra code showing up in the Letras de músicas provider).
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 11, 2022, 06:18:48 PM
I did some testing just now using the new 1.1.15.9 plugin and the updated Metal Archives yml file.  Results show a significant improvement.  Using radio streams only, out of 30 hits from Metal Archives using the Foobar setup, only 6 of those were not hit also by MusicBee, so an 80% success ratio.  Here is the "excised" log data for the 6 not found:

11/08/2022 12:25:09 [DEBUG] Lyrics request: Dysanchely - Songs Of Sorrow -  - Metal Archives
11/08/2022 12:25:09 [INFO] Metal Archives tries to load the lyrics...
11/08/2022 12:25:09 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Dysanchely+Songs Of Sorrow
11/08/2022 12:25:09 [DEBUG] gzip compression detected
11/08/2022 12:25:09 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Dysanchely/Songs_of_Sorrow/515170
11/08/2022 12:25:10 [DEBUG] gzip compression detected
11/08/2022 12:25:10 [WARN] The identity pattern \nSongs Of Sorrow.*?\n.*?id="song(?<identity>.*?)" didn't match!
11/08/2022 12:25:10 [INFO] No lyrics found.
11/08/2022 12:25:10 [FAIL] no lyrics found from Metal Archives

11/08/2022 12:26:05 [DEBUG] Lyrics request: Thy Catafalque - Desolatio -  - Metal Archives
11/08/2022 12:26:05 [INFO] Metal Archives tries to load the lyrics...
11/08/2022 12:26:05 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Thy_Catafalque+Desolatio
11/08/2022 12:26:05 [DEBUG] gzip compression detected
11/08/2022 12:26:06 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Thy_Catafalque/Vadak/937106
11/08/2022 12:26:06 [DEBUG] gzip compression detected
11/08/2022 12:26:06 [WARN] The identity pattern \nDesolatio.*?\n.*?id="song(?<identity>.*?)" didn't match!
11/08/2022 12:26:06 [INFO] No lyrics found.
11/08/2022 12:26:06 [FAIL] no lyrics found from Metal Archives

11/08/2022 12:27:07 [DEBUG] Lyrics request: Woods Of Ypres - The Sun Was In My Eyes Part One -  - Metal Archives
11/08/2022 12:27:07 [INFO] Metal Archives tries to load the lyrics...
11/08/2022 12:27:07 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Woods_Of_Ypres+The Sun Was In My Eyes Part One
11/08/2022 12:27:07 [DEBUG] gzip compression detected
11/08/2022 12:27:08 [WARN] The google identity pattern (?<identity>https://www.metal-archives.com/albums/Woods_Of_Ypres/.*?)["&] didn't match!
1
1/08/2022 12:33:21 [DEBUG] Lyrics request: Theatres Des Vampires - Queen Of The Damned -  - Metal Archives
11/08/2022 12:33:21 [INFO] Metal Archives tries to load the lyrics...
11/08/2022 12:33:21 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Theatres_Des_Vampires+Queen Of The Damned
11/08/2022 12:33:21 [DEBUG] gzip compression detected
11/08/2022 12:33:22 [WARN] The google identity pattern (?<identity>https://www.metal-archives.com/albums/Theatres_Des_Vampires/.*?)["&] didn't match!

11/08/2022 12:35:16 [DEBUG] Lyrics request: Shape Of Despair - Quiet These Paintings Are -  - Metal Archives
11/08/2022 12:35:16 [INFO] Metal Archives tries to load the lyrics...
11/08/2022 12:35:16 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Shape_Of_Despair+Quiet These Paintings Are
11/08/2022 12:35:16 [DEBUG] gzip compression detected
11/08/2022 12:35:17 [WARN] The google identity pattern (?<identity>https://www.metal-archives.com/albums/Shape_Of_Despair/.*?)["&] didn't match!

11/08/2022 12:46:24 [DEBUG] Lyrics request: Edge Of Thorns - Revelation -  - Metal Archives
11/08/2022 12:46:24 [INFO] Metal Archives tries to load the lyrics...
11/08/2022 12:46:24 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Edge_Of_Thorns+Revelation
11/08/2022 12:46:24 [DEBUG] gzip compression detected
11/08/2022 12:46:24 [WARN] The google identity pattern (?<identity>https://www.metal-archives.com/albums/Edge_Of_Thorns/.*?)["&] didn't match!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 11, 2022, 08:54:58 PM
1. Dysanchely - Songs Of Sorrow
2. Thy Catafalque - Desolatio
3. Woods Of Ypres - The Sun Was In My Eyes Part One
4. Theatres Des Vampires - Queen Of The Damned
5. Shape Of Despair - Quiet These Paintings Are
6. Edge Of Thorns - Revelation
Looks like #1 and #3 are not properly tagged. The pattern has been told to look for "Songs of Sorrow" and "The Sun Was In My Eyes Part One",
but the tracks on the website are titled "Song of Sorrow" and "The Sun Was In My Eyes: Part One".
I don't think that can be helped - not with this provider, that is.

The first search result picked up for #2 is a compilation album (https://www.metal-archives.com/albums/Thy_Catafalque/The_Early_Works/560252) that does not show the lyrics.
No room for improvement here either (especially when the provider can't be supplied an album name in this case).

#3 to #6 had a problem where google wasn't making a match because the searching was case sensitive.
I have changed that for the next update which is already available. With the latest version:

#5 and #6 are now getting picked up, but #4 has a problem similar to #2 where an incorrect album by that artist is being prioritized over the correct one.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 11, 2022, 09:23:33 PM
....metal-archives.com/albums/Helloween/Helloween/935514
has lyrics for all tracks, but the plugin returns none.

....metal-archives.com/albums/Anvil/Forged_in_Fire/1906
no lyrics gets returned when e.g. playing #7

....metal-archives.com/albums/Carcass/Torn_Arteries/956082
only has the lyrics for #4 and #10

But songs 1-3 will get the lyrics for #4 returned,
and songs 5-9 will get the lyrics for #10 returned.

Something similar for ....metal-archives.com/albums/Hooded_Menace/The_Tritonus_Bell/949017
where track 1 is labelled 'instrumental', but the plugin will retrieve the lyrics of #2 for it.
I have changed the lyrics pattern for the yml that should address this.
Re-download both the plugin and the yml (btw, I also fixed the extra code showing up in the Letras de músicas provider).
Wow.
WOW!

This seems to be a big improvement overall.
Both the success rate and the quality of the results have improved significantly.

See the updated stats image here (https://getmusicbee.com/forum/index.php?topic=36952.msg203168#msg203168)

I am getting fantastic results using these providers, in this order:

1. Genius
2. Musixmatch
3. Deezer
4. Metal Archives
 
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on August 11, 2022, 09:47:48 PM
Yes, Metal Archives was a good add, have already come across several stream titles where it came up as the ONLY lyrics source when running them all.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 11, 2022, 09:53:58 PM
The first search result picked up for #2 is a compilation album that does not show the lyrics.
No room for improvement here either (especially when the provider can't be supplied an album name in this case).
As a matter of fact, there was room for improvement for scenarios #2 and #4. (v1.1.16.1 is needed)
I realized I can just send in the album tag in the search as well. That'll make it more precise, except with radio streams which often do not come along with album names.

So for those using local and properly tagged files for this, every song from the list in my previous reply will get correctly matched.
But with radio streams, only 5 and 6 will get results. The rest will return a 'not found' for reasons already explained.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 11, 2022, 10:00:15 PM
Yes, Metal Archives was a good add…
While interesting for metalheads, they don't offer that much extra for 'the average listener'.
But Mayibongwes latest tweaks have also significantly improved the results for some of the other providers that have much larger databases.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 11, 2022, 10:09:50 PM
Thanks for suggesting it, sveakul. I'm kinda disappointed not to have managed to fully accommodate radio streams, as that is what you use most.
But from hiccup's statistics update, it seems most will benefit from this suggestion of yours.

I'm one of the average listeners who won't get to experience the joy of this provider.
Unfortunate me doesn't seem to have any song that fits the kind available on that website.
Thought The Cranberries' Zombie would be the only song from my collection that turns up there, but damn even that did not ;-(
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 11, 2022, 10:20:10 PM
Thought The Cranberries' Zombie would be the only song from my collection that turns up there, but damn even that did not ;-(
I am getting it from Musixmatch?:

(https://i.imgur.com/hWE4IA6.png)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 11, 2022, 10:27:49 PM
No, I was referring to Metal Archives and how I didn't have any song of that nature (metal) in my library.
Something like that Red Skull meme from Endgame..."I guide others to a treasure I cannot possess".
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 11, 2022, 10:29:54 PM
Ah, I misunderstood, I thought you didn't get it matched at all.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 11, 2022, 11:03:22 PM
I am getting it from Musixmatch?:
[Off-topic] @ hiccup: What font are you using for your lyrics? [/Off-topic]
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 12, 2022, 05:57:24 AM
[Off-topic] @ hiccup: What font are you using for your lyrics? [/Off-topic]
It's Candara.
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 12, 2022, 12:43:32 PM
It's Candara.
TY
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on August 12, 2022, 04:07:43 PM
There seems to be a regression where v.1.1.16 returns less than previous versions in some cases.
For me it doesn't e.g return lyrics for these songs any more:

Genius:
Alessi - Oh Lori
Brian Eno and the words of Rick Holland - Bless This Space
Chet Baker - The Thrill Is Gone

Deezer:
Serge Gainsbourg - Ballade de Melody Nelson

They all get matched when using v1.1.15.4
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 12, 2022, 06:21:25 PM
v1.1.15.4 is the version in which I had experimented with integrating the google searching into Genius and Musixmatch.
The aim was to match tracks which had slightly different tags than those available on the site.
But that, unfortunately, also resulted in cases where incorrect lyrics were returned whenever there wasn't a match or the top search results were not that of the song requested.
So in later versions, I reverted back to how these providers had functioned initially.

Alessi - Oh Lori
Brian Eno and the words of Rick Holland - Bless This Space
Chet Baker - The Thrill Is Gone
This is how the above songs are tagged on the Genius website - the absence or presence of a single letter is enough to throw it off:
Alessi Brothers - Oh Lori
Brian Eno - Bless This Space
Chet Baker - Thrill Is Gone

Serge Gainsbourg - Ballade de Melody Nelson
This one is a surprise as nothing has been changed to the Deezer yml since its introduction.
I have, however, now made a change to it that I think will improve things a little.
That quoted song should be getting matched from v1.1.16.2 onwards.
I have doubts that it worked before, can you reconfirm before updating?
Title: Re: LyricsReloaded (Latest)
Post by: phred on August 12, 2022, 07:14:19 PM
While I'm not testing the same tracks as hiccup, I have found that I'm getting more successful hits from both Deezer and Letras de musicas than before this plugin was updated and improved. Not that it's a lot, but just the fact that I'm getting them is really nice. I've had them both near the bottom of the order and have moved them up so they're more in the middle.

Thanks Mayibongwe

Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 13, 2022, 02:17:19 PM
Thanks phred. Glad to know the few changes made were positive ones. Appreciate the feedback.
Title: Re: LyricsReloaded (Latest)
Post by: Astro Gaze on August 15, 2022, 03:36:30 AM
Hey Mayibongwe, I know I'm late to the game but, I just wanted to say thanks for taking over this project.
I'm excited to see how it changes under your care.
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on August 16, 2022, 06:07:32 AM
Thank you for this new version, it works very well for me, even with my (sometimes) "complicated" way of tagging :)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 23, 2022, 07:59:57 PM
Thanks for the comments Astro and Gendji.

Added Megalobiz to the optional providers zip file - it has synchronized lyrics. Things to note about it:

- Given how loose the searching on that site is, you should expect incorrect lyrics for cases where the requested song won't be available.
- You'll be lucky to get lyrics that are *perfectly* in sync with your music. Be prepared to do some adjusting and offsetting to these lyrics.

Tbh, I've added this provider just for the sake of it. My honest opinion to people who may want to use it:
You are better off acquiring and synchronizing unsynced lyrics yourself - MusicBee provides a way for that in the Now Playing tab.
Creating your own synced lyrics is way easier/quicker than trying to adjust somebody else's.
Title: Re: LyricsReloaded (Latest)
Post by: rivum on September 09, 2022, 03:59:50 PM
for some reason I am not getting any results for genius.
That would be my preferred provider but when I set that as the only source I always get "No Lyrics Found" even though it comes up in a google search from genius.
I do get some results for most songs when I set Google as a provider, though.
Any thoughts on why genius isn't working for me?
I have 1.1.16.2 installed

thanks!
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 09, 2022, 05:23:37 PM
I am getting good results from Genius using version  1.1.16.0 and a separate Genius yml file (the built-in version un-checked as a source).  If you wanted to try that copy the code below into a yml (contains customizations from others):

Code
name: Genius custom

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [replace, "!!!", "chk-chik-chick"]
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '\.+|,+|(\W+(?=$))|(^\W+)', ""]
        - [regex, "'", ""]
        - [regex, '(?<=[a-z0-9%])[^\sa-z0-9%]+(?=[a-z0-9%]+)', "-"]
        - [regex, '((?<=\s)([^a-z0-9\s-])+(\s|\W)+)|((?<=\w)([^a-z0-9-])+(\s|\W)+)', " "]
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "https://genius.com/{artist}-{title}-lyrics"
    pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-6 YYrds">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- br2nl
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\[.{1,75}\]', ""]
- [regex, '\n{2,}',"\n\n", 's']
- trim
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 09, 2022, 07:35:31 PM
Any thoughts on why genius isn't working for me?
I just tested it and the built-in Genius is working fine for me on this latest version of the plugin:  1.1.16.2
(it is identical to the one posted by sveakul above)

Have you checked what the log file is saying? (...\MusicBee\AppData\mb_LyricsReloaded)
Post the log entries for one or two songs - they may give clues.
Title: Re: LyricsReloaded (Latest)
Post by: rivum on September 09, 2022, 09:08:00 PM
ok here's a snippit.  I don't know much about this code so any help welcome!

Quote
09/09/2022 10:57:19 [DEBUG] Lyrics request: The Who - Baba O'Riley - My Generation - Genius
09/09/2022 10:57:19 [INFO] Genius tries to load the lyrics...
09/09/2022 10:57:19 [DEBUG] The constructed URL: https://genius.com/the-who-baba-oriley-lyrics
09/09/2022 10:57:23 [DEBUG] gzip compression detected
09/09/2022 10:57:23 [WARN] The pattern <div class="Lyrics__Container.*?">(?<lyrics>.*)<div class="Lyrics__Footer.*?"> didn't match!
09/09/2022 10:57:23 [INFO] No lyrics found.
09/09/2022 10:57:23 [FAIL] no lyrics found from Genius
09/09/2022 10:57:25 [DEBUG] Lyrics request: The Who - Pinball Wizard - My Generation - Genius
09/09/2022 10:57:25 [INFO] Genius tries to load the lyrics...
09/09/2022 10:57:25 [DEBUG] The constructed URL: https://genius.com/the-who-pinball-wizard-lyrics
09/09/2022 10:57:25 [DEBUG] gzip compression detected
09/09/2022 10:57:25 [WARN] The pattern <div class="Lyrics__Container.*?">(?<lyrics>.*)<div class="Lyrics__Footer.*?"> didn't match!
09/09/2022 10:57:25 [INFO] No lyrics found.
09/09/2022 10:57:25 [FAIL] no lyrics found from Genius
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 09, 2022, 09:37:02 PM
The pattern which is said to be not matching isn't the one defined in the included Genius provider.
So I think you might have a Genius.yml file of your own in the providers subfolder that is overriding the built-in Genius - confirm whether or not that's the case.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 11, 2022, 03:58:21 PM
Plugin has been updated.
New log entries will now have some line breaks applied to them, in order to make the log file look a little less 'chaotic'.
Title: Re: LyricsReloaded (Latest)
Post by: rivum on September 12, 2022, 03:51:42 PM
thanks Mayibongwe.  I don't see that file - I don't even think I have a providers subfolder that I can tell!
Title: Re: LyricsReloaded (Latest)
Post by: rivum on September 12, 2022, 04:04:04 PM
sorry, I do see it now!
I didn't change it intentionally but I will see if I can grab a recent version from the site here and let you know how I made out.
thanks!!
Title: Re: LyricsReloaded (Latest)
Post by: rivum on September 12, 2022, 04:08:27 PM
ok I found the proper text for genius.yml and have updated it.  
Code
name: Genius (2022-1-27)

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [replace, "!!!", "chk-chik-chick"]
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '\.+|,+|(\W+(?=$))|(^\W+)', ""]
        - [regex, "'", ""]
        - [regex, '(?<=[a-z0-9%])[^\sa-z0-9%]+(?=[a-z0-9%]+)', "-"]
        - [regex, '((?<=\s)([^a-z0-9\s-])+(\s|\W)+)|((?<=\w)([^a-z0-9-])+(\s|\W)+)', " "]
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "https://genius.com/{artist}-{title}-lyrics"
    pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-6 jYfhrf">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- br2nl
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\[.{1,75}\]', ""]
- [regex, '\n{2,}',"\n\n", 's']
- trim

but it still hasn't worked - here is the log after I updated the yml:

Quote
12/09/2022 11:05:37 [INFO] mb_LyricsReloaded in version 1.1.16.2 started!
12/09/2022 11:05:37 [DEBUG] Loading config from field provider_deezer
12/09/2022 11:05:38 [INFO] Provider loaded: Deezer
12/09/2022 11:05:38 [DEBUG] Loading config from field provider_genius
12/09/2022 11:05:38 [INFO] Provider loaded: Genius
12/09/2022 11:05:38 [DEBUG] Loading config from field provider_google
12/09/2022 11:05:38 [INFO] Provider loaded: Google
12/09/2022 11:05:38 [DEBUG] Loading config from field provider_Lyrics_Freak
12/09/2022 11:05:38 [INFO] Provider loaded: Lyrics Freak
12/09/2022 11:05:38 [DEBUG] Loading config from field provider_musixmatch
12/09/2022 11:05:38 [INFO] Provider loaded: Musixmatch
12/09/2022 11:05:38 [DEBUG] Loading config from file: C:\Users\rvanmil\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\genius.yml
12/09/2022 11:05:38 [INFO] Provider loaded: Genius (2022-1-27)
12/09/2022 11:05:38 [DEBUG] Loading config from file: C:\Users\rvanmil\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\musixmatch.yml
12/09/2022 11:05:38 [INFO] Provider loaded: Musixmatch
12/09/2022 11:05:38 [INFO] The provider Musixmatch does already exist and will be replaced.
12/09/2022 11:05:38 [DEBUG] Received a notification of type PluginStartup
12/09/2022 11:05:38 [DEBUG] Received a notification of type MusicBeeStarted
12/09/2022 11:05:40 [DEBUG] gzip compression detected
12/09/2022 11:05:51 [DEBUG] Lyrics request: Weeping Tile - 1st Lady - Cold Snap - Google
12/09/2022 11:05:51 [INFO] Google tries to load the lyrics...
12/09/2022 11:05:51 [DEBUG] The constructed URL: https://www.google.com/search?q=1st-lady+weeping-tile+lyrics
12/09/2022 11:05:52 [DEBUG] gzip compression detected
12/09/2022 11:05:52 [WARN] The pattern </div></div></div></div><div class="hwc"><div class="BNeawe tAd8D AP7Wnd"><div><div class="BNeawe tAd8D AP7Wnd">(?<lyrics>.*)Source: didn't match!
12/09/2022 11:05:52 [INFO] No lyrics found.
12/09/2022 11:05:52 [FAIL] no lyrics found from Google
12/09/2022 11:05:59 [DEBUG] Lyrics request: Weeping Tile - Joint Acc't - Cold Snap - Google
12/09/2022 11:05:59 [INFO] Google tries to load the lyrics...
12/09/2022 11:05:59 [DEBUG] The constructed URL: https://www.google.com/search?q=joint-acct+weeping-tile+lyrics
12/09/2022 11:05:59 [DEBUG] gzip compression detected
12/09/2022 11:06:00 [WARN] The pattern </div></div></div></div><div class="hwc"><div class="BNeawe tAd8D AP7Wnd"><div><div class="BNeawe tAd8D AP7Wnd">(?<lyrics>.*)Source: didn't match!
12/09/2022 11:06:00 [INFO] No lyrics found.
12/09/2022 11:06:00 [FAIL] no lyrics found from Google
12/09/2022 11:06:08 [INFO] Plugin disabled
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 12, 2022, 05:58:46 PM
The log shows that the plugin is loading both Genius and Musixmatch sources twice--once from the ones built-in to the plugin and a second time from the external yml files, which could well be messing with your results.  You should un-check the external yml sources if you want to use the internal ones for the same source.

The selection choices in MB are shown using the internal name of the yml (first line after "name: ") not the name of the file.  This will be confusing if the names are the same for both internal and external sources (I see your Musixmatch yml is an example of this).  Either be sure they have a unique name internally, or, if you are going just with the internal ones, remove the ymls from the Providers folder entirely and re-start MusicBee, then re-select the sources in Tags(2).
Title: Re: LyricsReloaded (Latest)
Post by: rivum on September 12, 2022, 06:12:11 PM
ah that's got it sorted now!! thanks for your help!

One last thing - how do you remove incorrect lyrics from songs?  I have a few that were loaded before I cleaned all this up and pulled the wrong lyrics which, I think, are now stored internally somehow.
Is there a way to clear those and have it recheck for lyrics?


**EDIT** searched the forum and found the answer (which I should have just done in the first place!)
Title: Re: LyricsReloaded (Latest)
Post by: hunglt on September 13, 2022, 08:34:41 PM
Hello, I want to autoload lyrics in Russian from the website https://pesni.guru/
I don't really understand the structure of provider files, so just made a custom version to test as below:
Quote
name: pesni guru
loader: static

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '\.+|,+|(\W+(?=$))|(^\W+)', ""]
        - [regex, "'", ""]
        - [regex, '(?<=[a-z0-9%])[^\sa-z0-9%]+(?=[a-z0-9%]+)', "-"]
        - [regex, '((?<=\s)([^a-z0-9\s-])+(\s|\W)+)|((?<=\w)([^a-z0-9-])+(\s|\W)+)', " "]
        - [strip_nonascii, -]
        
    title:
        type: title
        filters: artist

config:
    url: "https://www.pesni.guru/text/{artist}-{title}"
    pattern: ['spoken:<br />(?<lyrics>.*?)</div>', s]
    
post-filters:
- [regex, '([.a-z]<br />\r\n<br />)\r\n[A-Z].*?:<br />', '$1', s]
- [regex, '<br />\r\n<br />(\r\n<br />)', '$1', s]
- strip_html
- entity_decode
- clean_spaces
- utf8_encode

It seems to work with English songs, but unfortunately, I got zero finding results with Russian songs.
Here is the log when I tried with the song "Я Спросил У Ясеня" and artist "Сергей Никитин" (of course its lyric does exist there  (https://pesni.guru/text/%D1%81%D0%B5%D1%80%D0%B3%D0%B5%D0%B9-%D0%BD%D0%B8%D0%BA%D0%B8%D1%82%D0%B8%D0%BD-%D1%8F-%D1%81%D0%BF%D1%80%D0%BE%D1%81%D0%B8%D0%BB-%D1%83-%D1%8F%D1%81%D0%B5%D0%BD%D1%8F))
Quote
14-09-2022 02:28:44 [DEBUG] Lyrics request: Сергей Никитин - Я Спросил У Ясеня -  - Deezer
14-09-2022 02:28:44 [INFO] Deezer tries to load the lyrics...
14-09-2022 02:28:44 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Deezer+-+-

14-09-2022 02:28:44 [DEBUG] Lyrics request: Сергей Никитин - Я Спросил У Ясеня -  - Google
14-09-2022 02:28:44 [INFO] Google tries to load the lyrics...
14-09-2022 02:28:44 [DEBUG] The constructed URL: https://www.google.com/search?q=-+-+lyrics

14-09-2022 02:28:44 [DEBUG] Lyrics request: Сергей Никитин - Я Спросил У Ясеня -  - pesni guru
14-09-2022 02:28:44 [INFO] pesni guru tries to load the lyrics...
14-09-2022 02:28:44 [DEBUG] The constructed URL: https://www.pesni.guru/text/---
14-09-2022 02:28:44 [DEBUG] gzip compression detected
14-09-2022 02:28:44 [DEBUG] gzip compression detected

14-09-2022 02:28:44 [DEBUG] Lyrics request: Сергей Никитин - Я Спросил У Ясеня -  - Letras de músicas
14-09-2022 02:28:44 [INFO] Letras de músicas tries to load the lyrics...
14-09-2022 02:28:44 [DEBUG] The constructed URL: http://letras.mus.br/-/-/

Could you please help me? Your help would be much appreciated.

EDIT: Just realized that all the characters must be in lower form and there aren't enough dashes. Please anyone help me? :(
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 14, 2022, 04:41:50 PM
Hello hunglt. Try this one out:

Code
name: Pesni Guru
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase

    title:
        type: title
        filters: artist
        
headers:
    user-agent: Firefox

config:
    identity url: "https://pesni.guru/search/{artist}+{title}"
    identity pattern: ['<a href="/text/(?<identity>.*?)"', 's']
    lyrics url: "https://pesni.guru/text/"
    lyrics pattern: ['parentNode.*?</div>(?<lyrics>[\s\S]*?)<a href', 's']
    
post-filters:
- [regex, '\s\s+', ' ']
- [regex, '<br>', "\n"]
- strip_html
- utf8_encode
- entity_decode
- trim

Title: Re: LyricsReloaded (Latest)
Post by: hunglt on September 15, 2022, 05:15:07 AM
Hello hunglt. Try this one out:

Code
name: Pesni Guru
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase

    title:
        type: title
        filters: artist
       
headers:
    user-agent: Firefox

config:
    identity url: "https://pesni.guru/search/{artist}+{title}"
    identity pattern: ['<a href="/text/(?<identity>.*?)"', 's']
    lyrics url: "https://pesni.guru/text/"
    lyrics pattern: ['parentNode.*?</div>(?<lyrics>[\s\S]*?)<a href', 's']
   
post-filters:
- [regex, '\s\s+', ' ']
- [regex, '<br>', "\n"]
- strip_html
- utf8_encode
- entity_decode
- trim



Thanks, it works! Wow, many thanks again ^^
Title: Re: LyricsReloaded (Latest)
Post by: boroda on September 15, 2022, 12:58:42 PM
i've also noticed that "Pesni Guru.yml" is now included into "providers.zip" from the 1st post on this topic. @Mayibongwe, thanks! this provider is really helpful for russian songs.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 15, 2022, 04:39:28 PM
Wonderful. Glad to hear that it's working well.
I decided to add it to the optional providers zip because it also seems to have quite a number of English songs as well (judging by the ones I've tested with).
So that's another positive. Thanks for suggesting it Hunglt.
Title: Re: LyricsReloaded (Latest)
Post by: phred on September 17, 2022, 03:10:41 AM
@Mayibongwe-

When you update the plugin with a new release, please update the link on the plugin's download page. Right now it's showing 1.1.15 and current is 1.1.16.4.

Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 17, 2022, 11:04:19 AM
Oops! Totally forgot about that side of maintenance - thanks for pointing it out phred.
I've updated the version numbers and will be sure to do that every time going forward.
Title: Re: LyricsReloaded (Latest)
Post by: hunglt on September 17, 2022, 02:40:56 PM
Wonderful. Glad to hear that it's working well.
I decided to add it to the optional providers zip because it also seems to have quite a number of English songs as well (judging by the ones I've tested with).
So that's another positive. Thanks for suggesting it Hunglt.
Could you make a tut about customizing the provider files? There are many sites that I want to try.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 19, 2022, 07:06:19 PM
Have you checked out this documentation post? https://getmusicbee.com/forum/index.php?topic=25406.msg145769#msg145769
I'll try to come up with a more detailed explanation the coming weekend (breaking down the contents of one or two providers).
For now, here's the basic gist of it:

1. A user needs to have a good understanding of regular expressions (https://getmusicbee.com/forum/index.php?topic=20952.0).

2. They also need to know the difference between the loaders (static and search).
     Deciding on which one to use is entirely dependent on the structure of the website.

     - The static loader only runs a single web search.
     - The search loader runs two.

e.g
Title: Simple and Clean
Artist: Hikaru Utada

The provider <Genius> has the lyrics for this song on this url: https://genius.com/hikaru-utada-simple-and-clean-lyrics
Here we are able to use the static loader (single search) because we can directly inject the artist and title into the url that leads straight to the lyrics webpage.

..............................

The provider <Deezer> has the lyrics for this song on this url: https://www.deezer.com/en/track/435815932
Here we cannot use the static loader because the URL of the webpage on which these lyrics are contained does not reference the artist or title in any way.
So what we need to do is use the search loader that can run two searches at a time, where:

- the first search is used to find the ID (435815932). This can be done with any search engine, including that of the website.
  Google has been my best friend on this note: https://www.google.com/search?q=deezer+simple+and+clean+hikaru+utada+lyrics

- lastly, using the first google search result, we are able to obtain the song ID which will then connect us to the lyrics webpage: https://www.deezer.com/en/track/435815932
Title: Re: LyricsReloaded (Latest)
Post by: SkyZippr on September 23, 2022, 03:51:16 AM
Is everyone else getting a 'You might also like' in the middle of the lyrics from Genius lately?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 23, 2022, 04:10:23 AM
Not in the middle, but seeing it at the very end of most (not all) Genius lyrics.
Title: Re: LyricsReloaded (Latest)
Post by: SkyZippr on September 23, 2022, 05:10:05 AM
So I took a look at the source code of Genius, and it seems they are inserting a 'lyrics recommendation' section, either in the middle or at the end of the lyrics depending on its length. Usually those stuff are taken care of and properly removed by the plugin, but since there's a 'you might also like' in plain text within the said section, those words are left intact.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 23, 2022, 10:34:52 AM
Hadn't noticed, but that's been taken care of now - redownload the plugin.
And thanks for bringing it to attention!

...........

For people using Metal Archives, there was a minor change I made to that provider.
So you'll need the latest yml from the providers zip to get it working with newer plugin versions.
Title: Re: LyricsReloaded (Latest)
Post by: phred on September 23, 2022, 01:16:56 PM
Thanks for the update Mayibongwe.
Just for the record, I updated lyrics on 28 tracks this morning with Genius as the source, and not one of them had the reported "you might also like" in them. Obviously this was before the update.

I wonder if it's happening with specific geographic areas.
Title: Re: LyricsReloaded (Latest)
Post by: SkyZippr on September 23, 2022, 02:08:20 PM
Thank you Mayibongwe, the new version works flawlessly.
Fyi I'm located in Japan.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 23, 2022, 02:23:54 PM
Just for the record, I updated lyrics on 28 tracks this morning with Genius as the source, and not one of them had the reported "you might also like" in them.
I wonder if it's happening with specific geographic areas.
I think it's unlikely to have been a geographical issue.
I did a Genius test on two songs this morning and the line wasn't so easy to spot at first glance, but it was indeed appearing in both of them.
(and at different locations depending on the length of the lyrics as SkyZippr had mentioned).

If you had a second look, I'm sure you'd spot it somewhere. But in case it truly won't be there, please state one track from the 28 for me to try out with (for curiosity's sake).
Title: Re: LyricsReloaded (Latest)
Post by: phred on September 23, 2022, 03:44:12 PM
If you had a second look, I'm sure you'd spot it somewhere. But in case it truly won't be there, please state one track from the 28 for me to try out with (for curiosity's sake).
I copied the lyrics into NotePad++ and did a search for "you might also like" and came up with nothing. I tried it with three tracks. While the tracks are quite popular, the album is a bootleg.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 23, 2022, 04:25:42 PM
Alright. It's cool, no worries.
In any case, the issue's been resolved.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 23, 2022, 10:24:56 PM
Hadn't noticed, but that's been taken care of now - redownload the plugin.
And thanks for bringing it to attention!
...........
For people using Metal Archives, there was a minor change I made to that provider.
So you'll need the latest yml from the providers zip to get it working with newer plugin versions.
Finally updated to the latest plugin version and newest providers folder (been putting it off since all worked flawlessly except for the recent Genius glitch) and things work at least as good and probably faster than before.  Thanks for the tuning on Metal Archives.  Best lyrics plugin on the planet now AFAIK and thank you once again for your work.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 25, 2022, 10:32:52 AM
Thanks sveakul. It's really nice knowing that I haven't butchered the great work that many people have put behind this project over the years.
We truly have <quick_wango> to thank for the manner in which he designed the plugin - granting users the ability to add any website they so desired was genius (pun intended).
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 25, 2022, 01:50:13 PM
Could you make a tut about customizing the provider files? There are many sites that I want to try.
I'll try to come up with a more detailed explanation the coming weekend.
Let's have a look at this website: https://www.lyrics.com/
We'll be using the song How Do I Live by artist Trisha Yearwood as an example.
The lyrics for it are hosted here: https://www.lyrics.com/lyric/20949555/Trisha+Yearwood/How+Do+I+Live

Code
name: Lyrics
loader: search
name >> this is the provider name that will show up in Preferences / Tags (2) / Lyrics.
loader >> I've already explained in post #165 the different types of loaders, and the reason why we'll be working with the search loader for this website.

Code
variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [replace, ' ', '%2B']

    title:
        type: title
        filters: artist
The variables section is optional. This is where we can format the tags (artist, title and album) received from MusicBee. If for instance, the website you are dealing with throws a 404 error whenever the url contains a period (.) , then you would have to remove/replace every occurrence of that character in your tags before the plugin can conduct the search - otherwise you would never get results for such songs.

For this provider, I have converted the artist and title tags into lower case (probably not necessary but it's just a habit of mine).
I have also replaced whitespaces with a %2B. This is absolutely necessary for this provider as you'll see in a moment.

Code
config:
    identity url: "https://www.google.com/search?q=lyrics.com+{title}+{artist}"
    identity pattern: ['(?<identity>https://www.lyrics.com/lyric/.*?/{artist}.*?)["&]', 's']
identity url >> the plugin will first conduct this search: https://www.google.com/search?q=lyrics.com+how%2Bdo%2Bi%2Blive+trisha%2Byearwood
Then on that webpage, it will look for the first url that matches the defined identity pattern.

In order to know the kind of pattern you have to construct, you'll have to inspect the source code of the webpage.
Don't know about other web browsers but in Chrome, I do that by pressing <Ctrl>+<U> and the resultant html page looks like this for the above google search:

(https://i.imgur.com/xohSHZY.png) (https://i.imgur.com/xohSHZY.png)

At this point, I usually just copy all of that into Notepad++ as it supports regex searching which will be important in my testing.
So in all that clutter, the identity pattern will go and grab only this part:
Also note how the search would have failed had I not converted trisha yearwood into trisha%2Byearwood.

(https://i.imgur.com/hqQIdip.png) (https://i.imgur.com/hqQIdip.png)

Code
lyrics url: ""
lyrics pattern: ['<pre id="lyric-body-text".*?>(?<lyrics>.*?)</pre>', 's']
So after the plugin has captured the content (identity) that I'm interested in, it'll go on to combine that with the lyrics url:
lyrics url >> I've left this part blank because we've already captured the entire url needed to take us to the lyrics webpage.

So the plugin actually interprets this lyrics url as <blank> + captured content, which equates to:
<blank> + https://www.lyrics.com/lyric/20949555/Trisha%2BYearwood/How%2BDo%2BI%2BLive

If we had only captured this part: 20949555/Trisha%2BYearwood/How%2BDo%2BI%2BLive
Then the yml would need to have << lyrics url: "https://www.lyrics.com/lyric/" >> so that the next conducted search is:
https://www.lyrics.com/lyric/ + 20949555/Trisha%2BYearwood/How%2BDo%2BI%2BLive

So now that we've finally gotten to our lyrics page, all that's left is to create another pattern which will only capture the lyric portion.
That's what the lyrics pattern is for. Same as the identity thingy, you'll have to inspect the page source and then formulate the necessary pattern.

Code
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim
The post-filters section is also optional.
When included, it serves the purpose of polishing and refining the captured lyrics right before the plugin can send them back to MusicBee.
Title: Re: LyricsReloaded (Latest)
Post by: phred on September 25, 2022, 02:45:48 PM
@Mayibongwe- I think this would be a great addition to the tips and tricks section. If you decide to do so, please let me know that it's complete (via PM) and I will remove your tutorial from this thread and add a link to the Tips and Tricks thread.
Title: Re: LyricsReloaded (Latest)
Post by: Corliss Rain on September 29, 2022, 05:42:03 PM
Hi guys,

I'm getting this system error and then MB shuts down. Help!

MusicBee v3.5.8292.34303D  (Win10.0), 29 Sep 2022 12:39:

System.NullReferenceException: Object reference not set to an instance of an object.
   at CubeIsland.LyricsReloaded.LyricsReloaded.shutdown()
   at CubeIsland.LyricsReloaded.LyricsReloaded.Finalize()
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 29, 2022, 06:16:14 PM
Hello Corliss Rain.

Are you using the latest 1.1.16.6 plugin version?
Is there anything in the plugin's error log? You can find the file in this folder: ...\MusicBee\AppData\mb_LyricsReloaded
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 29, 2022, 07:22:21 PM
I'm getting this system error and then MB shuts down. Help!

MusicBee v3.5.8292.34303D  (Win10.0), 29 Sep 2022 12:39:

System.NullReferenceException: Object reference not set to an instance of an object.
   at CubeIsland.LyricsReloaded.LyricsReloaded.shutdown()
   at CubeIsland.LyricsReloaded.LyricsReloaded.Finalize()

You may have more than one instance of the plugin on your computer, or the plugin is not located where MusicBee expects to find it, i.e. in the MusicBee/Plugins folder.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on September 30, 2022, 11:19:44 AM
The plugin doesn't find the lyrics from metal archives even though the are there.
30.09.2022 12:11:50 [DEBUG] Lyrics request: Strigoi - Bathed In A Black Sun - Viscera - Metal Archives
30.09.2022 12:11:50 [INFO] Metal Archives tries to load the lyrics...
30.09.2022 12:11:50 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Strigoi+Bathed In A Black Sun+Viscera
30.09.2022 12:11:51 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Strigoi/Viscera/1057366

Deezer the same
30.09.2022 12:16:47 [DEBUG] Lyrics request: Björk - Army Of Me - Post - Deezer
30.09.2022 12:16:47 [INFO] Deezer tries to load the lyrics...
30.09.2022 12:16:47 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Deezer+army of me+björk
30.09.2022 12:16:48 [DEBUG] The constructed lyrics URL: https://www.deezer.com/en/track/510168672
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 30, 2022, 03:21:29 PM
Trying it out now, both requests are giving me (correct) results.

Can you untick the other providers and then retry Metal Archives and Deezer one at a time.
If they fail for the same songs, post the log entries again for each of them.

It's easier to follow the log file when it's searching from one provider at a time.
The entries you have posted above are missing a couple of lines.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on September 30, 2022, 03:57:40 PM
It is done that way. For strigoi I checked only metal archives and for Bjork deezer. Plugin (1.1.16.6) and MB (3.5.8302) is up to date i think.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 30, 2022, 04:09:00 PM
Do you get the same log entries when you redo the search for each of the providers at a single time?

A full successful Metal Archives log entry will look like this:
Code
30-09-2022 04:04:45 [DEBUG] Lyrics request: Strigoi - Bathed In A Black Sun - Viscera - Metal Archives
30-09-2022 04:04:45 [INFO] Metal Archives tries to load the lyrics...
30-09-2022 04:04:45 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Strigoi+Bathed In A Black Sun+Viscera
30-09-2022 04:04:47 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Strigoi/Viscera/1057366
30-09-2022 04:04:48 [DEBUG] The constructed lyrics URL: https://www.metal-archives.com/release/ajax-view-lyrics/id/6380887
30-09-2022 04:04:49 [SUCCESS] lyrics found from Metal Archives!
Title: Re: LyricsReloaded (Latest)
Post by: aktor on September 30, 2022, 04:41:31 PM
0.09.2022 05:38:06 [DEBUG] Lyrics request: Strigoi - Bathed In A Black Sun - Viscera - Metal Archives
30.09.2022 05:38:06 [INFO] Metal Archives tries to load the lyrics...
30.09.2022 05:38:06 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Strigoi+Bathed In A Black Sun+Viscera
30.09.2022 05:38:08 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Strigoi/Viscera/1057366

This is what i get.

and the following are missing
30-09-2022 04:04:48 [DEBUG] The constructed lyrics URL: https://www.metal-archives.com/release/ajax-view-lyrics/id/6380887
30-09-2022 04:04:49 [SUCCESS] lyrics found from Metal Archives!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 30, 2022, 04:53:42 PM
I'm not entirely sure why the last search is not being conducted on your side. It may be that your IP has been temporary banned on the Metal Archives website.
That tends to happen after a while when you've repeatedly used the same provider. Does it also fail when you try with other songs from that website?
Also, there was a recent change that I made to the Metal Archives yml. Try grabbing the latest one from the providers zip (but I suspect that's the one you already have)

And what about Deezer? Is it also still failing and producing the same log entries?
Title: Re: LyricsReloaded (Latest)
Post by: aktor on September 30, 2022, 04:55:03 PM
When all boxes are checked I get the lyrics. This is the log.

30.09.2022 05:42:29 [DEBUG] Lyrics request: Björk - Hunter - Homogenic - Musixmatch
30.09.2022 05:42:29 [INFO] Musixmatch tries to load the lyrics...
genic - Musixmatch
earch.php?q=björk+hunter
jörk+Hunter+Homog30.09.2022 05:42:29 [INFO] Musixmatch tries to load the lyrics...
genic - Musixmatch
earch.php?q=björk+hunter
jörk+Hunter+Homog30.09.2022 05:42:29 [DEBUG] The constructed URL: https://genius.com/bjork-hunter-lyrics
30.09.2022 05:42:29 [DEBUG] The constructed URL: http://www.musixmatch.com/lyrics/bjork/hunter
30.09.2022 05:42:29 [DEBUG] The constructed lyrics URL: https://www.lyricsfreak.com/b/bjork/hunter_20018853.html
30.09.2022 05:42:32 [WARN] The google identity pattern (?<identity>https://www.metal-archives.com/albums/Björk/.*?)["&] didn't match!
30.09.2022 05:42:32 [FAIL] no lyrics found from Metal Archives
30.09.2022 05:42:32 [DEBUG] Received a notification of type TagsChanging

Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 30, 2022, 07:36:04 PM
I'm not entirely sure why the last search is not being conducted on your side. It may be that your IP has been temporary banned on the Metal Archives website.
Access to the Metal Archives site is blocked in Russia (https://forum.metal-archives.com/viewtopic.php?f=3&t=131317 (https://forum.metal-archives.com/viewtopic.php?f=3&t=131317)), about Deezer I don't know.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on September 30, 2022, 08:28:01 PM
It is not that M Archives a accessible just fine.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 30, 2022, 10:26:22 PM
You never gave answers to some of the questions.

Is Metal Archives not working for any of your tracks (ones you know are present on their website)?
Has this provider ever worked for you before, or you had just installed the plugin and realized that MA wasn't getting you any lyrics?

Is Deezer still not getting you the lyrics for Björk's Army of Me?
If it still isn't, can you also check whether or not it's getting lyrics for any of your other tracks.

And remember to do your testing one provider (MA and Deezer) at a time.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 01, 2022, 08:32:48 AM
Is Metal Archives not working for any of your tracks (ones you know are present on their website)? - Positive
Has this provider ever worked for you before, or you had just installed the plugin and realized that MA wasn't getting you any lyrics? I just installed the plugin and realized that MA wasn't getting any lyrics.
Is Deezer still not getting you the lyrics for Björk's Army of Me? Deezer not working.
If it still isn't, can you also check whether or not it's getting lyrics for any of your other tracks? Not working
1.10.2022 09:26:43 [DEBUG] Lyrics request: Radiohead - Creep - Pablo Honey - Deezer
01.10.2022 09:26:43 [INFO] Deezer tries to load the lyrics...
01.10.2022 09:26:43 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Deezer+creep+radiohead
01.10.2022 09:26:45 [DEBUG] The constructed lyrics URL: https://www.deezer.com/en/track/138547415

also genius doesn't work

01.10.2022 09:28:53 [DEBUG] Lyrics request: Radiohead - Creep - Pablo Honey - Genius
01.10.2022 09:28:53 [INFO] Genius tries to load the lyrics...
01.10.2022 09:28:53 [DEBUG] The constructed URL: https://genius.com/radiohead-creep-lyrics

but chartlylirics works

and thanks for the antwers
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 01, 2022, 09:03:03 AM
I deleted and reinstalled the plugin. now zje strang things i that it works except for the band stigoi (lyrics are on metal archives site)
log:
01.10.2022 09:51:34 [DEBUG] Lyrics request: Amorphis - My Kantele - My Kantele - Genius via Beenius
01.10.2022 09:51:34 [WARN] The provider Genius via Beenius was not found!
01.10.2022 09:51:37 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:51:56 [DEBUG] Received a notification of type TagsChanging

01.10.2022 09:51:56 [DEBUG] Lyrics request: Amorphis - My Kantele - My Kantele - Deezer
01.10.2022 09:51:56 [INFO] Deezer tries to load the lyrics...
01.10.2022 09:51:56 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Deezer+my kantele+amorphis
01.10.2022 09:51:57 [DEBUG] The constructed lyrics URL: https://www.deezer.com/en/track/10970713
01.10.2022 09:52:01 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:52:28 [DEBUG] Received a notification of type TagsChanging

01.10.2022 09:52:28 [DEBUG] Lyrics request: Amorphis - My Kantele - My Kantele - Genius
01.10.2022 09:52:28 [INFO] Genius tries to load the lyrics...
01.10.2022 09:52:28 [DEBUG] The constructed URL: https://genius.com/amorphis-my-kantele-lyrics
01.10.2022 09:52:30 [SUCCESS] lyrics found from Genius!
01.10.2022 09:52:30 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:52:53 [DEBUG] Received a notification of type TagsChanging

01.10.2022 09:52:53 [DEBUG] Lyrics request: Amorphis - My Kantele - My Kantele - Metal Archives
01.10.2022 09:52:53 [INFO] Metal Archives tries to load the lyrics...
01.10.2022 09:52:53 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Amorphis+My Kantele+My Kantele
01.10.2022 09:52:54 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Amorphis/My_Kantele/5599
01.10.2022 09:52:57 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:54:48 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:54:52 [DEBUG] Received a notification of type TagsChanging

01.10.2022 09:54:52 [DEBUG] Lyrics request: Amorphis - My Kantele - My Kantele - Metal Archives
01.10.2022 09:54:52 [INFO] Metal Archives tries to load the lyrics...
01.10.2022 09:54:52 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Amorphis+My Kantele+My Kantele
01.10.2022 09:54:53 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Amorphis/My_Kantele/5599
01.10.2022 09:54:56 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:55:14 [DEBUG] Received a notification of type TagsChanging
01.10.2022 09:55:18 [DEBUG] Received a notification of type TagsChanging

01.10.2022 09:55:23 [DEBUG] Lyrics request: Strigoi - King Of All Terror - Viscera - Metal Archives
01.10.2022 09:55:23 [INFO] Metal Archives tries to load the lyrics...
01.10.2022 09:55:23 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Strigoi+King Of All Terror+Viscera
01.10.2022 09:55:24 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Strigoi/Viscera/1057366

01.10.2022 09:55:29 [DEBUG] Lyrics request: Strigoi - Byzantine Tragedy - Viscera - Metal Archives
01.10.2022 09:55:29 [INFO] Metal Archives tries to load the lyrics...
01.10.2022 09:55:29 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Strigoi+Byzantine Tragedy+Viscera
01.10.2022 09:55:31 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Strigoi/Viscera/1057366

01.10.2022 09:55:49 [DEBUG] Lyrics request: Strigoi - The Rising Horde - Abandon All Faith - Metal Archives
01.10.2022 09:55:49 [INFO] Metal Archives tries to load the lyrics...
01.10.2022 09:55:49 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Strigoi+The Rising Horde+Abandon All Faith
01.10.2022 09:55:50 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Strigoi/Abandon_All_Faith/807099

01.10.2022 09:57:44 [DEBUG] Lyrics request: Deathspell Omega - Enantiodromia - The Long Defeat - Metal Archives
01.10.2022 09:57:44 [INFO] Metal Archives tries to load the lyrics...
01.10.2022 09:57:44 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Deathspell_Omega+Enantiodromia+The Long Defeat
01.10.2022 09:57:46 [DEBUG] The constructed identity URL: https://www.metal-archives.com/albums/Deathspell_Omega/The_Long_Defeat/1025837
01.10.2022 09:57:47 [DEBUG] Received a notification of type TagsChanging
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 01, 2022, 10:49:44 AM
Glad to hear that a simple reinstall fixed most of yesterday's problems.

01.10.2022 09:54:52 [DEBUG] Lyrics request: Amorphis - My Kantele - My Kantele - Metal Archives
01.10.2022 09:57:44 [DEBUG] Lyrics request: Deathspell Omega - Enantiodromia - The Long Defeat - Metal Archives
Did you get the lyrics for these two tracks?
If you did not, then you must have some kind of issue with the MA website (probably along the lines of what sveakul mentioned) that I wouldn't be able to help with.
But if you did get the lyrics for those two, then I honestly do not know why the Strigoi tracks would not work for you.
On my side, I'm getting results for all those Strigoi tracks except for The Rising Hordes which is an instrumental.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 01, 2022, 11:35:12 AM
Did you get the lyrics for these two tracks? Yes
About strigoi, yes it is weird as I managed to get other new metal lyrics from MA. Other strange thing the lyrics on MA and the  the ones the plugin downloads differ as they have lines like (verse1) (chorus) (guitar solo) added. Do you get the same on your system?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 01, 2022, 12:43:43 PM
Other strange thing the lyrics on MA and the  the ones the plugin downloads differ as they have lines like (verse1) (chorus) (guitar solo) added.
I can't see where the difference would come from as the MA provider is set to bring in the lyrics as they appear on the site - without any additional formatting.
Do you have examples of tracks that I can verify this with? (tracks where the retrieved lyrics have those lines while the ones on the site do not or vice-versa)

Do you get the same on your system?
I do not have any metal tracks in my collection. So this provider is always unticked for me.
Perhaps someone else will comment on whether or not this is something they've noticed before.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 01, 2022, 05:26:08 PM
Sorry for the gore  lyrics i didn't realise  :)  ;D
Her is the metal archive:
To a burial
In crimson rain
To a darkness
Acceptance through this pain

Genocidal touch of death
It slipped right in through hell
Where the mass resides

For the weary choose oblivion
Our saviour's godless suicide
Demented forced starvation
Affliction of extinction

The ethereal intrinsic rage
A diabolical acceptance to this plague

Blasphemers in pits surround us
The lamented foolish gone
The order of this war

Behold the darkened shores of deprivation
Below, the ragged lord of immolation

As we begin to rise
What's left of all humankind
Remains from this killing spree
All that's left withers
From his demon seed

Here is musicbee - Only metal archive box checked
[Verse 1]
To a burial
In crimson rain
To a darkness
Acceptance through this pain
Genocidal touch of death
It slipped right in through Hell
Where the mass resides

[Chorus]
For the weary choose oblivion
Our saviour's godless suicide
Demented forced starvation
Affliction of extinction
Affliction of extinction

[Verse 2]
The ethereal
Intrinsic rage
A diabolical
Acceptance to this plague
Genocidal touch of death
It slipped right in through Hell
Where the mass resides

[Refrain]
Blasphemers in pits surround us
The lamented foolish gone
The order of this war

[Bridge]
Behold darkened shores of deprivation
Below, ragged lord of immolation
As we begin to rise
What's left of all humankind
Remains from this killing spree
All that's left withers
From his demon seed

[Refrain]
Blasphemers in pits surround us
The lamented foolish gone
The order of this war
Blasphemers in pits surround us
The lamented foolish gone
The order of this war

[Chorus]
For the weary choose oblivion
Our saviour's godless suicide
Demented forced starvation
Affliction of extinction
Affliction of extinction
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 01, 2022, 05:53:30 PM
I found out what is the problem. It seems that even though i have only metal archives selected it grabs lyrics from  genius. So I removed beegenius plugin and now lyrics reloaded doesn't work for deezer and MA but works with genius an get this without verse, chorus etc lines.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 01, 2022, 07:42:31 PM
To ensure we're all working from the same sheet of music, you should do is this;  with MusicBee CLOSED:

1.  Delete or inactivate the Beegenius plugin for now and be sure the mb_LyricsReloaded.dll plugin is version 1.1.16.6

2.  Download the new "providers" zip from the same page you downloaded the 1.1.16.6 version of mb_LyricsReloaded.dll from

3.  Unzip the contents of the providers.zip into the existing MusicBee\AppData\mb_LyricsReloaded\providers folder, letting it overwrite the existing contents.

Then, open MusicBee, go into Prefs/Tags(2), and in the lyrics section hit the "..." button next to the sources box, and check all the sources shown there you feel you may need, adjusting the priority as desired.  Then hit the "UPDATE" button, and the "Save" button.  Exit and restart MusicBee.

Once you do all the above you should be working with fully enabled lyrics retrieval,  depending on any geo-restrictions, website changes, etc.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 01, 2022, 09:06:29 PM
Yes done that. Maybe a fresh instal of music bee would work but i'm not gonna do that. i am gonna try portable version and then report.

And after doing that i report that the plugin doesn't work for me. I am giving up. Thanks for help. 
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 02, 2022, 12:53:17 PM
I found out what is the problem. It seems that even though i have only metal archives selected it grabs lyrics from  genius.
So I removed beegenius plugin and now lyrics reloaded doesn't work for deezer and MA but works with genius an get this without verse, chorus etc lines.
FWIW, I had a look at the Beenius thread and it seems this is not the first time somebody's come across something like this.

Also, I'm not sure if other lyric plugins need to be disabled, but lyrics-reloaded should be disabled.
With them both enabled, lyrics-reloaded just doesn't seem to work, but benius is fine.
Forum member, Redearth, also appears to have encountered a similar issue where having both Reloaded and Beenius enabled at the same time caused problems.

In my testing, it looks like it's not just this pair of lyric plugins clashing.
So there may be something else going on from MusicBee's side - I'll reach out to Steven in the Bug Reports section.
Title: Re: LyricsReloaded (Latest)
Post by: aktor on October 02, 2022, 03:51:53 PM
My problem is not with beegenious as a downloaded a fresh portable version of MB and installed only reloaded plug-in and had the same problem.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 02, 2022, 04:41:54 PM
Hmm. I don't think I have any other ideas as to why the plugin is not behaving correctly for you.
But you did mention at one point how a reinstall had fixed it.
So perhaps it's still along the lines of you needing to properly install it. But it's merely copying the dll to the plugins folder that's required - so I don't think you're doing that part wrong.

Sorry man, I'm out of ideas. But I guess you could just clarify what "same problem" refers to so that I maybe try to help again (is it still the issue of the providers not working?).
But if you don't intend to continue with trying to get it to work properly, that's okay as well.
Title: Re: LyricsReloaded (Latest)
Post by: xdbotx on October 04, 2022, 07:58:19 AM
I have updated to the latest MusicBee and am still unable to load the plugin.

While trying to load mb_LyricsReloaded_1.1.16.7, I receive the following errors.

An error occured during plugin startup: The process cannot access the file C:\Users\Blah\AppData\Roaming\MusicBee\mb_LyricsReloaded\mb_LyricsReloaded.log because it is being used by another process.

Followed by this error:
Unable to initialise plugin: mb_LyricsReloaded.dll
Exception has been thrown by the target of an invocation.

Followed by this error:
MusicBee v3.5.8150.17011D  (Win10.0), 4 Oct 2022 2:56:

System.NullReferenceException: Object reference not set to an instance of an object.
   at CubeIsland.LyricsReloaded.LyricsReloaded.shutdown()
   at CubeIsland.LyricsReloaded.LyricsReloaded.Finalize()

Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 04, 2022, 10:49:48 AM
Sorry about that. Can you re-download it and try again.
Title: Re: LyricsReloaded (Latest)
Post by: xdbotx on October 04, 2022, 11:27:02 AM
Thanks for your help!
I'm still getting the same error.  :(
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 04, 2022, 11:44:14 AM
Oh boy, looks like this is going to take a while.
I hope other forum members won't mind me taking this to a private conversation with xdbotx.

I don't want to bomb the forum with an excess of posts on this one issue.
But once we get it sorted out in PMs, I'll be back here to say what was up.
Title: Re: LyricsReloaded (Latest)
Post by: Tybot on October 04, 2022, 11:57:32 PM
Just wanted to say a big thank you to Mayibongwe for the plugin! No issues on my end and it saves me so much time it's ridiculous :D
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 05, 2022, 05:05:31 AM
@Mayibongwe:  could you please give us a "changelog" as to what you have added/modified in 1.1.16.9 since 1.1.16.6?  Haven't seen anything in your forum posts on it, thanks!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 05, 2022, 10:52:45 AM
But once we get it sorted out in PMs, I'll be back here to say what was up.
The issue was just as sveakul had surmised in his reply (https://getmusicbee.com/forum/index.php?topic=36952.msg204867#msg204867) to Corliss Rain's similar bug report.
xdbotx was trying to install the newest plugin version without overwriting or uninstalling an old v1.1.2.0 from 2014.

Just wanted to say a big thank you to Mayibongwe for the plugin! No issues on my end and it saves me so much time it's ridiculous :D
Thanks Tybot. Glad to hear that it's functioning without any issues.

could you please give us a "changelog" as to what you have added/modified in 1.1.16.9 since 1.1.16.6?
The internal changes are transparent and mostly just a revision in the implementation of the code I had added in when I began working on this.
E.g the log clearance code which I thought was tripping things up for Installer versions of MB (which xdbotx and Corliss Rain both had according to their error reports).

- renamed the mb_LyricsReloaded.log file to Log.log.
- renamed the mb_LyricsReloaded.ini file to Settings.ini.
- re-structured the format of the settings.

Again, all those changes will be automatic and do not change anything in how the plugin was working before the updates.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 06, 2022, 07:34:24 PM
Thanks for the update on 1.1.16.9!  Just a couple of random observations while I'm on:

Why would the plugin's (1.1.16.9) built-in Musixmatch source return no results for "Duran Duran - Electric Barbarella" when the lyrics do indeed exist on that site?

Also, the Deezer source is probably in the need of a re-tune, it leads the list in returning inaccurate results and I had to eventually un-check it.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 07, 2022, 07:19:28 PM
Why would the plugin's (1.1.16.9) built-in Musixmatch source return no results for "Duran Duran - Electric Barbarella" when the lyrics do indeed exist on that site?
Can you run the search again. I seem to be getting the lyrics now.
Yesterday I did get to briefly test it and Musixmatch was indeed failing for that song, but trying it out now, it's getting them just fine.

Also, the Deezer source is probably in the need of a re-tune, it leads the list in returning inaccurate results and I had to eventually un-check it.
There is indeed room for improvement.
Looks like I can get it to use its own search function instead of relying on google.
I'll let you know when I get something together (some time tomorrow).

Edit:
Oh and the current plugin's built-in Musixmatch is in every way identical to the one that was used before I took over.
Do you have a working one that's different to that? (yml's for the internal providers are located in the configs folder of the source files)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 08, 2022, 05:36:03 PM
Give this a test run.
I expect it to continue bringing in everything that Google used to, just with a little more precision.

Code
name: Deezer 2.0
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase

    title:
        type: title
        filters: artist
        
config:
    identity url: "https://www.deezer.com/search/{title}+{artist}/track"
    identity pattern: ['"SNG_ID":"(?<identity>.*?)"', 's']
    lyrics url: "https://www.deezer.com/en/track/"
    lyrics pattern: ['<div>Lyrics</div>(?<lyrics>.*?)</div>', 's']
    
post-filters:
- strip_html
- utf8_encode
- entity_decode
- trim
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 08, 2022, 10:20:37 PM
Thanks Mayibongwe for the Deezer 2.0 revised YML!  After limited testing, it seems to be working a lot better, this one has only drawn one inaccurate result so far, something totally different for "Kate Bush - The Sensual World" that all the other souces in the plugin got correct.  It's definitely an improvement though over the first one.  I have re-checked it on the sources list.

The issue with MusixMatch just "went away", as you noticed with the Duran Duran song getting hits there again, so that must have been some temporary thing at the site.

Thanks again for your time on this!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 09, 2022, 12:02:04 PM
This one has only drawn one inaccurate result so far, something totally different for "Kate Bush - The Sensual World" that all the other souces in the plugin got correct.
For some reason, the site is not listing that song as the first search result.
If you replace the identity pattern line with this, it will match that song:

Code
identity pattern: ['"SNG_ID":"(?<identity>\d+)","PRODUCT_TRACK_ID":"\d+","UPLOAD_ID":\d+,"SNG_TITLE":"{title}","ART_ID":"\d+","PROVIDER_ID":"\d+","ART_NAME":"{artist}"', 's']
I don't think you will be getting any incorrect results with this revision.
The only downside to it would be that it will now fail if ever the artist and the song title do not match exactly what is there on the site.
i.e the absence or presence of a single character which should or shouldn't be there will be enough to throw it off.

So, question to people who care enough to comment:
Should I replace the current built-in Deezer (loose searching) with this version (strict searching)?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 09, 2022, 03:09:15 PM
So, question to people who care enough to comment:
Should I replace the current built-in Deezer (loose searching) with this version (strict searching)?
Perhaps this could be an approach?:

Make the plugin use 'strict' versions of the patterns for Deezer (and Genius).
So the plugin itself would be preferring 'quality over quantity'.

But also make 'fuzzy' versions of provider yml's available for Deezer and Genius.

Then a user could set it so that the plugin would use an order like this:

- Genius
- Musixmatch
- Deezer
- Metal Archives
- Genius (fuzzy)
- Deezer (fuzzy)

So effectively it would first try to only use strict matches, but if the first 4 providers failed to produce something, there is a chance it will find the correct lyrics by using the fuzzy versions for Genius and Deezer.

Could this work?

(I'm also mentioning Genius since older versions of the plugin did retrieve some lyrics that the newer (stricter) version doesn't)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 10, 2022, 05:35:57 PM
Sounds good. Thanks hiccup.
The latest build now has the strict version of Deezer built into the plugin.
If anyone wants the 'fuzzy' or 'loose' versions for Genius and Deezer, they can get those from the providers folder included in the plugin download link.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 10, 2022, 05:43:29 PM
Thanks to hiccup for suggesting this approach!
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 11, 2022, 07:53:28 AM
The latest build now has the strict version of Deezer built into the plugin.
If anyone wants the 'fuzzy' or 'loose' versions for Genius and Deezer, they can get those from the providers folder included in the plugin download link.
This is working really well.
The results of the test I published here: https://getmusicbee.com/forum/index.php?topic=36605.msg205223#msg205223 have improved even further.

Probably good to mention that the (very few) songs that got incorrect lyrics were non-English. (Portuguese and Dutch)
And even some Japanese and Turkish songs were matched correctly.

So I am guessing that for most people that have their library consisting of mainly English spoken (sung) music, there will now hardly ever be incorrect lyrics returned by the plugin.

Great work again Mayibongwe!
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 11, 2022, 01:31:53 PM
Great work again Mayibongwe!
A +1 to Mayibongwe for implementing this.
And I'll also throw out a +1 to hiccup for coming up with a great suggestion.
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on October 13, 2022, 04:46:04 AM
Thanks for the update to the plugin.
Could I confirm what the difference is between the fuzzy and strict versions of the providers is? My assumption is the fuzzy versions run through Google and the strict versions don't or is it the query pattern itself thats different?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 13, 2022, 07:17:25 PM
My assumption is the fuzzy versions run through Google and the strict versions don't.
Yes, that's right. The fuzzy versions get their search results from Google, while the strict versions use their own (website) search functions.

For example, there's this artist who's sometimes recognized as Hikaru Utada or Utada Hikaru depending on the particular platform.
On the Deezer website, they have her (them?) as Utada Hikaru while in Genius and a couple of other sites, she's listed as Hikaru Utada.

So in the strict version of Deezer, I can't get any of her lyrics because she's listed as Utada Hikaru while I have her tagged as Hikaru Utada.
But in the fuzzy version, the Deezer provider will succeed because even when fed with either of those names, a google search will know exactly who I'm referring to.

Edit: so in short, the

- strict versions will have a slightly less number of matches than their fuzzy counterparts, but the lyrics returned will be as accurate as possible.
- fuzzy versions will have a slightly higher number of matches, but will consequently return incorrect lyrics at times - given how loose the search technique is.
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on October 15, 2022, 11:31:52 AM
Awesome, for me the fuzzy version of Genius has been picking up what the strict version couldn't and so far correctly. Thanks for clarifying.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 01:10:36 PM
I am noticing a lot of lyrics retrieved using Genius (fuzzy) getting "You might also like" appended at the end of the lyrics.

(https://i.imgur.com/3irS8JA.png)

For the purpose of testing, here some songs that are affected by this:

Khruangbin & Leon Bridges - Mariella
Material - Seven Souls
Minus the Bear - Thanks for the Killer Game of Crisco® Twister
John Martyn - Some People Are Crazy

(it's not something that will show up frequently for most users because in most cases 'Genius' (or MusixMatch or Deezer) will retrieve the lyrics before 'fuzzy' does)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 01:31:43 PM
After a long period of testing I think I can draw up some conclusions for myself.
The plugin is giving fantastic results these days, using this order of providers which I have found to be optimal:

1. Genius
2. MusixMatch
3. Deezer
4. Metal Archives (*)
5. Genius (fuzzy)
6. Deezer (fuzzy)

(*) only useful if you have a lot of (more obscure?) metal

To give some insights in the results I got during testing, here's a small sheet showing some results.

The test set contained around 250 songs that were matched with correct lyrics using Lyrics Reloaded with the above order of providers.
In the sheet the "100%" at the top represents these 250 songs.
The other cells show the success rates for individual providers and some combinations of them.

The test set was slightly larger than 250, of which about a dozen were not matched at all, or received incorrect lyrics.
Incorrect ones that came from Genius are at the bottom of the sheet.
(Deezer (fuzzy) provided many incorrect matches, but those didn't affect the positive outcome because Genius and Musixmatch would catch correct lyrics before Deezer (fuzzy) was queried)

Note that while 'Genius (fuzzy)' has a great success rate by itself, it will also provide a lot of incorrect lyrics when used as the sole provider.
(I saw incorrect matches rates well above 10% in that case)
To avoid that, Genius, MusixMatch and Deezer should always be set to come before Genius (fuzzy).

(https://i.imgur.com/BmfK4OX.png)

Thanks everyone that was and is developing and contributing to Lyrics Reloaded!
Time for me to stop testing now and sit back and enjoy ;-)
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 16, 2022, 01:36:29 PM
Thanks hiccup for another fine analytical observation.

Are you using Deezer, or Deezer 2.0? I'm not sure where 2.0 came from (perhaps a stand-alone YML update in the thread that I've incorporated into the mix) but I seem to be getting good results with it.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 01:42:13 PM
Are you using Deezer, or Deezer 2.0?
Just 'Deezer' as the plugin provides by default. (and then the fuzzy version)
I'm not aware of a 2.0 version. Perhaps it was something that once differentiated between strict and fuzzy versions of Deezer?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 01:47:42 PM
Thanks hiccup for another fine analytical observation.
You're welcome.
One reason for doing the 'epilogue' sheet like this was because I thought that sveakul was curious about individual performances of the options to retrieve lyrics from Genius. And that made me more curious too ;-)
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on October 16, 2022, 03:01:43 PM
I am noticing a lot of lyrics retrieved using Genius (fuzzy) getting "You might also like" appended at the end of the lyrics.

(https://i.imgur.com/3irS8JA.png)

For the purpose of testing, here some songs that are affected by this:

Khruangbin & Leon Bridges - Mariella
Material - Seven Souls
Minus the Bear - Thanks for the Killer Game of Crisco® Twister
John Martyn - Some People Are Crazy

(it's not something that will show up frequently for most users because in most cases 'Genius' (or MusixMatch or Deezer) will retrieve the lyrics before 'fuzzy' does)

I just noticed this myself with Genius (fuzzy) and have an example of it where it's not at the end of the lyrics but just before the last chorus.
(https://i.imgur.com/aD0Tj2j.jpg)
Song: Yelawolf & Caskey - Billy and the Purple Datsun

I'll also add I've had my list of providers setup the same as hiccup's optimal list minus the Metal Archives and finding the results to be well, optimal this way as well.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 16, 2022, 03:55:21 PM
I'm not aware of a 2.0 version. Perhaps it was something that once differentiated between strict and fuzzy versions of Deezer?
https://getmusicbee.com/forum/index.php?topic=36952.msg205197#msg205197
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 04:01:23 PM
I'm not aware of a 2.0 version. Perhaps it was something that once differentiated between strict and fuzzy versions of Deezer?
https://getmusicbee.com/forum/index.php?topic=36952.msg205197#msg205197
I am guessing that is a version similar to what is now included with Lyrics Reloaded to replace a previous more 'fuzzy' version.
But that's just a guess.
Mayibongwe will be able to explain.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 16, 2022, 08:37:33 PM
I am noticing a lot of lyrics retrieved using Genius (fuzzy) getting "You might also like" appended at the end of the lyrics.
Oops, I forgot to include that correction when I made the upload. I had grabbed an old yml that was around before this line had started showing up.
But that's been fixed now - get the updated version from the usual providers folder located in the same download link as the plugin.

As always, I really appreciate the effort and time you've invested in testing and providing feedback on the accuracy rate of these providers.
I've updated the second post of this thread with your new findings and the recommended order of priority.

I am guessing that is a version similar to what is now included with Lyrics Reloaded to replace a previous more 'fuzzy' version.
Yes, it's the same (strict) version which is now built into the plugin.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 16, 2022, 08:41:44 PM
Yes, it's the same (strict) version which is now built into the plugin.
So for my own clarity, Deezer is built in, while Deezer 2.0 is a user-added YML. And they're both the same (strict), correct?

And the new updated download link still says v1.1.17.0. So is what I just downloaded 1.1.17.0, or something newer that has the "you may also like" fix in it?

Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 16, 2022, 08:54:07 PM
So for my own clarity, Deezer is built in, while Deezer 2.0 is a user-added YML. And they're both the same (strict), correct?
And the new updated download link still says v1.1.17.0. So is what I just downloaded 1.1.17.0, or something newer that has the "you may also like" fix in it?
Yes, that's right. The Deezer 2.0 that I had posted earlier in the thread is completely identical to the current (v1.1.17.0) built-in Deezer.
So it's safe to discard the 2.0 Deezer yml as it is no different to the current built-in version.

The "you may also like" fix is a correction to the Genius (fuzzy) version that I had uploaded initially.
So users who are using that fuzzy version will need to get the updated yml from the providers folder if they want that line gone.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 16, 2022, 09:35:22 PM
Thanks for the clarification, Mayibongwe.

Keep up the good work. It's very much appreciated.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 09:40:38 PM
As always, I really appreciate the effort and time you've invested in testing and providing feedback on the accuracy rate of these providers.
No problem. I was just curious to understand how the selection of providers and their order influenced getting good or bad results.

And by now it has been proven to be essential to get that correct.
Other selections or ordering can quickly turn the results of the plugin into less than average.

A thought:

Perhaps something could be done so that the plugin performs optimal out-of-the-box.
Without the user needing to search and learn how to set and tweak things to get optimal results.

But with keeping the current flexibility for advanced users to set things to their personal preference.
What do you think?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 16, 2022, 10:33:55 PM
FWIW just today started seeing ticket promos embedded in the built-in latest Genius source for SOME results--nowhere near as ubiquitous (and now fixed) as the "you may also like" comment though.  Both were about 3 verses from the end.  Two examples:

(Florence and the Machine - What kind of man?)

What kind of man loves like this?
What kind of man?
See Florence + the Machine LiveGet tickets as low as $73

(The Strokes - At the Door)

Sinkin' like a stone
So use me like an oar
See The Strokes LiveGet tickets as low as $170
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 16, 2022, 10:52:12 PM
Those little Genius techs are keeping Mayibongwe on his toes.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 16, 2022, 10:56:16 PM
FWIW just today started seeing ticket promos embedded in the built-in latest Genius source for SOME results
Interesting, and also odd.
I just tried these two songs using only 'Genius', and both got the lyrics retrieved perfectly without any 'promo' text inserted in the lyrics.

So there could be some external factor in play here?
Perhaps something related to regions?
I'm in Europe, and I've noticed before that when I am using a VPN set to a USA server I suddenly am presented with some advertising elements that I usually don't get.
(e.g. on Google's main search page)
Title: Re: LyricsReloaded (Latest)
Post by: frankz on October 17, 2022, 06:20:59 AM
I'm so happy to see this is going well.  Good work Mayibongwe.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 17, 2022, 09:42:37 PM
A thought:

Perhaps something could be done so that the plugin performs optimal out-of-the-box.
Without the user needing to search and learn how to set and tweak things to get optimal results.
Just so I'm getting you right:
Is the proposal that freshly installed versions of this plugin should load the default providers in this order? (Genius, MusixMatch, Deezer, Genius fuzzy, Deezer fuzzy)

Although that is doable from the plugin's side, it looks like recent MusicBee versions insist on sorting the providers by alphabetical order.
In v3.5.8135, the default order is decided by the plugin. But on my current v3.5.8311, it seems to be using alphabetical order.
Perhaps the change came as a result of this: https://getmusicbee.com/forum/index.php?topic=37312.0

If I've understood the proposal correctly, I would need to ask Steven to get MB to revert back to the old sorting behaviour if this is to work.

FWIW just today started seeing ticket promos embedded in the built-in latest Genius source for SOME results.
(Florence and the Machine - What kind of man?)
(The Strokes - At the Door)
Like hiccup, I'm not getting those lines either when testing those two songs.
If they keep showing up throughout the week, do say and we'll see what can be done about it on the weekend.

I'm so happy to see this is going well.  Good work Mayibongwe.
Thanks for letting me in on the good feeling of being a part of something that people seem to enjoy on the daily.
I only hope to carry on the good maintenance that you provided to this project over the years.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 18, 2022, 04:45:29 PM
Just so I'm getting you right:
Is the proposal that freshly installed versions of this plugin should load the default providers in this order? (Genius, MusixMatch, Deezer, Genius fuzzy, Deezer fuzzy)
Yes, exactly.
So after installing the plugin the user would have something like this:

(https://i.imgur.com/Nk0xVH2.png)

The three ticked ones will already give good results while (almost) never retrieving an incorrect lyric for a song.
I would leave it to you if you think both fuzzy providers should also be ticked out-of-the box.
Personally I would, since it improves the rate of matched lyrics substantially. (I experienced an improvement of around 15–20 percent)
But they will also be the ones responsible for (very seldom) retrieving an incorrect lyric for a song.

edit
Another suggestion would be to remove Lyrics Freak from the plugin and make it available as a providers yml.
(I haven't found it to have any added value to the above-mentioned providers)
Perhaps 'Google' could also be removed and made available as a yml.
It also didn't add any value for me.
But maybe other users have a different experience with it?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 18, 2022, 05:42:05 PM
I have gotten good results from Lyrics Freak, and yesterday actually had Google find one none of the others did, although that is definitely an exception.

Because all the sources can be selected or un-selected by the user, as well as moved into any search order, as long as that stays in effect I have no preference what the "out-of-the-box" settings are.  I just don't want to ultimately lose any sources or the above mentioned flexibility.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 18, 2022, 05:48:14 PM
I have gotten good results from Lyrics Freak,
Out of curiosity, could you share some songs that Lyrics Freak matched that the usual suspects didn't?
(it might help to improve on my test set)
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 18, 2022, 06:11:36 PM
I meant that it returns good results for me when I choose to compare lyrics sources using the "Search Next Provider" option, not that it is the only source that provided a hit.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 18, 2022, 06:19:51 PM
I meant that it returns good results for me when I choose to compare lyrics sources using the "Search Next Provider" option, not that it is the only source that provided a hit.
Ah ok. So it's safe to assume that it didn't provide any lyrics that Genius/MusixMatch/Deezer didn't find for you too?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 18, 2022, 07:02:10 PM
and yesterday actually had Google find one none of the others did, although that is definitely an exception.
That's interesting because far as I know both Deezer and Google use LyricFind as their source.
So for my test set that would explain why using Google presented no added value whatsoever when Deezer is already checked.

And surprisingly enough, Google still catches only an almost embarrassing fraction of what Deezer retrieves.
That could probably be improved by tweaking the yml, but as long as Deezer functions well that would probably be a waste of time.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 19, 2022, 04:42:14 PM
I would leave it to you if you think both fuzzy providers should also be ticked out-of-the box.
Personally I would, since it improves the rate of matched lyrics substantially. (I experienced an improvement of around 15–20 percent)
But they will also be the ones responsible for (very seldom) retrieving an incorrect lyric for a song.
That's what I'd prefer too, but that -- leaving them unticked -- would have been out of my control anyway.
MusicBee automatically enables all the providers when a lyrics plugin is first installed or re-enabled (which is preferred behaviour).

Another suggestion would be to remove Lyrics Freak from the plugin and make it available as a providers yml.
Perhaps 'Google' could also be removed and made available as a yml.
Agreed. Those top 3 (Genius, Musixmatch and Deezer) most likely already bring in whatever Google and Lyrics Freak would have brought in.
Google mainly sources its lyrics from MusixMatch and Lyrics Find (which is what Deezer uses as well).
So removing those two as defaults won't do the plugin any harm - they'll still be available for download in the add-on providers folder.

Although that is doable from the plugin's side, it looks like recent MusicBee versions insist on sorting the providers by alphabetical order.
In v3.5.8135, the default order is decided by the plugin. But on my current v3.5.8311, it seems to be using alphabetical order.
If I've understood the proposal correctly, I would need to ask Steven to get MB to revert back to the old sorting behaviour if this is to work.
I've made the necessary changes to the plugin.
All that's left is to make the above request to Steven and the plugin's out-of-the-box providers would be loaded in this order:

- Genius
- MusixMatch
- Deezer
- Genius (fuzzy)
- Deezer (fuzzy)
Title: Re: LyricsReloaded (Latest)
Post by: codingduo on October 19, 2022, 09:44:15 PM
Thanks so much Mayibongwe for reworking this plugin. Works great!
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 20, 2022, 05:37:30 PM
I've made the necessary changes to the plugin.
But you haven't uploaded it yet, right?
B.t.w. the add-ons page says 1.1.17.0, but on the download page it says 1.2.0.0.
But it doesn't seem to have the latest changes.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 21, 2022, 03:23:38 PM
Thanks so much Mayibongwe for reworking this plugin. Works great!
Happy to hear that. The feedback is appreciated.

But you haven't uploaded it yet, right?
B.t.w. the add-ons page says 1.1.17.0, but on the download page it says 1.2.0.0.
But it doesn't seem to have the latest changes.
I had forgotten (again) to update the version number on the download page.
The current plugin version with the change discussed a few posts back is indeed that v1.2.0.0

So users who are using the latest MB v3.5.8328 and the plugin's v1.2 will have this provider arrangement when the plugin is first installed/enabled/added to MusicBee:
Is that not what you're seeing on your side?

(https://i.imgur.com/QKWCFSF.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 21, 2022, 04:26:20 PM
Is that not what you're seeing on your side?
I am seeing this:

(https://i.imgur.com/wT8jw5F.png)

So the order of the plugin providers is o.k., but they are un-ticked while chartlyrics is ticked and on top.
I was assuming the plugin download was not updated with what you mentioned on Okt. 19th  since on Google Drive the file has Okt. 17th as latest modification date.
Strange.
(mb 3.5.8328)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 21, 2022, 06:06:37 PM
As with any lyrics plugin, MusicBee will only automatically enable the providers if it is "recognizing" the plugin as if it were the first time.
Try disabling and re-enabling the plugin, you'll see the providers getting automatically ticked.
So users who would be installing this plugin for the very first time would have those providers auto-ticked and appearing in that order.

I was assuming the plugin download was not updated with what you mentioned on Okt. 19th  since on Google Drive the file has Okt. 17th as latest modification date.
I had already made those suggested changes the day you proposed them (17th).
When I was positive that it could work, that's when I made the release public (19th) and then went on to ask Steven to make the necessary changes on his side.
Title: Re: LyricsReloaded (Latest)
Post by: psydeath on October 21, 2022, 09:20:01 PM
I just got this plugin setup and i can search for lyrics manually and i see them being looked up in the log but i cant seem to get this to work automatically. under tags(2)  I have both auto retrieve and save turn on. Changing tracks results in [DEBUG] Received a notification of type TagsChanging in the log but lyrics are never auto searched.

Any ideas?
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 21, 2022, 09:58:22 PM
Any ideas?
What version of MB are you using? (Help > About) INCLUDE THE LETTER (if any) AFTER THE NUMBER
How was MB installed? (Store, Installer, Portable)
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 21, 2022, 10:07:15 PM
I've noticed an issue now and in the past where if a song title from radio metadata contains a bracketed expression, MusixMatch will not return a hit for it even when it has the lyrics.  Two examples are "Nosferatu - Bombers [b0b]", and   "Wumpscut - Hang Him Higher [aET]."  MusixMatch has these, and the lyrics are returned with Foobar's LSP3 plugin, but they fail to return in LR.  Other plugin sources may be affected as well (but not the old "chartlyrics" for whatever reason).  Can the brackets and their contents be stripped before sending a search?

Two streams that always send titles this way where the behavior can eventually be seen:

http://orion.shoutca.st:8123/stream (http://orion.shoutca.st:8123/stream)

http://69.46.24.226:7242/listen.pls?sid=1 (http://69.46.24.226:7242/listen.pls?sid=1)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 22, 2022, 08:49:39 AM
So users who would be installing this plugin for the very first time would have those providers auto-ticked and appearing in that order.
I now know what I did 'wrong'.
I have the habit of copying plugin dll's into the Plugins folder, and then start MusicBee.
In that case, the providers are there, but they are un-ticked.
After reading the readme, I used 'Add plugin', and now they are indeed all ticked after installation.

I do still have chartlyrics at the top though, and in your screenshot it is at the bottom. Did you do that manually?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 01:14:35 PM
I just got this plugin setup and i can search for lyrics manually and i see them being looked up in the log but i cant seem to get this to work automatically.
under tags(2)  I have both auto retrieve and save turn on.
Changing tracks results in [DEBUG] Received a notification of type TagsChanging in the log but lyrics are never auto searched.
I'm not sure I understand. The lyrics auto-retrieve setting only works for the playing track.

If you have the plugin providers enabled and want MusicBee to use those to find lyrics for tracks without them, then:
- select the relevant tracks, go to Tools > Tagging Tools > Auto-Tag by Track > Update Missing Lyrics...

if that's not what you're asking, then you'll have to elaborate or rephrase your situation.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 01:34:59 PM
I've noticed an issue now and in the past where if a song title from radio metadata contains a bracketed expression, MusixMatch will not return a hit for it even when it has the lyrics. Two examples are "Nosferatu - Bombers [b0b]", and   "Wumpscut - Hang Him Higher [aET]."
Looking at the log, I can see that the square brackets are being removed by the provider.
And that's because the Musixmatch yml has instructions that tell the plugin to do just that.

I took the Musixmatch and Genius (strict) ymls as they were prior to my takeover. I personally do not see the need for all that replacing that's going on in the variables section,
but I didn't want to remove anything as those are contributions from other forum members who probably had good reason for doing that at the time.

If I were to remove all this replacing going on here, you would start to get matches for these kinds of songs (and I doubt it would affect things elsewhere)
But if I'm to do that, I would need to get permission from those who might have comments on this.

Code
variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [regex, "'", ""]
        - [regex, "/", " "]
        - [regex, '\s&(?=\s)', " "]
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '[^\sa-z0-9]\s*', ""]
        - [strip_nonascii, -]
    title:
        type: title
        filters:
        - strip_diacritics
        - lowercase
        - [regex, " '|' |/", " "]
        - [regex, "'", " "]
        - [regex, '\.+|,+|/+|(\W+(?=$))|(^\W+)', ""]
        - [regex, '\s&(?=\s)', " and"]
        - [strip_nonascii, -]
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 01:42:54 PM
I do still have chartlyrics at the top though, and in your screenshot it is at the bottom. Did you do that manually?
Yes, I had unticked and moved it to the bottom manually.
Lyrics Reloaded does not have any control over chartlyrics as it is a MB native lyrics provider - which is enabled and set to appear at the top by default.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 22, 2022, 02:09:53 PM
Lyrics Reloaded does not have any control over chartlyrics as it is a MB native lyrics provider - which is enabled and set to appear at the top by default.
It's not doing much harm either.
While it retrieves only a small percentage of what the other providers will, I think it hardly ever delivers incorrect lyrics.
It also seems to respond very fast, so it won't be slowing things down much.

Still it might be good to add to the how-to that it's advised to move it to the bottom, and that it also safely can be un-ticked?
New users might get confused about what 'chartlyrics' is, and what it's doing there.
Title: Re: LyricsReloaded (Latest)
Post by: psydeath on October 22, 2022, 05:46:27 PM
I just got this plugin setup and i can search for lyrics manually and i see them being looked up in the log but i cant seem to get this to work automatically.
under tags(2)  I have both auto retrieve and save turn on.
Changing tracks results in [DEBUG] Received a notification of type TagsChanging in the log but lyrics are never auto searched.
I'm not sure I understand. The lyrics auto-retrieve setting only works for the playing track.

If you have the plugin providers enabled and want MusicBee to use those to find lyrics for tracks without them, then:
- select the relevant tracks, go to Tools > Tagging Tools > Auto-Tag by Track > Update Missing Lyrics...

if that's not what you're asking, then you'll have to elaborate or rephrase your situation.

Thank you, I was able to figure it out from here. I was unaware there was a lyrics panel on my right side bar (i have to click track information to get a dropdown menu to switch to lyrics so i didnt see it initially)  so i ended up editing the track information to include the <lyrics> tag. So ultimately the lyrics tab needs to be active for it to fetch, which i know now. Thank you for the help. This was just me being unfamiliar with layout changes in musicbee. Customizing layouts is quite complicated until you figure it all out.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 22, 2022, 07:37:23 PM
Looking at the log, I can see that the square brackets are being removed by the provider.
And that's because the Musixmatch yml has instructions that tell the plugin to do just that
When it removes the brackets, are the "garbage characters" inside the brackets also being removed?  Just trying to find an answer as to why these songs are NEVER found by MusixMatch, when the Foobar LSP plugin has no problem returning results from there when they are present on the website.  And don't worry, I CAN take "I don't know, deal" for an answer, it's nothing crtitical.  Why those streams mess with the title field at all is the real issue I guess.  Don't spend any time on it.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 08:22:06 PM
Only the brackets are being removed from what I can see.

Having a second closer look, the reason those two songs you made examples of aren't getting matched is because the Musixmatch yml is using the strictest form of searching.
Meaning that the artist and title fed to it have to match exactly what is there on the site.

The song Bombers by Nosferatu is hosted on this url: https://www.musixmatch.com/lyrics/Nosferatu/Bombers
So it's not working because you are feeding it the title "Bombers [b0b]".
And after the yml has done its filtering to that title, the provider is now searching for "Bombers b0b" which isn't on the site either.

As for the other song, I can't see it from a quick search. Can you provide me with the site link for it?

When I said what I said in the reply of mine that you quoted, I assumed you meant that the songs existed on the site with exactly that title + the bracketed stuff.
So nevermind that reply as it was based on an incorrect assumption.

Anyway, to get these to work would mean an introduction of a fuzzy version of Musixmatch.
I had already put it together: https://getmusicbee.com/forum/index.php?topic=36952.msg203146#msg203146
I'll build it into the plugin just now, since the other two included providers already have fuzzy versions of their own.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 08:25:25 PM
Thank you, I was able to figure it out from here.
No problem. Glad to hear that you've got it figured out now.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 22, 2022, 08:43:30 PM
Only the brackets are being removed from what I can see.

Having a second closer look, the reason those two songs you made examples of aren't getting matched is because the Musixmatch yml is using the strictest form of searching.
Meaning that the artist and title fed to it have to match exactly what is there on the site.

The song Bombers by Nosferatu is hosted on this url: https://www.musixmatch.com/lyrics/Nosferatu/Bombers
So it's not working because you are feeding it the title "Bombers [b0b]".
And after the yml has done its filtering to that title, the provider is now searching for "Bombers b0b" which isn't on the site either.
That explains why a match is not being made.  I was hoping there was a regex expression that could be added to the yml that would strip the brackets, AND everything INSIDE the brackets, from the title search, in which case the match would be made.  Oh well.  I would rather you not just make a "fuzzy" version of MusixMatch instead, because I believe the streams in question may be inserting the bracketed garbage deliberately to foul lyrics searches.  Why make a less-strict version that would affect everything when only two sites (AFAIK) are doing this.  Thanks for looking into it anyway.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 08:50:50 PM
Read this reply just now when I'd already made the inclusion and uploaded the new release.
I'll leave it in as it won't affect the other providers or the matches that would have been made in the strict version.
The only difference would be that there'd now be slightly more incorrect lyrics being brought in.
But users who won't like that outcome can always untick the fuzzy versions.

So I've left the strict version of Musixmatch unaltered.
With the fuzzy version, you'll manage to get hits for those songs containing the extra brackets from radio streams.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 22, 2022, 09:18:44 PM
Can the brackets and their contents be stripped before sending a search?
Reading it all again, I now realize I missed this part of your post. Sorry about that, it was a mistake on my part.
For some reason, in my head, I was thinking that you meant the songs correctly had titles with bracketed content that the provider failed to match bcoz it was removing them.

Anyway, it shouldn't be a problem now as the fuzzy version would make the hit going forward.
Will that do it, or you'd really prefer the accommodation was made in the strict version itself?
But doing that would probably affect users with songs that have genuine square-bracketed content in the titles.

Regardless of whatever we go with, I think there'll always be somebody benefitting from the fuzzy version (given all the tag altering that occurs in the strict version)
So I'm inclined to leave it in, but everyone's opinion matters of course.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 22, 2022, 10:58:41 PM
I'm glad you finally see what I've been asking, I knew something wasn't making it through!  Actually, I personally have NEVER seen a song title that legitimately contained a bracketed expression--plenty of stuff in parentheses, but never in square brackets.  It's a big world and I'm sure somebody somewhere has seen one though.

Just speaking on a "selfish" basis, as long a "strict" version of the MusixMatch yml is being kept around, it would be nice to see THAT one strip bracketed expressions--the brackets and their content--from title searches.  That said, you are the one who has done and is doing all the work, and the user base extends far beyond my humble preferences, I'll leave the decision to you and be perfectly content with whatever that is.
Title: Re: LyricsReloaded (Latest)
Post by: zivbee on October 23, 2022, 09:26:01 PM
is there any way to make the lyrics source ignore commas in artist names? artists like "Muse" work but artists like "Tyler, The Creator" and "Black Country, New Road" are not working because of the comma in their name.
Thanks!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 23, 2022, 11:13:42 PM
What version of the plugin (and MusicBee) are you running?
Trying it out now, 5 of the 6 included providers in v1.2.0.2 are getting results for Tyler, The Creator's I Think.
The one provider that wasn't working with those was Musixmatch - the strict version which I've just updated.

So try re-downloading the plugin and updating to the latest 3.5 MusicBee version.
If it still doesn't work, run a search for one of Tyler's songs, then post the log entries here on this thread.
You can check for the log file in this folder ...\MusicBee\AppData\mb_LyricsReloaded.

@sveakul, the change you requested was also included in the update to the (strict) Musixmatch yml.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 24, 2022, 12:36:29 AM
@sveakul, the change you requested was also included in the update to the (strict) Musixmatch yml.
Mayibongwe, the newest providers list plus the 1.2.0.2 plugin version are yielding the best results ever.  First of all, the new strict MusixMatch where you added the "strip bracketed expressions from title" now performs BEAUTIFULLY on both those streams that use those unfortunate additions.  On one title, ONLY the strict MM found the lyrics and not the fuzzy version (Alison Moyet - That Ole Devil Called Love [qd9]).  The plugin also seems to function more smoothly in general between ALL its sources.  Can't see any room for improvement here, THANK YOU for your efforts!
Title: Re: LyricsReloaded (Latest)
Post by: troglodytes16 on October 27, 2022, 10:17:55 PM
I apologise in advance if this is an obvious question, but I can't find the answer anywhere. How do I configure the plugin?
MusicBee only gives me the option to disable or uninstall it.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 27, 2022, 10:25:43 PM
Preferences > Tags (2) > auto-tagging > lyrics
Title: Re: LyricsReloaded (Latest)
Post by: troglodytes16 on October 27, 2022, 10:30:07 PM
Thank you for your reply. But I checked that before and I can't edit anything except the order. I want to add and remove lyric searching sites
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 27, 2022, 10:40:51 PM
Only the providers that are ticked will be checked. Unticked will be unchecked. You can also re-order the providers so that they are searched in the order you wish. Set that up by clicking the three dots to the right > select a provider > use the up or down arrow.
Title: Re: LyricsReloaded (Latest)
Post by: troglodytes16 on October 27, 2022, 10:48:21 PM
Thank you, I guess I can't add a search that isn't there already. I thought that would be possible.
I also wanted to replace the right-click option 'Google Search' with a different search engine, but I don't think there's a plugin for that.
Cheers
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 27, 2022, 10:51:30 PM
But I checked that before and I can't edit anything except the order. I want to add and remove lyric searching sites
If you're on the latest plugin version (v1.2.0.2):

- the six providers that are showing up in there are plugin defaults. You can't "remove" them, you can only uncheck them as phred says.
- to add your own lyric sites, make a file for each with a .yml extension in this folder ...MusicBee\AppData\mb_LyricsReloaded\providers.

Further instructions and tutorials on how to make such files can be found on links located on the second post of this thread.

Edit:

I also wanted to replace the right-click option 'Google Search' with a different search engine, but I don't think there's a plugin for that.
Yep, users do not have any control over that. So that won't be possible in any way.
The closest you can get is by setting up your preferred weblinks in Preferences > Internet.
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on October 29, 2022, 06:49:29 PM
Hello there,

I'm new here and kinda a beginner in the "scripting" zone and affiliate :-)

I'm trying to edit the Google.yml file located in my ..\AppData\mb_LyricsReloaded\providers directory to reflect the way I've tagged all the bands names in my collection.

I'm using :
"BandName (Country)" and thus when I launch a research for the lyrics it ended up in a bad way in Google :-)

So I've added a regex in the .YML file but it didn't change anything.
It looks like that :

Code
name: Google
loader: static

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex,'[(][a-zA-Z-\s]+[)]',""]

    title:
        type: title
        filters: artist

config:
    url: "https://www.google.com/search?q={title}+{artist}+lyrics"
    pattern: ['class="BNeawe tAd8D AP7Wnd">(?<lyrics>.*)Source:', 's']
    
post-filters:
- [regex,'.*?<div class="BNeawe tAd8D AP7Wnd">','']
- strip_html
- utf8_encode
- entity_decode
- trim

Can someone show me the path ?

Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 29, 2022, 10:19:47 PM
Hello Gauld, welcome to the forum.
Try this one out:

Code
[regex, '(.*)\s\(.*', '$1']
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on October 29, 2022, 11:06:52 PM
Hello Gauld, welcome to the forum.
Try this one out:

Code
[regex, '(.*)\s\(.*', '$1']

Hello Mayibongwe, thanks for the fast answer and great work with this plug in !

I modified the google.yml file as you stated :

Code
variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '(.*)\s\(.*', '$1']

But I  still have a "no lyrics found"

(https://i.postimg.cc/N0yHg3hZ/image.png)

And even when I hit the "google research" option :

(https://i.postimg.cc/5yjcGSQ5/image.png)

When I check the "metal archives" box I does not work either. But when I strip the (Usa) above it works great in Google :

(https://i.postimg.cc/Kj9TcxzS/image.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 30, 2022, 12:23:18 AM
But I  still have a "no lyrics found"
To me, the way that you are using the 'artist' tag is not only incorrect, but it's also just asking for problems.
It might get solved for using this plugin by bending backwards and tweaking regexes in yml's, but even then it's very likely to pose various other problems further down the road.
If the 'country' of a band is important to you, why not just use an appropriate tag for it?
It's pretty much essential for music managers such as MusicBee to make sure that you are using tags for what they are designed and intended for.

And the same goes for plugins. (such as LyricsReloaded and many others)
Bad input ≥ bad output.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 30, 2022, 03:16:32 AM
@Mayibongwe-

I unticked a couple of providers, updated, and saved but when I go back to the providers the just unticked providers have gone down to the bottom of the list - at the end of all the other unticked providers. Is there any way you can keep providers persistent? If I untick, update, and save and then go back, I'd like the provider to still be in the same order they were before I unticked them.

I got 15 our of 15 incorrect lyrics returned from 'fuzzy' providers so I disabled them and tried again. This time I got no lyrics returned. But when I went back to enable the just disabled fuzzy ones, they were at the bottom of the list and I had to move them back up to where I wanted them. I'm not concerned by the return of no lyrics since they were some very obscure songs. What -did- surprise me was that on the first run, I got lyrics for all the tracks. Which of course were all from fuzzy providers and were incorrect. I then had to go and delete the lyrics. So here's a case where I'd rather have the fuzzies disabled and get nothing. But then I have to reorder them once re-enabled.

Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on October 30, 2022, 01:26:44 PM
But I  still have a "no lyrics found"
To me, the way that you are using the 'artist' tag is not only incorrect, but it's also just asking for problems.
It might get solved for using this plugin by bending backwards and tweaking regexes in yml's, but even then it's very likely to pose various other problems further down the road.
If the 'country' of a band is important to you, why not just use an appropriate tag for it?
It's pretty much essential for music managers such as MusicBee to make sure that you are using tags for what they are designed and intended for.

And the same goes for plugins. (such as LyricsReloaded and many others)
Bad input ≥ bad output.

I get your point, and it's a good one, but it's an old habbit back in the day I was tape trading...
Plus, indeed, I need to differenciate bands like in the screenshot below :
(https://i.postimg.cc/fL3RhtLY/image.png)

I'll consider adding a custom country tag as you mentionned. Meanwhile, if someone has a solution it'll be cool to know.

Thanks !
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 30, 2022, 02:21:10 PM
Meanwhile, if someone has a solution it'll be cool to know.
When I do a test with that song including having the country in brackets, both Genius and Deezer find the lyrics without a problem.
(which is not surprising, since google shows that it got the lyrics from LyricFind, which is what Deezer is using also)

So why not use Genius and Deezer and forget about Google?
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on October 30, 2022, 06:19:49 PM
So why not use Genius and Deezer and forget about Google?

It works great with the band you tried but half of the time, in my case, both Deezer en Genius return nothing (in "normal" mode) or wrong lyrics (with the "fuzzy" mode). So I unticked all the fuzzy options and let only the other providers.

(https://i.postimg.cc/7Y5Wt5vg/image.png)

I found another track that causes me some problems (but proves again you were right  ;)  ).

If I use my old way of tagging it does not work :
(https://i.postimg.cc/QMK7Rr8Y/image.png)

If I strip the country name and the brackets, it works great :
(https://i.postimg.cc/J4yR37PF/image.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 30, 2022, 07:24:04 PM
If I strip the country name and the brackets, it works great :
I tried that track (without country) using the exact same providers your screenshot shows, and I don't get lyrics retrieved at all.
(so google didn't get it either)
Do you know which provider retrieved it for you?
Is it one that is below the visible ones in your screenshot?
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on October 30, 2022, 07:57:29 PM
I tried that track (without country) using the exact same providers your screenshot shows, and I don't get lyrics retrieved at all.
(so google didn't get it either)
Do you know which provider retrieved it for you?
Is it one that is below the visible ones in your screenshot?

It's the first one, Metal Archives :
(https://i.postimg.cc/W4m0TFfF/image.png)

I've just redone the test :
Sodom (Ger) => Does not retreive any lyrics
Sodom => Works fine in this case.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on October 30, 2022, 09:03:38 PM
Sodom (Ger) => Does not retreive any lyrics
Sodom => Works fine in this case.
I now see that my previous attempt with Metal Archives failed because they seem to have my IP on a blacklist.
(my reward for doing lots of testing a couple of weeks ago)

I tried again (using a VPN), and I think I got it to work with band names + country.

Code
name: Metal Archives
loader: search

variables:
    artist:
        type: artist
        filters:
        - [regex, '^(\w*\s?\w+)*(.*)', '$1']
config:
    identity url: "(?<identity>https://www.metal-archives.com/albums/{artist}/.*?)[\"&]"
    identity pattern: ['\n{title}.*?\n.*?id="song(?<identity>.*?)"', 'is']
    lyrics url: "https://www.metal-archives.com/release/ajax-view-lyrics/id/"
    lyrics pattern: ['(?<lyrics>.*)', 's']
   
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim

Note that I removed the original regex line and replaced it with a new one.
The original line should probably not be removed, but I don't know if you can have two regex lines in a yml, or that they could perhaps be combined into one somehow.
Hopefully somebody more experienced can clear that up.
So it's best to consider my attempt as a beta test that probably needs to be refined and improved by somebody who has better understanding of this stuff.

P.S.
So in hindsight, this was never about the Google yml?
 
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on October 31, 2022, 12:05:22 AM
Note that I removed the original regex line and replaced it with a new one.
The original line should probably not be removed, but I don't know if you can have two regex lines in a yml, or that they could perhaps be combined into one somehow.
Hopefully somebody more experienced can clear that up.
So it's best to consider my attempt as a beta test that probably needs to be refined and improved by somebody who has better understanding of this stuff.

Thanks man it works !
I started tu use a free custom tag renamed as "Country" to use as a "group by" option for now. I'll see if I start editing my whole playlist and get rid of the actual Band (Country) stuff.

Quote
P.S.
So in hindsight, this was never about the Google yml?

Yes, in a way, when I had a "no lyrics found " I started using the right click option "Google search" to copy and paste the lyrics in MusicBee and saved it in the .MP3 file. So I thought I needed to update the Google.yml file, but maybe I'm wrong and this Google search option is a built in stuff in MusicBee and have nothing to do with this plugin...
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 01, 2022, 12:21:06 PM
Thanks man it works !
Great.
Be sure to use it only on Artist (Country), because it won't work well on Artists that don't have these brackets.

Quote
I started tu use a free custom tag renamed as "Country" to use as a "group by" option for now. I'll see if I start editing my whole playlist and get rid of the actual Band (Country) stuff.
And/or what you can do, create a virtual tag like:

Artist (c)
<Artist>$IsNull(<Country>,," ("<Country>")")

Then you could use that one for displaying, filtering, playlists etc., while plugins such as LyricsReloaded, but also things like MusicBee's artwork retrieval will still use the regular Artist tag to get good results.

P.S.
This formula assumes you populate the Country tag like: Ger, and not like (Ger)
Title: Re: LyricsReloaded (Latest)
Post by: gaiastar on November 02, 2022, 05:02:09 PM
Hi
Really love your plugin ♫
may I ask a  question ?
can't download and save synch lyrics because it's a musicbee limit or the plugin limit?
thanks
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on November 02, 2022, 05:43:39 PM
Hi
Really love your plugin ♫
may I ask a  question ?
can't download and save synch lyrics because it's a musicbee limit or the plugin limit?
thanks
The source has to be sending synced lyrics--if it does, MusicBee supports the display.

https://getmusicbee.com/forum/index.php?topic=35083.0 (https://getmusicbee.com/forum/index.php?topic=35083.0)

https://getmusicbee.com/forum/index.php?topic=24313.0 (https://getmusicbee.com/forum/index.php?topic=24313.0)

https://getmusicbee.com/addons/plugins/473/qq-lyrics/ (https://getmusicbee.com/addons/plugins/473/qq-lyrics/)
Title: Re: LyricsReloaded (Latest)
Post by: Gauld on November 03, 2022, 07:06:35 PM
And/or what you can do, create a virtual tag like:

Artist (c)
<Artist>$IsNull(<Country>,," ("<Country>")")

Then you could use that one for displaying, filtering, playlists etc., while plugins such as LyricsReloaded, but also things like MusicBee's artwork retrieval will still use the regular Artist tag to get good results.

P.S.
This formula assumes you populate the Country tag like: Ger, and not like (Ger)

Thanks again, I've created a virtual tag like you said, it works like a charm !
I've also added a "town" tag to try to get rid off this kind of problems :
(https://i.postimg.cc/VvdZTpSM/image.png)

But for now I'm still testing the best way to display the result.
(https://i.postimg.cc/7Zm7G6tH/image.png)
(https://i.postimg.cc/SRfRBTwS/image.png)

But this is no more a LyricsReloaded plug-in issue but more of a general MusicBee topic I guess.
Thank you for your time.
Title: Re: LyricsReloaded (Latest)
Post by: phred on November 03, 2022, 10:39:18 PM
Just recently Letras de musicas has been dumping some crap into the beginning and end of the returned lyrics.  

There are fourteen tracks on this album (We Never Stop by Candy Dulfer.) One track returned no lyrics. One track returned correct lyrics from Google. The rest returned what is shown below. I'm not really surprised by no lyrics as it's a fairly new album released late October.

Quote
Source: Letras de músicas

Aprenda idiomas com</p>
 <p class="learnEnglishWith-songName">Letras Academy</p>
 </div>
 </a>
 
 </section>
 
<div id="an-above-above" class="an-pub an-above is-on above" ></div>
 <div class="cnt-letra p402_premium"> <div class="an-stick stick-left"><div id="pub_38" data-refresh="15" data-intersectionratio="0.40" class="an-stick-trad with-refresh an-pub" style="display:block;"><div id="pub_38_ad_refresh"><div id="pub_38_ad"></div></div></div></div> <div class="an-stick stick-right"><div id="pub_39" data-refresh="15" data-intersectionratio="0.40" class="an-stick-trad with-refresh an-pub" style="display:block;"><div id="pub_39_ad_refresh"><div id="pub_39_ad"></div></div></div></div> <p>Move a little to the middle baby
Please don't stop
Shake it down to the lower ground,
Let it drop
Bring it back where I like it baby
You know how I like it baby
You know how I like it baby X 2

You know how I like it baby
You know how I like it baby
Just like that baby, just like that X 2

Kisses in the morning ... baby please don't stop
Your ... body is incredible high
Wanna taste you in my mouth let me kiss you honey
You know how I like it baby
You know how I like it baby X 2

You know how I like it baby
You know how I like it baby
Just like that baby, just like that X2

Now what am I gonna do, cause I can't take my eyes off you
Take my mind off you, keep my hands off you
You're breaking me, making me loose my cool X 2

You know how I like it baby
You know how I like it baby
Just like that baby, just like that X2

Yeah, uh, right there, come on baby
Uh, come on, oh, oh, oh, huuu
Yeah, can you feel it?
Uh, that's how I like it baby
Here we go now

You know how I like it baby
You know how I like it baby
Just like that baby, just like that X2
Please don't stop,
Keep it going and you don't stop
You know how I like it baby
Please don't stop,
Let it drop
Give me more, give me more

Now what am I gonna do, cause I can't take my eyes off you
Take my mind off you, keep my hands off you
You're breaking me, making me loose my cool.</p> </div> <div class="letra-menu"> <a href="/candy-dulfer/please-dont-stop/enviar_traducao.html" class="lyric_event lm_lang lm_lang_pt js-send-translation" data-tt='Tradução' data-viaplayer="true" data-ct-action="Nav Enviar Traducao" data-ct-label="Menu lateral (letra)"><i></i>Enviar Tradução</a> <a href="#" class="lyric_event lm_add" data-action="Adicionar à playlist" data-namespace="Menu lateral"><i></i>Adicionar à playlist</a> <b class="lm_siz"><i></i>Tamanho <span> <button class="lyric_event lm_siz_l" data-action="Reduzir Tamanho" data-namespace="Menu lateral">A</button> <button class="lyric_event lm_siz_r" data-action="Restaurar Tamanho" data-namespace="Menu lateral">Restaurar</button> <button class="lyric_event lm_siz_m" data-action="Aumentar Tamanho" data-namespace="Menu lateral">A</button> </span> </b> <a href="https://www.cifraclub.com.br/candy-dulfer/" target="_blank" rel="noopener" class="lyric_event lm_cif" data-action="Nav Cifra" data-namespace="Menu lateral"><i></i>Cifra</a> <a rel="nofollow noopener" target="_blank" href="/candy-dulfer/please-dont-stop/please-dont-stop-print.html" class="lyric_event lm_pri" data-action="Imprimir" data-namespace="Menu lateral"><i></i>Imprimir</a> <a rel="nofollow" href="/contribuicoes/enviar_correcao/candy-dulfer/please-dont-stop/" class="lm_edi" data-ct-action="Nav Enviar Correcao" data-ct-label="Menu lateral (letra)"><i></i>Corrigir</a> <script type="text/template" class="addToPlaylistTemplate -lyricPage"> <div data-songid="" class="addToPlaylist modal -lyricPage"> <div class="addToPlaylist-body"> <ul class="js-playlist-list-create"> <li class="addToPlaylist-new"> <i></i>Criar playlist <div class="addToPlaylist-create"> <input type="text" class="addToPlaylist-input"> <span class="addToPlaylist-counter">0/100</span> <button class="js-create-playlist bt-x">Criar</button> </div> </li> </ul> <ul class="playlist-lists"></ul> </div> </div> </script> </div> <div class="an-lyric-side"> <div id="pub_3" data-refresh="15" data-intersectionratio="0.40" class="an-letra with-refresh an-pub" style="display:block;"><div id="pub_3_ad_refresh"><div id="pub_3_ad"></div></div></div> <div id="pub_27" data-refresh="15" data-intersectionratio="0.40" class="an-letra with-refresh an-pub" style="display:block;"><div id="pub_27_ad_refresh"><div id="pub_27_ad"></div></div></div> </div>
<div id="an-above-below" class="an-pub an-above is-on below" style="display:none;"></div>
 </div> <div class="letra-info g-sp"> <div class="letra-info_comp"> Composição: Candy Dulfer / Chance Howard / Ulco Bed. <a class="contrib-link" rel="nofollow" href="/contribuicoes/enviar_correcao/candy-dulfer/please-dont-stop/compositor/" data-ct-action="Click Corrigir compositor" data-ct-label="Letra">Essa informação está errada? Nos avise.</a> </div> <div class="letra-info_user"> Enviada por <a class="contrib-link" href="/membros/3677878/" data-ct-action="Click User que enviou letra" data-ct-label="Letra">Agnes</a>. <a class="contrib-link letra-info_contrib" rel="nofollow" href="/contribuicoes/enviar_correcao/candy-dulfer/please-dont-stop/" data-mct-action="Click Link Enviar Revisão" data-mct-label="Letra">Viu algum erro? Envie uma revisão.</a> </div> </div> <div id="pub_5" data-refresh="15" data-intersectionratio="0.40" class="an-full g-1 g-mb with-refresh an-pub" style="display:block;"><div id="pub_5_ad_refresh"><div id="pub_5_ad"></div></div></div> </article> <hr class="hr" /> <div class="lyricDictionary g-pr"> <a href="/academy/?utm_source=letras.mus.br&utm_medium=dicionario&utm_id=landing_page&utm_content=link_letra" data-forward="true" class="lyricDictionary-logo academyLogo">Letras Academy</a> <h2 class="h3">Dicionário de pronúncia</h2> <div class="dictionaryTags "> <ul> <li><a href="/academy/dicionario/before/">Before</a></li> <li><a href="/academy/dicionario/would/">Would</a></li> <li><a href="/academy/dicionario/heavan/">Heavan</a></li> <li><a href="/academy/dicionario/ever/">Ever</a></li> <li><a href="/academy/dicionario/wont-2/">Won't</a></li> </ul> </div> <a class="cnt-more" href="/academy/dicionario/">Ver mais palavras</a> </div> <hr class="hr" /> <div class="latestNews g-1 g-mb g-pr cnt--dummy js-ajax-include" data-src="/candy-dulfer/latest_news.html?bottom=1"> <h3 class="h3">Posts relacionados</h3> <div class="latestNews-inner g-fix"> <div class="cnt g-1-5 cnt--clamp4"> <em><img class="lastNews-image" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="191" height="107" alt=""></em> <b></b> </div> <div class="cnt g-1-5 cnt--clamp4"> <em><img class="lastNews-image" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="191" height="107" alt=""></em> <b></b> </div> <div class="cnt g-1-5 cnt--clamp4"> <em><img class="lastNews-image" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="191" height="107" alt=""></em> <b></b> </div> <div class="cnt g-1-5 cnt--clamp4"> <em><img class="lastNews-image" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="191" height="107" alt=""></em> <b></b> </div> <div class="cnt g-1-5 cnt--clamp4"> <em><img class="lastNews-image" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="191" height="107" alt=""></em> <b></b> </div> </div> <a class="cnt-more" href="/blog/">Ver mais no Blog</a> </div> <div id="comments" class="comments g-fix"> <div class="g-2-3"> <div class="js-fb-comments"></div> </div> <div class="g-1-3"> <div id="pub_11" data-refresh="15" data-intersectionratio="0.40" class=" with-refresh an-pub" style="display:block;"><div id="pub_11_ad_refresh"><div id="pub_11_ad"></div></div></div> </div> </div> </div> </div> <div id="cnt_footer"> <div id="pub_9" data-refresh="15" data-intersectionratio="0.40" class="an-full g-1 g-mb with-refresh an-pub" style="display:block;"><div id="pub_9_ad_refresh"><div id="pub_9_ad"></div></div></div> <hr class="hr" /> <div class="g-1"> <div class="artista-top g-sp g-pr"> <script type="text/template" class="addToPlaylistTemplate -songlistPage"> <div data-songid="" class="addToPlaylist modal -songlistPage"> <div class="addToPlaylist-header"> Adicionar à playlist <a class="bt-close -no-space" href="#" rel="nofollow" id="js-close-a"></a> </div> <div class="addToPlaylist-body"> <ul class="js-playlist-list-create"> <li class="addToPlaylist-new"> <i></i>Criar playlist <div class="addToPlaylist-create"> <input type="text" class="addToPlaylist-input"> <span class="addToPlaylist-counter">0/100</span> <button class="js-create-playlist bt-x">Criar</button> </div> </li> </ul> <ul class="playlist-lists"></ul> </div> </div> </script> <div class="modal_overlay"></div> <script id="cnt-list-options-modal" type="text/template"> <div class="cnt-list-options-modal -spaced"> <ol class="cnt-list-options-list"> <li> <button class="js-add-to-playlist cnt-list-option -bt" href="#">Adicionar à playlist</button> </li> </ol> <ol class="cnt-list-options-list -share"> <li class="cnt-list-option"> <div> <span>Compartilhar</span> <div class="sh-container"> <div class="sh js-share-playlist"> <a class="sh-bt sh-f" rel="nofollow" data-nofollow="true" title="Facebook" href="http://www.facebook.com/sharer.php?u=<%= shareurl %>&quote=<%- sharetext %>">Facebook</a> <a class="sh-bt sh-t" rel="nofollow" data-nofollow="true" title="Twitter" href="http://twitter.com/share?url=<%= shareurl %>&related=letras&text=%E2%99%AB%20<%- sharetext %>%20no%20@letras">Twitter</a> </div> <div title="Copiar link" data-share="<%= shareurl %>" class="sh-link">Copiar link</div> </div> </div> </li> </ol> </div> </script> <h2 class="h3"><a href="/candy-dulfer/">Mais ouvidas de Candy Dulfer</a></h2> <i class="h-sep"></i> <div class="list-container"> <div class="list-overlay"></div> <ol class="cnt-list cnt-list--num -flex-col-2 js-song-list"> <li class="cnt-list-row -song" data-id="2082982" data-dns="candy-dulfer" data-url="please-dont-stop" data-artist="Candy Dulfer" data-name="Please Don't Stop" data-shareurl="https://www.letras.mus.br/candy-dulfer/please-dont-stop/" data-sharetext="Please Don't Stop de Candy Dulfer" > <a href="/candy-dulfer/please-dont-stop/" title="Please Don't Stop"><span>Please Don't Stop</span></a> <div class="song-options"></div> </li> </ol> </div> </div> </div> <div id="pub_24" data-refresh="15" data-intersectionratio="0.40" class="an-full g-1 g-mb with-refresh an-pub" style="display:block;"><div id="pub_24_ad_refresh"><div id="pub_24_ad"></div></div></div> <hr class="hr" /> <div class="playlists-relacionadas g-1 g-sp g-pr cnt--dummy js-ajax-include" data-src="/candy-dulfer/playlists.html?bottom=1" data-lazy="true"> <h3 class="h3">Playlists relacionadas</h3> <i class="h-sep"></i> <div class="g-fix"> <div class="cnt cnt--pl cnt--fb g-1-4"> <i><img src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="155" height="87" alt=""/></i> <b></b> <span></span> </div> <div class="cnt cnt--pl cnt--fb g-1-4"> <i><img src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="155" height="87" alt=""/></i> <b></b> <span></span> </div> <div class="cnt cnt--pl cnt--fb g-1-4"> <i><img src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="155" height="87" alt=""/></i> <b></b> <span></span> </div> <div class="cnt cnt--pl cnt--fb g-1-4"> <i><img src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" width="155" height="87" alt=""/></i> <b></b> <span></span> </div> </div> <a class="cnt-more" href="/playlists/">Ver mais playlists</a> </div> <hr class="hr" /> <div id="js-cnt-tops" data-page="lyric"> <div class="home-tops g-1 g-mb g-pr"> <div class="h1"> <a href="/mais-acessadas/">Mais acessados </a> </div> <div class="cnt-filter"> <div class="cnt-filter_tabs"> <a class="js-tab-link on" data-genre="0" data-slug="" href="/mais-acessadas/">Todos</a> <a class="js-tab-link " data-genre="666" data-slug="rock" href="/mais-acessadas/rock/">Rock</a> <a class="js-tab-link " data-genre="30" data-slug="gospelreligioso" href="/mais-acessadas/gospelreligioso/">Gospel</a> <a class="js-tab-link " data-genre="9" data-slug="sertanejo" href="/mais-acessadas/sertanejo/">Sertanejo</a> <div class="cnt-filter_more js-cnt-filter-more-genre"> <button class="js-filter-more-genre " data-default="Mais" data-genre="0" data-slug="">Mais</button> <div class="cnt-filter_drop modal js-cnt-filter_drop-genre" data-placeholder="Digite o estilo musical" data-options='[{"ID":1,"Slug":"alternativo","Label":"Alternativo"},{"ID":7,"Slug":"axe","Label":"Axé"},{"ID":38,"Slug":"blues","Label":"Blues"},{"ID":78,"Slug":"bolero","Label":"Bolero"},{"ID":39,"Slug":"bossa-nova","Label":"Bossa Nova"},{"ID":69,"Slug":"brega","Label":"Brega"},{"ID":15,"Slug":"classico","Label":"Clássico"},{"ID":42,"Slug":"country","Label":"Country"},{"ID":86,"Slug":"cuarteto","Label":"Cuarteto"},{"ID":75,"Slug":"cumbia","Label":"Cumbia"},{"ID":23,"Slug":"dance","Label":"Dance"},{"ID":50,"Slug":"disco","Label":"Disco"},{"ID":55,"Slug":"eletronica","Label":"Eletrônica"},{"ID":63,"Slug":"emocore","Label":"Emocore"},{"ID":27,"Slug":"fado","Label":"Fado"},{"ID":35,"Slug":"folk","Label":"Folk"},{"ID":8,"Slug":"forro","Label":"Forró"},{"ID":22,"Slug":"funk","Label":"Funk"},{"ID":58,"Slug":"funk-internacional","Label":"Funk Internacional"},{"ID":30,"Slug":"gospelreligioso","Label":"Gospel/Religioso"},{"ID":21,"Slug":"grunge","Label":"Grunge"},{"ID":71,"Slug":"guarania","Label":"Guarânia"},{"ID":53,"Slug":"gotico","Label":"Gótico"},{"ID":37,"Slug":"hard-rock","Label":"Hard Rock"},{"ID":18,"Slug":"hardcore","Label":"Hardcore"},{"ID":36,"Slug":"heavy-metal","Label":"Heavy Metal"},{"ID":64,"Slug":"hip-hop-rap","Label":"Hip Hop/Rap"},{"ID":66,"Slug":"house","Label":"House"},{"ID":14,"Slug":"indie","Label":"Indie"},{"ID":20,"Slug":"industrial","Label":"Industrial"},{"ID":54,"Slug":"infantil","Label":"Infantil"},{"ID":59,"Slug":"instrumental","Label":"Instrumental"},{"ID":31,"Slug":"j-popj-rock","Label":"J-Pop/J-Rock"},{"ID":48,"Slug":"jazz","Label":"Jazz"},{"ID":11,"Slug":"jovem-guarda","Label":"Jovem Guarda"},{"ID":26,"Slug":"k-pop","Label":"K-Pop"},{"ID":5,"Slug":"mpb","Label":"MPB"},{"ID":74,"Slug":"mambo","Label":"Mambo"},{"ID":70,"Slug":"marchas-hinos","Label":"Marchas/Hinos"},{"ID":76,"Slug":"mariachi","Label":"Mariachi"},{"ID":81,"Slug":"merengue","Label":"Merengue"},{"ID":85,"Slug":"musica-andina","Label":"Música andina"},{"ID":62,"Slug":"new-age","Label":"New Age"},{"ID":65,"Slug":"new-wave","Label":"New Wave"},{"ID":16,"Slug":"pagode","Label":"Pagode"},{"ID":4,"Slug":"pop","Label":"Pop"},{"ID":2,"Slug":"poprock","Label":"Pop Rock"},{"ID":45,"Slug":"post-rock","Label":"Post-Rock"},{"ID":25,"Slug":"power-pop","Label":"Power-Pop"},{"ID":19,"Slug":"psicodelia","Label":"Psicodelia"},{"ID":17,"Slug":"punk-rock","Label":"Punk Rock"},{"ID":61,"Slug":"rb","Label":"R&B"},{"ID":77,"Slug":"ranchera","Label":"Ranchera"},{"ID":13,"Slug":"reggae","Label":"Reggae"},{"ID":47,"Slug":"reggaeton","Label":"Reggaeton"},{"ID":29,"Slug":"regional","Label":"Regional"},{"ID":666,"Slug":"rock","Label":"Rock"},{"ID":46,"Slug":"progressivo","Label":"Rock Progressivo"},{"ID":3,"Slug":"rock-roll","Label":"Rock and Roll"},{"ID":40,"Slug":"rockabilly","Label":"Rockabilly"},{"ID":6,"Slug":"romantico","Label":"Romântico"},{"ID":72,"Slug":"salsa","Label":"Salsa"},{"ID":10,"Slug":"samba","Label":"Samba"},{"ID":60,"Slug":"samba-enredo","Label":"Samba Enredo"},{"ID":9,"Slug":"sertanejo","Label":"Sertanejo"},{"ID":68,"Slug":"ska","Label":"Ska"},{"ID":52,"Slug":"soft-rock","Label":"Soft Rock"},{"ID":12,"Slug":"soul","Label":"Soul"},{"ID":41,"Slug":"surf-music","Label":"Surf Music"},{"ID":73,"Slug":"tango","Label":"Tango"},{"ID":24,"Slug":"tecnopop","Label":"Tecnopop"},{"ID":84,"Slug":"trova","Label":"Trova"},{"ID":51,"Slug":"velha-guarda","Label":"Velha Guarda"},{"ID":34,"Slug":"world-music","Label":"World Music"},{"ID":83,"Slug":"zamba","Label":"Zamba"},{"ID":80,"Slug":"zouk","Label":"Zouk"}]'></div> </div> </div> </div> <div class="g-fix g-mb js-cnt-target"> <div class="top-mus g-2-3"> <ol class="top-list_mus cnt-list--col2"> <li><a href="/hinos-de-paises/46368/" title="Hino Nacional Brasileiro"> <b>Hino Nacional Brasileiro</b> <span>Hinos de Países</span> </a></li> <li><a href="/sam-smith/unholy-feat-kim-petras/" title="Unholy (feat. Kim Petras)"> <b>Unholy (feat. Kim Petras)</b> <span>Sam Smith</span> </a></li> <li><a href="/maria-marcal/deserto/" title="Deserto"> <b>Deserto</b> <span>Maria Marçal</span> </a></li> <li><a href="/rihanna/lift-me-up/" title="Lift Me Up"> <b>Lift Me Up</b> <span>Rihanna</span> </a></li> <li><a href="/jingles/sem-medo-de-ser-feliz-lula-2022/" title="Sem Medo de Ser Feliz (Lula 2022)"> <b>Sem Medo de Ser Feliz (Lula 2022)</b> <span>Jingles</span> </a></li> <li><a href="/taylor-swift/anti-hero/" title="Anti-Hero"> <b>Anti-Hero</b> <span>Taylor Swift</span> </a></li> <li><a href="/rosa-linn/snap/" title="Snap"> <b>Snap</b> <span>Rosa Linn</span> </a></li> <li><a href="/chris-brown/under-the-influence/" title="Under The Influence"> <b>Under The Influence</b> <span>Chris Brown</span> </a></li> <li><a href="/arctic-monkeys/i-wanna-be-yours/" title="I Wanna Be Yours"> <b>I Wanna Be Yours</b> <span>Arctic Monkeys</span> </a></li> <li><a href="/harpa-crista/853769/" title="Porque Ele Vive"> <b>Porque Ele Vive</b> <span>Harpa Cristã</span> </a></li> </ol> </div> <div class="top-art g-1-3"> <ol class="top-list_art"> <li><a href="/harpa-crista/"> <img data-original="https://akamai.sscdn.co/uploadfile/letras/fotos/3/0/8/3/3083b1621a661eee9c2eb4ef9d03daa5-tb.jpg" data-srcset="https://akamai.sscdn.co/uploadfile/letras/fotos/3/0/8/3/3083b1621a661eee9c2eb4ef9d03daa5-tb.jpg 1x, https://akamai.sscdn.co/uploadfile/letras/fotos/3/0/8/3/3083b1621a661eee9c2eb4ef9d03daa5-tb4.jpg 2x" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" alt="" width="76" height="76" /> <b>Harpa Cristã</b> </a></li> <li><a href="/taylor-swift/"> <img data-original="https://akamai.sscdn.co/uploadfile/letras/fotos/b/5/0/a/b50aec94dbf33c77b4f37dd8714d2b67-tb.jpg" data-srcset="https://akamai.sscdn.co/uploadfile/letras/fotos/b/5/0/a/b50aec94dbf33c77b4f37dd8714d2b67-tb.jpg 1x, https://akamai.sscdn.co/uploadfile/letras/fotos/b/5/0/a/b50aec94dbf33c77b4f37dd8714d2b67-tb4.jpg 2x" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" alt="" width="76" height="76" /> <b>Taylor Swift</b> </a></li> <li><a href="/hinos-de-paises/"> <img data-original="https://akamai.sscdn.co/uploadfile/letras/fotos/f/9/7/0/f970d889b58cab5fb0491a0ba513dd54-tb.jpg" data-srcset="https://akamai.sscdn.co/uploadfile/letras/fotos/f/9/7/0/f970d889b58cab5fb0491a0ba513dd54-tb.jpg 1x, https://akamai.sscdn.co/uploadfile/letras/fotos/f/9/7/0/f970d889b58cab5fb0491a0ba513dd54-tb4.jpg 2x" src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" alt="" width="76" height="76" /> <b>Hinos de Países</b> </a></li> </ol> </div> </div> <a href="/mais-acessadas/" class="cnt-more">Ver mais músicas e artistas</a> </div> </div> <div id="js-contribsModal-container"></div> <script id="js-contribsModal" type="text/template"> <div class="modal modal--center centeredModal"> <p class="centeredModal-header"> Contribuições </p> <div class="centeredModal-content"> <nav class="tabsNavigator"> <ul> <li data-tab-id="0" class="is-active"><button>Letra</button></li> <li data-tab-id="1"><button>Tradução</button></li> <li data-tab-id="2"><button>Legendas</button></li> </ul> <i class="tabsSelector"></i> </nav> <div id="acknowledgment"></div> <div class="contribsModal-content"> <div data-tab-id="0" class="tabContent is-active"> <h2 class="centeredModal-subtitle">Envio</h2> <ul> <li class="contribsModal-contrib" data-contrib-id="3677878"> <a href="/membros/3677878/" data-mct-action="Click Link Para Perfil do Contribuidor" data-mct-label="Modal Contribuidores"> <img src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA=" alt="" data-original="https://akamai.sscdn.co/uploadfile/cifraclub/avatar/7/8/1304821362.jpg" width="45" height="45"> </a> <div> <span class="name">Agnes</span> <span>Envio <time class="js-contrib-time" datetime="2012-03-12T00:00:00-03:00"></time></span> </div> </li> </ul> <div class="contribsModal-footer"> <a href="/contribuicoes/enviar_correcao/candy-dulfer/please-dont-stop" data-mct-action="Click Link Enviar Correção" data-mct-label="Modal Contribuidores" class="contribsModal-button bt-b">Viu algum erro? Envie uma revisão</a> </div> </div> <div data-tab-id="1" class="tabContent"> <div class="contribsModal-empty"> <img src='//akamai.sscdn.co/letras/static/img/contribs_missing.v90d73319.svg' alt="" width="159" height="140"> <h2>Procurando a tradução?</h2> <p>Ainda não recebemos essa contribuição por aqui. Que tal nos enviar?</p> <a href="/candy-dulfer/please-dont-stop/enviar_traducao.html" data-mct-action="Click Link Enviar Tradução" data-mct-label="Modal Contribuidores" class="contribsModal-empty-button">Enviar tradução</a> </div> </div> <div data-tab-id="2" class="tabContent"> <div class="contribsModal-empty"> <img src='//akamai.sscdn.co/letras/static/img/contribs_missing.v90d73319.svg' alt="" width="159" height="140"> <h2>Procurando a legenda?</h2> <p>Ainda não recebemos essa contribuição<br /> por aqui. Que tal nos enviar?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 06:24:57 PM
I noticed songs not getting matched using Deezer (build-in) that are available at Deezer.
The cause seems to be that my track titles use curly apostrophes, while Deezer seems to expect straight ones.

These don't work:
Code
Leonard Cohen - Last Year’s Man
The Doobie Brothers - There’s a Light

When replacing them with straight ones they do:
Code
Leonard Cohen - Last Year's Man
The Doobie Brothers - There's a Light

The same seems to go for Artist.
Code
Mother’s Finest - Baby Love
is also not found with a curly quote.


I tried to edit the yml, but as soon as I only add:
Code
        - [regex, "’", "'"]
under 'title:'  the yml is not recognised/accepted by MB any more.
I have no clue why that is?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 06:41:53 PM
Just recently Letras de musicas has been dumping some crap into the beginning and end of the returned lyrics.  
There are fourteen tracks on this album (We Never Stop by Candy Dulfer.) One track returned no lyrics. One track returned correct lyrics from Google. The rest returned what is shown below. I'm not really surprised by no lyrics as it's a fairly new album released late October.
Not an answer to your question, but I am curious why Genius doesn't catch e.g. this song from that album:
Candy Dulfer - Please Don't Stop
https://genius.com/Candy-dulfer-please-dont-stop-lyrics?react=1

It seems a straightforward match to me?

Forget about it, my mistake.
Title: Re: LyricsReloaded (Latest)
Post by: phred on November 04, 2022, 06:58:44 PM
Not an answer to your question, but I am curious why Genius doesn't catch e.g. this song from that album:
Candy Dulfer - Please Don't Stop
https://genius.com/Candy-dulfer-please-dont-stop-lyrics?react=1
It appears that you're searching for "Please Don't Stop" (a single track) while the new album is titled "We Never Stop" and my thought is that no provider has the lyrics for the new album. With the exception of one track "Jammin' Tonight" which has appeared a different album of hers. Try looking for "We Never Stop" which is track 7 from the new album of the same name.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 07:41:44 PM
Ah yes, that's indeed a different song.

Also, my previous report that the plugin failed in finding that song can be ignored.
What happened was this:
I renamed the Artist and the Title of an existing song in my testing library to 'Candy Dulfer' and 'Please Don't Stop'.
And the plugin failed on it.
But now I realise that while changed the display artist, the original artist of that track was still (hidden out of sight) under Artist: Artist.
And so the plugin looks for 'Artist: Artist', not for the displayed artist.
I'll have to remember that…
Title: Re: LyricsReloaded (Latest)
Post by: phred on November 04, 2022, 08:21:07 PM
Ah yes, that's indeed a different song.
...
I'll have to remember that…
You're forgiven. :-)
But if it makes you feel any better, I've made the same mistake when testing.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 08:28:01 PM
Is there any way you can keep providers persistent?
If I untick, update, and save and then go back, I'd like the provider to still be in the same order they were before I unticked them.
Afraid not. Plugins do not have any control over that.
The behaviour is completely controlled by MusicBee.

I got 15 our of 15 incorrect lyrics returned from 'fuzzy' providers so I disabled them and tried again. This time I got no lyrics returned.
What -did- surprise me was that on the first run, I got lyrics for all the tracks.
There are times or days where I also randomly get this odd behaviour. I've never figured out exactly why it happens. One minute the search for a specific song on a specific provider would be failing and the next minute or MB session, a research of that same song from the same provider would yield results. I truly have no idea what would be going on there.

Just recently Letras de musicas has been dumping some crap into the beginning and end of the returned lyrics.  
Should be fixed now.
Get the latest yml from the add-on providers folder.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 08:37:27 PM
Hi
Really love your plugin ♫
may I ask a  question ?
can't download and save synch lyrics because it's a musicbee limit or the plugin limit?
thanks
Thanks - not my plugin though, I'm just maintaining it.
LyricsReloaded was written by forum member quick wango around 8 years ago I believe.

Regarding synced lyrics, it's neither a MusicBee nor a plugin limitation.
There are just not a lot of websites offering synced lyrics that I know of.
Megalobiz is the only site from the optional providers listed on the second post of this thread that offers synced lyrics.
If you know of any others, you can shout them here and something can be done about getting them to work with this plugin.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 08:57:11 PM
I noticed songs not getting matched using Deezer (build-in) that are available at Deezer.
The cause seems to be that my track titles use curly apostrophes, while Deezer seems to expect straight ones.

I tried to edit the yml, but as soon as I only add:
Code
        - [regex, "’", "'"]
under 'title:'  the yml is not recognised/accepted by MB any more.
I have no clue why that is?
Had no luck either trying to replace those using regex, but it did work when using the normal replace:
Code
- [replace, "’", "'"]

New plugin version (v1.2.0.3)

- includes the change above that addresses the curly apostrophe in the Deezer provider.
- resets the log file again after 10 MB sessions (I had noticed this was no longer working as of v1.2.0.0)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 09:10:12 PM
Had no luck either trying to replace those using regex, but it did work when using the normal replace:
Code
- [replace, "’", "'"]
That's strange.
I had tried the exact same thing, and the yml then also refuses to load in MusicBee.
Are you aware of any particularities that can break a yml like this?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 09:13:46 PM
Yeah, any invalid syntax (be it in the regular expression or an incorrect spelling to any of the keywords like "config" or "variables") to a yml file will cause the plugin not to register the provider to MusicBee. When trying it out now, does it also fail to recognize the provider when using the [replace] line instead of [regex]?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 09:17:33 PM
It fails with 1.2.0.2, but I'll try again with 1.2.0.3
I notice that the source.zip is not yet updated, could you post the code of the new Deezer yml so I can compare it to my edited yml?
Perhaps that will show if I am doing something wrong.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 09:21:07 PM
Will update the source code zip just now.

Code
name: Deezer
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [replace, "’", "'"]

    title:
        type: title
        filters: artist
       
config:
    identity url: "https://www.deezer.com/search/{title}+{artist}/track"
    identity pattern: ['"SNG_ID":"(?<identity>\d+)","PRODUCT_TRACK_ID":"\d+","UPLOAD_ID":\d+,"SNG_TITLE":"{title}","ART_ID":"\d+","PROVIDER_ID":"\d+","ART_NAME":"{artist}"', 's']
    lyrics url: "https://www.deezer.com/en/track/"
    lyrics pattern: ['<div>Lyrics</div>(?<lyrics>.*?)</div>', 's']
   
post-filters:
- strip_html
- utf8_encode
- entity_decode
- trim
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 09:24:42 PM
Thanks, shouldn't be the replace (also) be under title: ?

And do you know if the encoding is important?
(UTF-8 UTF-8-BOM etc.)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 09:26:21 PM
Code
    title:
        type: title
        filters: artist
The line filters: artist tells the plugin to apply the same filters used in the artist on the title.

Edit:

And do you know if the encoding is important?
(UTF-8 UTF-8-BOM etc.)
Tbh, no I do not.
While I've never tested the effects of removing the utf8_encode line, I also do not have any knowledge on encoding that would make me give a definitive answer as to whether its presence or absence would affect the retrieved lyrics. It was in the example.yml created by quick wango, so I always included it thinking that it must have some kind of importance in there.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 04, 2022, 09:41:32 PM
Succes!

What seems to have been the case is that the blank line you see above title: here:

Code
variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, "’", "'"]

    title:
        type: title
        filters: artist

was not actually blank, but somehow contained 2 tabulations. (that are obviously invisible to the eyes)

I removed them, and now the yml is accepted.
And... [regex, "’", "'"] now works too!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 04, 2022, 09:59:10 PM
Thanks for figuring that out.

I have in the past also struggled with getting a provider to load.
I'd end up giving up and sleeping it off with the belief that tech-related stuff usually fixes itself overnight.
On the next day, I'd start writing it from scratch and it would magically work (with the same content as before).
So it must always have been the blank line (that was in fact not blank) tripping things up.

I'll be sure to remember and recheck this if ever I'm in this situation again.
Looking at some of the other providers, they do have tab spaces in the "blank line", but they surprisingly work.
(probably because it's just the "lowercase" line above them)
Title: Re: LyricsReloaded (Latest)
Post by: phred on November 04, 2022, 10:09:42 PM
Should be fixed now.
Get the latest yml from the add-on providers folder.
It is indeed. Thanks for taking care of the gobbledygook. Letras de musicas is now returning results without the garbage code.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 05, 2022, 08:30:34 AM
Thanks for figuring that out.
I now also figured out what caused it in the first place. (for me)

I am using notepad++, and what happened was that when you are at the end of a line that begins with an indent (e.g. 8 spaces), and you press [Enter], notepad++ 'copies' the indent from the line before. (but changing the spaces for tabs)
I can understand many coders may prefer that behaviour, but that functionality would break the yml if it was done to a blank line.

The tabs themselves weren't the problem.
Under Settings > Preferences I ticked 'Replace by space' so that the new indent wouldn't be (2) tabs but (8 ) spaces, but the yml would then still not work.
So the problem is the indentation itself.
To avoid notepad++ doing this, you can go to Settings > Preferences > Auto-Completion, and un-tick that.

edit:
If you prefer to have that feature active, you could also clean up these possibly problematic blank indented lines by performing:
Edit > Blank Operations > Trim Trailing Space
after you are done editing the yml.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 01:28:00 PM
For some Portuguese songs, Genius (both internal and fuzzy) will begin the lyrics with: Letra de "..." com ...
(lyrics of 'song' by 'artist')

This happens with e.g.:

Chico Buarque - A moça do sonho
Ivan Lins - Iluminados
Simone - Mal acostumado

I tried to create a filter for this in the yml myself, but failed miserably. (again ;-)

It's not a big issue, but it would still be nice if it could be dealt with?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 03:29:07 PM
Hm, this seems to work:

Code
- [regex, 'Letra\sde.*com.*\n', ""]
But please review/test it before possibly adding it, I'm not completely confident in what I am doing here…
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2022, 05:04:42 PM
Yep, that does the job.
This is what I used but what you came up with works well too.

Code
- [regex, 'Letra de &quot.*?<br/><br/>', ""]

The additions have been included in both Genius providers (v1.2.0.4 has that change).
And thanks for the info on the edit section of the previous post - will certainly be using that.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 05:10:15 PM
Code
- [regex, 'Letra de &quot.*?<br/><br/>', ""]
Have you tested it on the tracks I mentioned? It doesn't work for me?

Quote
And thanks for the info on the edit section of the previous post - will certainly be using that.
Ideally the plugin engine would just ignore empty lines (containing spaces or tabs) when loading yml's. But I'm not sure if that's easy to do.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2022, 05:16:15 PM
Have you tested it on the tracks I mentioned? It doesn't work for me?
I only had a look at Simone's Mal acostumado and it had worked.
Let me see with the rest.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 05:21:53 PM
Aren't <br/><br/> html codes?
Just to make sure we're on the same page: I added the regex line under post-filters.
Are html codes within a regex working there too?

(https://i.imgur.com/2ZY63nI.png)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2022, 05:38:42 PM
Aren't <br/><br/> html codes?
Just to make sure we're on the same page: I added the regex line under post-filters.
Are html codes within a regex working there too?
Yes and yes to both questions.
The plugin retrieves the webpage content in html format.

The Letra de "..." com ... line appears like this along with the lyrics.
(https://i.imgur.com/I7yGivF.png)

I can't say for sure but from previous tests, I think both "/n" and "<br>" usually match the same thing.
In some yml's, I've noticed the two being used interchangeably.
But just to be on the safe side, I always prefer using <br> as its the one that always appears when I inspect the source code of the webpage.

To get some clarity also, are you saying the Genius providers in v1.2.0.4 do not remove that line
or that the same regex I used in the post-filters section isn't working for you?
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 05:42:38 PM
To get some clarity also, are you saying the Genius providers in v1.2.0.4 do not remove that line
or that the regex you came up with and included to the post-filters section isn't working for you?
All I did was replacing the line that I had created (see screenshot) with the one that you posted.
I'll now download the updated version of LR and see what happens…
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2022, 05:50:21 PM
Oh I see what's wrong now.
When adding that line on my side, I added the regex above the br2nl (i believe it's a filter that replaces <br> tags with new lines automatically).

So on your side, the <br> tags were most likely stripped before the regex line could do its thing.
Add it above br2nl and it should work.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 05:52:41 PM
The downloaded version seems to work fine indeed.
The only difference in the YML that I can spot right now is that '- br2nl' switched positions and is now lower in the chain?
Could that be it?

Ah well, it's working, thanks for your troubles again, case closed ;-)

edit:
So that was it indeed ;-)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2022, 06:00:06 PM
Yeah, I kinda made things complicated for no reason.
I should have just used the one you provided since it would work fine regardless of its position in the filters section.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 06:46:50 PM
Well, far as I understand your version will be rock solid.
My version might fail in case some lyric happens to have 'Letra and com' in one line as an actual lyric.
That's probably a chance of one in a zillion, but still…

Please keep doing you ;-)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2022, 07:07:08 PM
By the way, the UDL you are using for editing your providers in Notepad++ , did you ever share it anywhere on the forum?
I redownloaded your other three (https://getmusicbee.com/forum/index.php?topic=30727.0), but none of them seem to be designed for yml's.

All along, I've been hurting my eyes with the default white that Notepad++ offers.
I would very much appreciate using your colours going forward. Care to share the UDL?

(https://i.imgur.com/2ZY63nI.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 06, 2022, 07:28:47 PM
I would very much appreciate using your colours going forward. Care to share the UDL?
So you are using Notepad++ also?
I haven't received that much feedback on the NPP UDL's that I have shared, so my attention to maintaining that is not that high.

I just PM'ed you a link to my 'LyricsReloaded' UDL.
It's very basic without much 'clever' mechanisms though.
(well, maybe I'm selling myself short here; try adding a comment, I made some effort in having those displaying nicely too)

Let me know if you like it, and if you have suggestions for improvements?

Perhaps I will share it publicly later, but it's probably too niche for that.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 19, 2022, 12:04:40 PM
Sorry for the late response.
No room for improvements, it's perfect as it is.

Just to visualize what I was seeing before and what I am now (courtesy of hiccup's UDL)
(https://i.imgur.com/IYhWj2D.png) (https://i.imgur.com/nVPPNm8.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 19, 2022, 02:21:35 PM
Just to visualize what I was seeing before and what I am now
That's great to hear.
Just curious: did you add the highlighting for xml comments yourself?
It's probably not a problem to use those for the LyricsReloaded plugin, but far as I know yml uses # to comment things out.
So that's what my udl is using too.

edit:
Did you use the most recent version that I pm'ed you?
I notice a small difference with my version. (that will format commas also)
Title: Re: LyricsReloaded (Latest)
Post by: Appie Thrasher on November 20, 2022, 03:14:27 PM
So I just came across this extension and like to try it out.. So i followed the readme in the .zip. installed the plugin fine.
But cant seem to find the "...\MusicBee\AppData\mb_LyricsReloaded\providers" folder ??
Someone willing to explain to me were to find this?

Thanks

Appie
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 20, 2022, 03:41:48 PM
But cant seem to find the "...\MusicBee\AppData\mb_LyricsReloaded\providers" folder ??
Depending on what type of MusicBee install you did, check this:
https://getmusicbee.com/forum/index.php?topic=36875.0
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 20, 2022, 06:36:38 PM
Did you use the most recent version that I pm'ed you?
I notice a small difference with my version. (that will format commas also)
Looks like I wasn't. This is how it should appear right?
(https://i.imgur.com/uwhACPa.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on November 20, 2022, 06:41:59 PM
Looks like I wasn't. This is how it should appear right?
Yep.
But let me know if you prefer anything different. It's you that is currently doing the most work on the LyricsReloaded yml's.
So I am happy to tweak the udl anyway you'd like.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 20, 2022, 06:52:07 PM
It's already perfect as it is tbh...10x better looking than what I had initially - thanks a lot for that.
If I ever I do think of a little suggestion for improvement, I'll shout it out.

I'm just happy the websites haven't "misbehaved" in a long while.
Once they start, I'll be working on the yml's a lot and will add more comments on the UDL then.
Title: Re: LyricsReloaded (Latest)
Post by: SimonP on December 10, 2022, 01:40:18 AM
Sorry, really dumb question from a complete newbie to MB. I installed LyricsReloaded as instructed, I can see it in Prefs / Tags (2) and Prefs / Plugins but I cannot work out how to actually view the lyrics! I don't see any buttons and I've been through the settings but can't see anything there. I saw something online saying that it should appear in the button next to the search box but even after re-starting MB there's nothing about lyrics there.

Please help?

(MusicBee 3.4.8033 and LyricsReloaded 1.2.0.4 on Windows 10 Pro)
Title: Re: LyricsReloaded (Latest)
Post by: frankz on December 10, 2022, 01:51:27 AM
The button next to the search box brings up the layout editor. When you're on the Now Playing screen, you can use this to add the lyrics panel to that view.

If you are saving the lyrics to your files, you'll also be able to view each song's lyrics in that files tag editor on the lyrics tab.

Many (all?) Theater Mode views also display lyrics during playback via a toggle.
Title: Re: LyricsReloaded (Latest)
Post by: SimonP on December 11, 2022, 04:47:02 AM
Thanks Frankz, I hadn't thought to go to the Now Playing screen as I often use it to play individual tracks.

I've just discovered how to add the lyrics to the Right Main Panel of the Music screen and that's perfect for me.
Title: Re: LyricsReloaded (Latest)
Post by: Kihon on December 23, 2022, 08:54:50 PM
So I just came across this extension and like to try it out.. So i followed the readme in the .zip. installed the plugin fine.
But cant seem to find the "...\MusicBee\AppData\mb_LyricsReloaded\providers" folder ??
Depending on what type of MusicBee install you did, check this:
https://getmusicbee.com/forum/index.php?topic=36875.0
But cant seem to find the "...\MusicBee\AppData\mb_LyricsReloaded\providers" folder ??
Someone willing to explain to me were to find this?

Thanks

Appie
TLDR:
If you can't find folder for providers try here;
"C:\Users\Ciaran\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers" where "Ciaran" is "your" username.



Same here checked the link and it says plugins in one of these
"%ProgramFiles(x86)%\MusicBee\Plugins"
or
"%APPDATA%\MusicBee\Plugins"
but no
...\MusicBee\AppData\mb_LyricsReloaded\providers folder.

I have "C:\Program Files (x86)\MusicBee\Plugins" and this contains mb_TheaterModePlugin.dll file but there are no subfolders, eg "\mb_LyricsReloaded\providers"

Also the link for the folder locations show a lot of locations as "%APPDATA%/MusicBee". However in APPDATA under Users/%Usernane% there is no MusicBee folder just the usual "Local", "LocalLow" and "Roaming" folders. I checked in all these and in "Roaming" found "..\MusicBee\mb_LyricsReloaded\providers" which I assume is the folder! The full path being; "C:\Users\Ciaran\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers" where "Ciaran" is "your" username.
Title: Re: LyricsReloaded (Latest)
Post by: boroda on December 23, 2022, 11:56:54 PM
maybe it's worth to change installation instructions for additional providers to "click Help> Suppprt> Open AppData Folder"....

both portable and installer mb versions will automatically open correct folder location.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on January 03, 2023, 12:12:27 PM
Great suggestion Boroda - I have made that addition to the installation instructions in the add-on read me.
Title: Re: LyricsReloaded (Latest)
Post by: Astro Gaze on January 04, 2023, 08:15:31 AM
Hey guys,

I'm having two issues. I'm not sure if they're related, but here goes...

Issue #1: Genius is first on my settings list. Sometimes when I get lyrics retrieved from Genius, either in the middle or at the end of the lyrics an extra line will be included that says "You may also like" / "You might also like". I have songs with both wordings. Sometimes I'll also see "See (input artist name) Live Get tickets as low as $76" If you Genius search those songs on desktop/laptop, you'll see that it's part of Genius' promo system. But you won't see them if you search using the Genius app or a mobile browser. As for the lyrics panel, a quick right click shows "Lyrics Source: GENIUS".

Could you remove these promo system lines from results?

P.s. This phenomenon also happens when the plugin is disabled, and MusicBee's native retrieval source Chartlyrics, is active. Right click still shows "Lyrics Source: GENIUS". It's odd, but I can only assume Chartlyrics gets it's results from Genius.

Issue #2: With the plugin enabled, lyrics panel open, and a song with no lyrics is played, results are not auto-retrieved from the plugin. Lyrics appear, but I can only assume they are retrieved from somewhere else. Maybe MusicBee's native retrieval source? I have to right click > Delete Lyrics and Redo Search, to get the plugin to kick in.

I have tested this by activating lyrics source at the bottom, and looking at the log. When lyrics are auto-retrieved from the playing track, the first results don't show the source at the bottom. Also, the log doesn't have an entry for that moment in time.  If I right click > Delete Lyrics and Redo Search, the next results will show source at the bottom and there will be a log entry.

If I disable the plugin, MusicBee's native Tag(2) lyrics retrieval setting is to get it from Chartlyrics. When I run the test again from blank lyrics, it gives me the same lyric result from when I first played the song and the plugin was active, above.

How can I get the enabled plugin to pull results from the moment I play a song?


A little about my setup:
Windows 10 Laptop
MusicBee version 3.5.8297. Installed with installer.
Plugin version 1.2.0.4
MB and Plugin updated yesterday, and all issues retested before posting.

I hope I explained everything precisely. But if you need screenshots, I can provide them.

Thanks for reading!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on January 04, 2023, 06:17:09 PM
Hello Astro,

For #1, Can you give me a song example that I can look at? That would make things easier for me.
I've looked at a couple of random tracks from my side using the current 1.2.0.4 plugin version and I can't spot any of those Genius promo lines.

P.s. This phenomenon also happens when the plugin is disabled, and MusicBee's native retrieval source Chartlyrics, is active.
Right click still shows "Lyrics Source: GENIUS". It's odd, but I can only assume Chartlyrics gets it's results from Genius.
The only plausible explanation that I can think of is that those genius lyrics were probably already saved to the music file.
The lyrics auto-retrieve setting only applies to tracks without lyrics.
So if some genius lyrics were already saved/linked to the file, MusicBee wouldn't have been looking at chartlyrics to begin with.

If I disable the plugin, MusicBee's native Tag(2) lyrics retrieval setting is to get it from Chartlyrics.
When I run the test again from blank lyrics, it gives me the same lyric result from when I first played the song and the plugin was active, above.

How can I get the enabled plugin to pull results from the moment I play a song?
For #2, judging by the first search results, that means MusicBee is conducting its first search from chartlyrics right?
I can't see how that would be possible given that you said Genius is configured as your primary provider.

If your chartlyrics is disabled and the plugin providers are enabled, do you get intended results?
(first retrieved lyrics showing the source at the bottom, meaning they're from the plugin?)

If that doesn't quite address what you're reporting, I'll only be able to have a thorough look on the weekend.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on January 04, 2023, 07:11:41 PM
Issue #1: Genius is first on my settings list. Sometimes when I get lyrics retrieved from Genius, either in the middle or at the end of the lyrics an extra line will be included that says "You may also like" / "You might also like". I have songs with both wordings. Sometimes I'll also see "See (input artist name) Live Get tickets as low as $76" If you Genius search those songs on desktop/laptop, you'll see that it's part of Genius' promo system. But you won't see them if you search using the Genius app or a mobile browser. As for the lyrics panel, a quick right click shows "Lyrics Source: GENIUS".

Could you remove these promo system lines from results?
The "you may also like" phrases were removed a while back, and I personally haven't seen any since, of course they may be using a different trick now.  Check that the plugin file is indeed version 1.2.0.4.  The ticket prices thing was reported by me a while back (https://getmusicbee.com/forum/index.php?topic=36952.msg205438#msg205438 (https://getmusicbee.com/forum/index.php?topic=36952.msg205438#msg205438)), but is very rare and I don't worry about it any more.

Chartlyrics has nothing to do with Genius and isn't even an actual part of the mb_LyricsReloaded plugin.  It sounds like you are using auto-retrieve/save.  Try deleting the contents of the MusicBee lyrics cache folder ("C:\MusicBee\AppData\InternalCache\Lyrics" in my portable install) and see if the problem persists.  I posted a batch script to do this as wanted a while back in this thread, take a look for it.  I do it at every shutdown.

I also should note that the separate "Beenius" Genius plugin, that co-exists fine with LyricsReloaded, uses an API search technique and is not affected by the promo messages (https://github.com/slonopot/Beenius (https://github.com/slonopot/Beenius)).
Title: Re: LyricsReloaded (Latest)
Post by: belomeclone on March 12, 2023, 07:14:14 AM
Hi there. I recently updated the LyricsReloaded plugin after using one from a year ago without Genius built in, relying on a custom-made Genius add-in. The new Genius scraper seems to be ignoring the text that is inside brackets. Genius uses [Verse 1] [Chorus], so LyricsReloaded skipping it is throwing me off. The old plugin and old Genius scraper did not ignore it. Is it part of avoiding the extra junk?

I researched for a song that had lyric data from the old plugin (Genius 2022-1-27) and the [Verse 1] [Chorus] data disappeared.

Can this be fixed? Thank you!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 12, 2023, 09:05:05 AM
Copy and paste the content below into an empty text file.
And then save it with a .yml extension e.g. Genius.yml in the following folder ...\MusicBee\AppData\mb_LyricsReloaded\providers
I did not test it yet but this should override the built-in genius version and leave in the square bracket headers (let me know if you'd like the same change done with the fuzzy version).

Code
name: Genius

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "https://genius.com/{artist}-{title}-lyrics"
    pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-6.*?">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- br2nl
- [regex, 'You might also like</div>', "\n"]
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\n{2,}',"\n\n", 's']
- trim

Edit: Tested and works as expected for me.
Title: Re: LyricsReloaded (Latest)
Post by: belomeclone on March 12, 2023, 06:29:20 PM
Thank you for your help! I made the yml file and copied all that in, but now when I search it's not pulling anything up. The log shows it's finding the URL correctly as well.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on March 12, 2023, 07:14:32 PM
Check that you have the new yml you made both selected, and in the order you want in Tags(2)/lyrics.  You might want to re-name it first (genius-2.yml, etc.) too to make it easy to distinguish from the built-in one.

BTW, the Beenius plugin for Genius (https://getmusicbee.com/forum/index.php?topic=36605.0 (https://getmusicbee.com/forum/index.php?topic=36605.0)) also leaves in the bracketed headers and works fine alongside LyricsReloaded as an additional choice in the sources list.  Be sure to follow the installation directions carefully.
Title: Re: LyricsReloaded (Latest)
Post by: belomeclone on March 12, 2023, 07:35:48 PM
Check that you have the new yml you made both selected, and in the order you want in Tags(2)/lyrics.  You might want to re-name it first (genius-2.yml, etc.) too to make it easy to distinguish from the built-in one.

BTW, the Beenius plugin for Genius (https://getmusicbee.com/forum/index.php?topic=36605.0 (https://getmusicbee.com/forum/index.php?topic=36605.0)) also leaves in the bracketed headers and works fine alongside LyricsReloaded as an additional choice in the sources list.  Be sure to follow the installation directions carefully.

Beenius worked very well in this setup! I do not understand why LyricsReloaded would skip the bracketed information by default, the guidelines for Genius request including it on every song. If you're going to scrape from there that's what you're expecting to see.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on March 12, 2023, 07:56:02 PM
Glad Beenius is working out for you!

The reason the bracketed portions were taken out was by request, several posters (including me!) preferred the cleaner look.  At the time only one line in the genius.yml affected this, you can try just removing that from the original yml instead of replacing the whole thing: https://getmusicbee.com/forum/index.php?topic=25406.msg200911#msg200911 (https://getmusicbee.com/forum/index.php?topic=25406.msg200911#msg200911) .  I use both Beenius and the LR version now.
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on March 18, 2023, 09:31:49 AM
Copy and paste the content below into an empty text file.
And then save it with a .yml extension e.g. Genius.yml in the following folder ...\MusicBee\AppData\mb_LyricsReloaded\providers
I did not test it yet but this should override the built-in genius version and leave in the square bracket headers (let me know if you'd like the same change done with the fuzzy version).

Code
name: Genius

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "https://genius.com/{artist}-{title}-lyrics"
    pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-6.*?">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- br2nl
- [regex, 'You might also like</div>', "\n"]
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\n{2,}',"\n\n", 's']
- trim

Edit: Tested and works as expected for me.

Thanks for this, I've tested it with a few songs so far and it's working (installed as per your instructions), if it's not too much trouble can I get a fuzzy version as well?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 18, 2023, 07:01:49 PM
Here you go man.

Code
name: Genius (fuzzy)
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
       
    title:
        type: title
        filters: artist

config:
    identity url: "https://www.google.com/search?q=Genius+{title}+{artist}"
    identity pattern: ['(?<identity>https://genius.com.*?-lyrics)', 's']
    lyrics url: ""
    lyrics pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-6.*?">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- br2nl
- [regex, 'You might also like</div>', "\n"]
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\n{2,}',"\n\n", 's']
- trim
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on March 18, 2023, 07:43:23 PM
Thanks, appreciate it  8)
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on March 24, 2023, 05:22:15 AM
It appears that the built-in Genius code in the latest version of the LyricsReloaded plugin is no longer working.  The Beenius plugin continues to draw lyrics from Genius.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 24, 2023, 07:28:04 PM
Hi sveakul, yeah, looks like Genius made a recent change to their page. Thanks for picking it up.
Redownload the plugin - it should work now.

@Sekt0r and @belomeclone

You guys have to make a change to the code I supplied a few posts back.
In this piece of the lyrics pattern, remove the digit (6) and things should run smoothly again.

class="Lyrics__Container-sc-1ynbvzw-6.*?"
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on March 24, 2023, 08:09:25 PM
Hi sveakul, yeah, looks like Genius made a recent change to their page. Thanks for picking it up.
Redownload the plugin - it should work now.
Thank you, working fine now.
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on March 25, 2023, 06:01:54 AM
Hi sveakul, yeah, looks like Genius made a recent change to their page. Thanks for picking it up.
Redownload the plugin - it should work now.

@Sekt0r and @belomeclone

You guys have to make a change to the code I supplied a few posts back.
In this piece of the lyrics pattern, remove the digit (6) and things should run smoothly again.

class="Lyrics__Container-sc-1ynbvzw-6.*?"

Thanks, working here too.

Probably unrelated to the recent Genius change but I've noticed some little things with the bracket-enabled versions.

Using this song as an example:
Roy Woods - Don't Love Me - https://genius.com/Roy-woods-dont-love-me-lyrics

1. There is no line break between the first [Verse 1] heading and the first [Chorus] heading (line breaks are fine after that). Happens on any song I've tried, fuzzy and non-fuzzy version. No line-break issues using the built-in ones. Screenshot - https://i.imgur.com/BJac9Il.jpg

2. Only have this one example so far but that same song doesn't get pulled when using the non-fuzzy version but does when using the built-in non-fuzzy version.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 25, 2023, 09:53:59 AM
My bad. The YML's I gave you earlier were not actually from the latest built-in versions.
Try these ones (both #1 and #2 should be fixed for you):

Code
name: Genius

variables:
    artist:
        type: artist
        filters:
        - strip_diacritics
        - lowercase
        - [replace, "!!!", "chk-chik-chick"]
        - [regex, '(?<=\W|\s)+(feat.+|ft[\W\s]+|(f\.\s)).+', ""]
        - [regex, '\.+|,+|(\W+(?=$))|(^\W+)', ""]
        - [regex, "'", ""]
        - [regex, '(?<=[a-z0-9%])[^\sa-z0-9%]+(?=[a-z0-9%]+)', "-"]
        - [regex, '((?<=\s)([^a-z0-9\s-])+(\s|\W)+)|((?<=\w)([^a-z0-9-])+(\s|\W)+)', " "]
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "https://genius.com/{artist}-{title}-lyrics"
    pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-.*?">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- [regex, 'You might also like</div>', "\n"]
- [regex, '<div class="PrimisPlayer.*?>', "\n"]
- [regex, 'Letra de &quot.*?<br/><br/>', ""]
- br2nl
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\n{2,}',"\n\n", 's']
- trim

Code
name: Genius (fuzzy)
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
        
    title:
        type: title
        filters: artist

config:
    identity url: "https://www.google.com/search?q=Genius+{title}+{artist}"
    identity pattern: ['(?<identity>https://genius.com.*?-lyrics)', 's']
    lyrics url: ""
    lyrics pattern: ['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-.*?">(?<lyrics>.*)<div class="Lyrics__Footer-sc-', 's']

post-filters:
- [regex, 'You might also like</div>', "\n"]
- [regex, '<div class="PrimisPlayer.*?>', "\n"]
- [regex, 'Letra de &quot.*?<br/><br/>', ""]
- br2nl
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- [regex, '\n{2,}',"\n\n", 's']
- trim
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on March 25, 2023, 02:16:06 PM
My bad. The YML's I gave you earlier were not actually from the latest built-in versions.
Try these ones (both #1 and #2 should be fixed for you):

Sweet, all good now. Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: ECHO on April 13, 2023, 02:18:27 AM
I couldn't find the information elsewhere so I'll post it here.
For the Windows Store version of MusicBee, I found my plugins folder @:
C:\Users\username\AppData\Local\Packages\StevenMayall.MusicBee\LocalCache\Roaming\MusicBee\Plugins
Where Italics in the path name indicate possible variables according to your installation.
So for adding the yml files from the providers.zip the path was ...\LocalCache\Roaming\MusicBee\\mb_LyricsReloaded\providers

Maybe in a different post as a suggestion it would be nice to change Help --> Support --> Open AppData Folder to open the relevant folder depending on the type of installation, isntead of producing an error when using the Windows Store version.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on April 15, 2023, 09:40:37 PM
Maybe in a different post as a suggestion it would be nice to change Help --> Support --> Open AppData Folder to open the relevant folder depending on the type of installation, isntead of producing an error when using the Windows Store version.
Hi Echo, thanks for bringing that to attention.
You can keep an eye on this thread for possible developments: https://getmusicbee.com/forum/index.php?topic=29390.0
You can reply to that thread and add any info which might be helpful to Steven - I'm guessing this works just fine on his side.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on April 24, 2023, 09:00:45 PM
I was notified of a post on email earlier today that I'd planned to reply to later in the day.
But looking now, I can't see anything - could the poster have deleted it?

(https://i.imgur.com/oKRpAgP.jpeg)
Title: Re: LyricsReloaded (Latest)
Post by: lemon_yellow on May 03, 2023, 06:33:59 AM
Just stumbled on this this thread last night and read the entire to understand how this worked an I present my magnum opus :D
Really tho I'm proud of this, and was only able to write this voodoo by looking at the other providers given with the plugin.

All ya'll are the real OGs

Anyways here's a provider for Lyricsify which I have found anecdotally to be a pretty good source for synchronized lyrics:
Code
name: Lyricsify
loader: search

variables:
    artist:
        type: artist
        filters:
        - [regex, '\s', '+']
    title:
        type: title
        filters:
        - [regex, '\s', '+']

config:
    identity url: "https://www.lyricsify.com/search?q={artist}+{title}"
    identity pattern: ['<a href="(?<identity>/lrc/.*?)"', 's']
    lyrics url: "https://www.lyricsify.com"
    lyrics pattern: ['<div id="lyrics_.\d*_details">(?<lyrics>.*?)</div>', 's']
    
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim

Unfortunately sometimes the top result in the search is not the same as the song you're looking for so this will return the wrong lyrics.
You can get the better match if you look for the artist and title name in the search results but I'm not at that level right now.
Title: Re: LyricsReloaded (Latest)
Post by: lemon_yellow on May 03, 2023, 06:49:16 AM
Just stumbled on this this thread last night and read the entire to understand how this worked an I present my magnum opus :D
Really tho I'm proud of this, and was only able to write this voodoo by looking at the other providers given with the plugin.

All ya'll are the real OGs

Anyways here's a provider for Lyricsify which I have found anecdotally to be a pretty good source for synchronized lyrics:
Code
name: Lyricsify
loader: search

variables:
    artist:
        type: artist
        filters:
        - [regex, '\s', '+']
    title:
        type: title
        filters:
        - [regex, '\s', '+']

config:
    identity url: "https://www.lyricsify.com/search?q={artist}+{title}"
    identity pattern: ['<a href="(?<identity>/lrc/.*?)"', 's']
    lyrics url: "https://www.lyricsify.com"
    lyrics pattern: ['<div id="lyrics_.\d*_details">(?<lyrics>.*?)</div>', 's']
   
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim

Unfortunately sometimes the top result in the search is not the same as the song you're looking for so this will return the wrong lyrics.
You can get the better match if you look for the artist and title name in the search results but I'm not at that level right now.


well here's v2 that searches in much better way:

Code
name: Lyricsify
loader: search

variables:
    artist:
        type: artist
        filters:
        - [regex, '\s', '+']
    title:
        type: title
        filters:
        - [regex, '\s', '+']

config:
    identity url: "https://www.lyricsify.com/search?artist={artist}&title={title}"
    identity pattern: ['<a href="(?<identity>/lrc/.*?)"', 's']
    lyrics url: "https://www.lyricsify.com"
    lyrics pattern: ['<div id="lyrics_.\d*_details">(?<lyrics>.*?)</div>', 's']
   
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on May 03, 2023, 06:07:18 PM
I don't search for/use synced lyrics, but in testing I can confirm that your v2 does work, although hits are few.  Congratulations and thanks for another working yml!  An example of a results display is below.

Source: Lyricsify

[id: 70316602]
[ar: Within Temptation]
[ti: Say My Name]
[al: [2008] Destroyed]
[by: chikinz]
[length: 04:08]
[00:00.00]
[00:13.40]Say my name
[00:17.06]so i will know you're back you're here again
[00:23.02]for a while
[00:25.94]Oh let us share
[00:29.98]the memories that only we can share
[00:35.81]together
[00:38.36]
[00:39.30]Tell me about
[00:43.02]the days before i was born
[00:45.94]how we were as children
[00:51.40]
[00:51.78]You touch my hand
[00:55.38]this colors come alive
[00:58.43]in your heart and in your mind
[01:04.32]I cross the borders of time
[01:08.86]leaving today behind to be with you again
[01:16.99]
[01:17.30]We breath the air
[01:21.96]do you remember how you used to touch my hand
[01:30.03]You're not aware
[01:34.95]your hands keep still
[01:36.56]you just don't know that I am here
[01:43.14]
[01:43.82]It hurts too much
[01:47.85]a pray now that soon you release
[01:51.90]to where you belong
[01:56.12]
[01:56.49]You touch my hand
[02:00.23]this colors come alive
[02:03.33]in your heart and in your mind
[02:09.05]I cross the borders of time
[02:13.89]leaving today behind to be with you again
[02:22.83]
[02:55.69]Please say my name
[02:59.54]remember who i am
[03:01.90]you will find me in the world of yesterday
[03:07.49]You drift away again
[03:12.27]to far from where I am
[03:14.88]when you ask me who I am
[03:23.26]
[03:23.26]say my name
[03:26.48]this colors come alive
[03:29.15]in your heart and in your mind
[03:34.93]I cross the borders of time
[03:39.90]leaving today behind to be with you again
[03:49.21]
[03:55.40]Say my name
[04:00.00]

Title: Re: LyricsReloaded (Latest)
Post by: lksal on May 03, 2023, 09:46:10 PM
I'm trying to install the plugin, but I get a "The process cannot access the file because it is being used by another process" error.
What am I doing wrong?

Screenshots here (https://i.imgur.com/WXvn9pK.png) and here (https://i.imgur.com/NdYAwOu.png).

Found this old thread (https://getmusicbee.com/forum/index.php?topic=30209.0), but it won't help.
Title: Re: LyricsReloaded (Latest)
Post by: boroda on May 03, 2023, 10:08:37 PM
from your 2nd screenshot, you already have installed this plugin. you must 1st uninstall (or just disable it) to update plugin.
Title: Re: LyricsReloaded (Latest)
Post by: lksal on May 04, 2023, 07:56:00 PM
Hitting uninstall throws the error below:

Code
MusicBee v3.5.8447.35892P  (Win10.0), 4 May 2023 21:19:

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at MusicBeePlugin.Plugin.Uninstall()
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at #=z5PgYRDH$zNo7WhzgWg==.#=z2XpfYrs=()

However, it does change the status of the plugin to "disabled".
From there, adding the plugin (to update it) prompts the error shown in my previous post.

Anyway, I just re-enabled whatever version was already installed (built in?). I just find weird that there was no .dll of that version in MB's Plugins folder.
But then again, I'm a newbie and I don't know what I'm doing :D

Can LyricsReloaded process synchronised lyrics or is it "only" about fetching static text from different sources?

On that topic, can anyone recommend sources for synced lyrics?
It seems MiniLyrics is a thing of the past now (?) and I can't recall the plugin I was using in Foobar for that back in the days.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on May 04, 2023, 08:55:35 PM
First exit MusicBee.  Then, do a Windows search for any occurrence of the file "mb_LyricsReloaded.dll", and delete the files(s).  Now, do the same thing for the FOLDER "mb_LyricsReloaded", and delete it and its contents.

Now, go to https://getmusicbee.com/addons/plugins/467/lyrics-reloaded-latest/ (https://getmusicbee.com/addons/plugins/467/lyrics-reloaded-latest/) and download the latest version of the plugin.  With MusicBee still closed, carefully follow the installation instructions for the plugin described on the download page.

Then start MusicBee.  Check "Plugins"--if "Lyrics reloaded" shows a "Disable" button, leave it alone as its already enabled.  If it shows "Enable", press the button so that "Disable" shows, and Save.

Basic retrieval should now be working from the new plugin.  Go into Prefs/Tags(2)/Lyrics to enable additional sources or move their priorities.
Title: Re: LyricsReloaded (Latest)
Post by: boroda on May 04, 2023, 09:52:05 PM
Go into Prefs/Tags(20/Lyrics to enable additional sources or move their priorities.

Go into Prefs/Tags(2)/Lyrics to enable additional sources or move their priorities.
Title: Re: LyricsReloaded (Latest)
Post by: lemon_yellow on May 05, 2023, 09:39:02 AM
There's sometimes a weird invisible character at the start that breaks the synchronized lyrics and causes all timestamps to show as text, here's the fix:

Code
name: Lyricsify
loader: search

variables:
    artist:
        type: artist
        filters:
        - [regex, '\s', '+']
    title:
        type: title
        filters:
        - [regex, '\s', '+']

config:
    identity url: "https://www.lyricsify.com/search?artist={artist}&title={title}"
    identity pattern: ['<a href="(?<identity>/lrc/.*?)"', 's']
    lyrics url: "https://www.lyricsify.com"
    lyrics pattern: ['<div id="lyrics_.\d*_details">(?<lyrics>.*?)</div>', 's']
   
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim
- [regex, '', '', s]
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on May 05, 2023, 05:39:48 PM
There's sometimes a weird invisible character at the start that breaks the synchronized lyrics and causes all timestamps to show as text
Can you please post an example of what you described actually looks like in terms of returned results?  I haven't seen anything odd at all with what your original v2 code is producing.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on May 05, 2023, 07:51:57 PM
Just stumbled on this this thread last night and read the entire to understand how this worked an I present my magnum opus :D
Really tho I'm proud of this, and was only able to write this voodoo by looking at the other providers given with the plugin.
Huge congrats to you lemon_yellow!
I'm a massive fan/collector of synchronized lyrics myself and was super excited when I cracked the "megalobiz" provider (synced lyrics).
Unfortunately, my happiness was short lived as I stopped using it after a few days.
Reason having been that synced lyrics from the internet turned out to always be in some way a few seconds off from my own tracks (some due to my extensive trimming of files).
Anyway, I ended up deciding on retrieving unsynced lyrics only and then syncing them manually to satisfy my need for perfect synchronization.

Again, well done though on the provider. I will be adding it to the list of optional providers in the download link when I get to it.
Will also do some tests on it and revert with comments.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on May 05, 2023, 08:08:54 PM
Hitting uninstall throws the error below:
Back then, I recall testing the plugin's uninstall code and noticing that it wasn't playing well with MusicBee.
I will look into it again some time later. But a more 'simpler', alternative method has always been for the user to manually go into the plugin's folder and delete all of its contents.
Though by now, I'm assuming that you've gotten it to work with the advice already provided to uu by other users?

Can LyricsReloaded process synchronised lyrics or is it "only" about fetching static text from different sources?
On that topic, can anyone recommend sources for synced lyrics?
That all depends on the providers.
Do you know any other websites with synchronized lyrics besides Megalobiz and the recent Lyricsify from lemon_yellow?
Title: Re: LyricsReloaded (Latest)
Post by: Naireem on May 09, 2023, 04:11:15 PM
Would it be possible to make a yml for AZLyrics.com? Very nice Plugin btw!
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on May 09, 2023, 06:20:26 PM
Would it be possible to make a yml for AZLyrics.com? Very nice Plugin btw!
FYI: https://raw.githubusercontent.com/mbfrankz/LyricsReloaded/master/LyricsReloaded/Configs/azlyrics.com.yml (https://raw.githubusercontent.com/mbfrankz/LyricsReloaded/master/LyricsReloaded/Configs/azlyrics.com.yml)

This is not included by default as there is a legal grey area to this one as to whether a music player can be considered a "third-party lyrics provider."
Title: Re: LyricsReloaded (Latest)
Post by: Naireem on May 11, 2023, 06:54:33 PM
Would it be possible to make a yml for AZLyrics.com? Very nice Plugin btw!
FYI: https://raw.githubusercontent.com/mbfrankz/LyricsReloaded/master/LyricsReloaded/Configs/azlyrics.com.yml (https://raw.githubusercontent.com/mbfrankz/LyricsReloaded/master/LyricsReloaded/Configs/azlyrics.com.yml)

This is not included by default as there is a legal grey area to this one as to whether a music player can be considered a "third-party lyrics provider."

Thank you very much!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on May 13, 2023, 03:31:02 PM
@lemon_yellow

Again, well done though on the provider. I will be adding it to the list of optional providers in the download link when I get to it.
Will also do some tests on it and revert with comments.
This is done now. No room for improvements in the yml. It's impressive how got everything perfect on your first try. Well done!
Title: Re: LyricsReloaded (Latest)
Post by: lemon_yellow on May 16, 2023, 03:50:11 PM
Can you please post an example of what you described actually looks like in terms of returned results?  I haven't seen anything odd at all with what your original v2 code is producing.

there a special invisible character at the start of lyrics sometimes, that breaks the synced lyrics. The synced lyrics only work when they start with a '['
The character is invisible so it was a real headscratcher to find, if you copy the first two quote marks from the string that I'm replacing and paste in notepad, and select them, notepad++ says three characters are selected.

Google says it's a "ZERO WIDTH NO-BREAK SPACE" character.
Title: Re: LyricsReloaded (Latest)
Post by: lemon_yellow on May 16, 2023, 04:02:00 PM
Huge congrats to you lemon_yellow!
I'm a massive fan/collector of synchronized lyrics myself and was super excited when I cracked the "megalobiz" provider (synced lyrics).
Unfortunately, my happiness was short lived as I stopped using it after a few days.
Reason having been that synced lyrics from the internet turned out to always be in some way a few seconds off from my own tracks (some due to my extensive trimming of files).
Anyway, I ended up deciding on retrieving unsynced lyrics only and then syncing them manually to satisfy my need for perfect synchronization.

Again, well done though on the provider. I will be adding it to the list of optional providers in the download link when I get to it.
Will also do some tests on it and revert with comments.

I too love collecting those. Just a tip, instead of re-syncing you can always add a offset value to the lyrics from music bee itself like this:

[offset: +7000]
[ar: TOTO]
[ti: Africa]
[al: Toto IV]
[by: andie.lable]
[length: 04:20]
[id: 80042142]
[00:00.00]
[00:02.87]Africa
[00:05.66]TOTO
[00:09.47]Album: Toto IV
[00:13.30]
[00:31.65]I hear the drums echoing tonight,
[00:35.02]But she hears only whispers
[00:37.12]of some quiet conversation.

99% of the times the song speed and lyrics speed is same, only the starting point can be different for both. Now I have grown accustomed to it so I can just add the offset value by guessing.
It's in milliseconds, a positive value will cause lyrics to appear sooner and negative value will cause them to appear later in the song.

If there is a tempo/speed difference tho, you can just sync them yourself as offset wont fix it.

I have also found a python program called lyricsify that can download .LRC files these in bulk and got synced lyrics for ~60% of my library with it (there are some wrong matches too here and there but I fix them as I find those). It is from that program I found about lyricsify website. It also uses these as providers but I found lyricsify the easiest to start with:

"lyricsify.py"
"megalobiz.py"
"musixmatch.py"
"netease.py"
"spotify.py"
"deezer.py"
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on May 27, 2023, 12:28:56 AM
@Mayibongwe:  I would like to suggest the addition of Bandcamp to the lyrics sources if it can be adapted to a yml file.  This site gets lyrics right from the artists/labels, including lots of just-released material.  It is being done right now by another popular player via a user addition to its own lyrics retrieval code and under consideration by another.  Hate to see MusicBee miss out!  Of course whether it can be done at all is your call.  Thanks for thinking about it at least.

Edit:  The Bandcamp website lyrics appear next to the track listing of a band's album. For example, check https://deltasleep.bandcamp.com/album/spring-island?from=discover-top ; if you mouse down the track list halfway down the page, you see a "Lyrics" link appear to the right of the title, which when clicked displays the lyrics.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on May 31, 2023, 06:13:39 AM
Hey sveakul,

I did have a look over the weekend and it's definitely possible adding it as a provider.
I'd already began working on it, but had encountered a regex hurdle that I plan to re-tackle this coming Friday.

Will keep you posted👍
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on May 31, 2023, 07:22:21 PM
Thanks a lot, looking forward to it!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 02, 2023, 08:23:22 PM
...but had encountered a regex hurdle that I plan to re-tackle this coming Friday.
For some reason, I can't get my head around this minor snag. For now, we'll have to work with the below:
It should be good enough as is, but you'll let me know of any edge cases from your side that need fine-tuning.

Code
name: Bandcamp
loader: static

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '\s', '-']
        
    title:
        type: title
        filters: artist

config:
    url: "https://{artist}.bandcamp.com/track/{title}"
    pattern: ['<meta.*?\d{4}.*?(?<lyrics>\w.*?)">', 's']

post-filters:
- utf8_encode
- entity_decode
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 02, 2023, 11:47:18 PM
Thanks for the test Bandcamp yml!  Before I test more here is a rather big problem I found right away: the script is placing a "-" in the artist name part of the URL when a space exists in the name, but since the URL from Bandcamp does not use either a space or a "-" (it just runs the name together) a failed search results.  Note:  the TRACK name is NOT run together but uses (and needs!) the "-" for spaces there as sent by the script.

Example #1:  If the artist name is Mike Kershaw, and the track title is Inside The Frame, the yml constructs the search URL as https://mike-kershaw.bandcamp.com/track/inside-the-frame and the search fails.  If only the spaces in the artist's name are run together, the URL is constructed properly and THIS search succeeds: https://mikekershaw.bandcamp.com/track/inside-the-frame.

Example #2:  the existing code works as-is if the artist name is one word: https://koenjihyakkei.bandcamp.com/track/aramidda-horva.  The search succeeds and the lyrics are displayed in the panel.

Example #3:  Like the first example, the existing code sends a search out for Opus VII - Dead End Situation as https://opus-vii.bandcamp.com/track/dead-end-situation and it fails;  remove the "-" from the artist name (but not from the track name), remove space, and it will work:  https://opusvii.bandcamp.com/track/dead-end-situation.  Once again, note that the track title does need the "-" between words as supplied by the script.

I'll wait to test more until you supply a new yml with the above issue fixed, so my eyes don't get too crossed!  Of course, use your own timetable no rush intended.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 03, 2023, 12:31:48 AM
Tried my hand at some regex;  replacing the "Variables" section of the posted yml with the following fixes the search problem I described above:

Code
variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '\s', '']
        
    title:
        type: title
        filters:
        - lowercase
        - [regex, '\s', '-']
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 03, 2023, 01:40:06 PM
Tried my hand at some regex;  replacing the "Variables" section of the posted yml with the following fixes the search problem I described above:
Love to hear it!
My test pool must not have been wide enough.
I will add it to the optional providers zip when I log on to my pc later on.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 04, 2023, 09:01:59 PM
New problem found in Bandcamp yml that affects when a search is performed with a band name shared by others on the site:

Bandcamp alters its URL construction to allow for the multiple bands with the same name.  For example, there is more than one band named "MMXX" on Bandcamp, but only one uses mmxx.bandcamp.com in the URL; others use an added genre to differentiate them, like mmxxdoom.bandcamp.com.  With the plugin's current yml script, if the track title being searched (in this case it was "Der Nukleus") isn't by the band with the initial mmxx URL construction, the song is not found.  I'm not sure if this is a way to allow for this in the yml script.  The other player I have access to with Bandcamp lyrics ability (AIMP 5.11) was able to find the track lyrics.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 05, 2023, 01:00:46 AM
Another Bandcamp yml issue:  when a band name has an ampersand in it, it needs to be changed to "and" for the search to work.  Example:

Song is Powder Pink & Sweet - Dreaming of Leaving.  YML sends out as powderpink&sweet.bandcamp.com/track/dreaming-of-leaving and search fails; needs to be sent out as powderpinkandsweet.bandcamp.com/track/dreaming-of-leaving.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 05, 2023, 08:31:35 PM
Playing with the Bandcamp YML again, I found some info that may be worth a re-write of the whole thing:  a search statement that will bring you to the track REGARDLESS of the bandcamp root URL construction beling used now for the band name.

In an example posted previously, I showed how searching for the track MMXX - Der Nukleus would fail if more than one band was named "MMXX" and so the current mmxx.bandcamp.com construction could not be used to find the track if the first one chosen with that URL was not the correct band.  The following search statement will get you directly to that track, regardless of what name the URL leads with:

https://bandcamp.com/search?q={artist}%20{title}&item_type=t

Using the example track:  https://bandcamp.com/search?q={mmxx}%20{der+nukleus}&item_type=t (https://bandcamp.com/search?q={mmxx}%20{der+nukleus}&item_type=t)

Notice that the two results are correct, and one of the URLs doesn't even HAVE the name "mmxx" in the URL!

(https://i.imgur.com/N5QBl0P.png)

If you are up to it, I would advise a re-write of the YML based on this new search statement to find the track, and whatever else is needed to locate and format the lyrics.  BTW, in this statement band names with more than one word should not be run together but constructed like the track name.  If any of you Regex experts, which I am not, could try to help out with this I'm sure Mayibongwe would appreciate it!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 10, 2023, 02:46:04 PM
Playing with the Bandcamp YML again, I found some info that may be worth a re-write of the whole thing:
a search statement that will bring you to the track REGARDLESS of the bandcamp root URL construction beling used now for the band name.
Wow! Can't believe the whole effing thing worked on a first try.
If I knew that the suggested search technique wouldn't even take 5mins to get it going, I would have had a look midweek - but...better late than never I guess.
Let me know if it needs more tweaking.

Code
name: Bandcamp
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
       
    title:
        type: title
        filters: artist

config:
    identity url: "https://bandcamp.com/search?q={artist}%20{title}&item_type=t"
    identity pattern: ['class="artcont" href="(?<identity>https://.*?)\?', 's']
    lyrics url: ""
    lyrics pattern: ['<meta.*?\d{4}.*?(?<lyrics>\w.*?)">', 's']

post-filters:
- utf8_encode
- entity_decode
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 10, 2023, 11:53:54 PM
Thanks Mayibongwe!  I did some short testing on this re-done YML, and have found after about an hour bouncing around between radio streams that:

A.  As posted, it DOES work and return results

B.  After getting 15 hits on Bandcamp with both YML#1 (your first version but including my mods to the Variables section as I posted before) and YML#2 (the new one as-is) active, I found that:

1.  8 hits were only found with YML#2
2.  2 hits were only found with YML#1
3.  5 hits were found by both the old and new YMLs
4.  Of the 15 total hits from Bandcamp, 8 ONLY were found from the Bandcamp YMLs, not any of the "usual suspects" (Genius, Musixmatch, Beenius, etc.) that I always have checked on my provider list.

I would conclude that for searching Bandcamp, the YML#2 is a significant improvement over the old one.  The two it missed but #1 found seemed to be cases of where out of 3-4 results returned by the initial web search, they were obfuscated by the credits at the site adding different artists to the first one in cases of collaborations, etc.  You just can't expect to compensate for ALL variants with tools like this.

I would recommend that everyone add Bandcamp YML#2 to their search options;  Bandcamp has many new Indie releases it takes a while for the other lyrics sites to pick up, as well as a lot of "darker style" stuff.  Of course it doesn't hurt to add the first one (with Variables mod) too in the spirit of the "fuzzy" versions of others already offered by the plugin.  
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 11, 2023, 11:50:04 AM
The two it missed but #1 found seemed to be cases of where out of 3-4 results returned by the initial web search,
they were obfuscated by the credits at the site adding different artists to the first one in cases of collaborations, etc.
I'm not able to picture what's described above, especially the details of line 2.
Do you perhaps have another example link that I could take a look at?

I've added the second Bandcamp YML to the optional providers list.
Thanks for yet another additional provider sveakul.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 11, 2023, 11:58:04 PM
The two it missed but #1 found seemed to be cases of where out of 3-4 results returned by the initial web search,
they were obfuscated by the credits at the site adding different artists to the first one in cases of collaborations, etc.
I'm not able to picture what's described above, especially the details of line 2.
Do you perhaps have another example link that I could take a look at?
Here is a related example that hopefully touches several bases as far as code and I didn't encounter it before:  both #1 and #2 return lyrics to the track, but #2 returned lyrics to the wrong song.

Song was "Souvenirs" by "The Gathering."  #2 from the log made the identity search out as:
https://bandcamp.com/search?q=the gathering%20souvenirs&item_type=t

That search returned 14 hits on the Bandcamp website.  The very first result was chosen for display, which was the song listed as "'The Gathering of Fools,' from Souvenirs by Rainbow Danger Club"--of course the wrong song.

Other hits from the 14 indicate confusion due to the fact that the real band also put out an album with the same name as the desired track, e.g. the listing "Broken Glass, from Souvenirs by The Gathering."

Another was like the first in the list, the wrong song with a tricky description: "Souvenirs, by Amoenus from Cycling Colours, a tribute to The Gathering Vol.6 by V.A."

The correct track was one of the 14, but apparently when confused by the multiple returns to the search it just picks the first one on the list.

NOTE: I also noticed for the first time that the artist part of the search query was constructed with a space, as "the gathering"  Changing that to "thegathering" made the results drop 3 blatantly wrong returns (wrong band like the above example) but still come back with 11 tracks that were from the correct band but from the ALBUM Souvenirs.

#1 YML was able to nail the correct return immediately, because in THIS case its URL "fixed artist-track" construction was a benefit rather than a liability, as only one hit would fit that bill: https://thegathering.bandcamp.com/track/souvenirs.

I guess the success of #2 YML in dealing with multiple results for the same search depends on whatever ability may be added to switch to the method of #1 YML when parsing those results.

My brain is a bit fried now so that's all the lyrics analyses for one day.  YML#2 is still worth adding as-is even if it has to stay the same for now;  thank YOU Mayibongwe for the code to begin with.
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on June 14, 2023, 07:25:01 AM
Not sure if i should ask my question here, if not just let me know.

Should synced lyrics also work with radio stations? The lyrics themselves are found and shown, but they do not move like when playing a music file?.

One a side-note, in case i haven't said it already, the plug-in works great, thanks!.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 17, 2023, 08:48:47 AM
My brain is a bit fried now so that's all the lyrics analyses for one day.
I appreciate the effort invested.
For now, I've only made the change to the artist variable where whitespaces are removed.

The two it missed but #1 found seemed to be cases of where out of 3-4 results returned by the initial web search,
they were obfuscated by the credits at the site adding different artists to the first one in cases of collaborations, etc.
Hopefully, there won't be a lot of these popping up.
But if they do in numbers, I guess we'll have to pick this up again and see if anything else can be done to improve the accuracy. Cheers!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 17, 2023, 08:58:09 AM
Not sure if i should ask my question here, if not just let me know.
Should synced lyrics also work with radio stations? The lyrics themselves are found and shown, but they do not move like when playing a music file?.
Not sure yet either. But, before we trouble the rest of the forum with the question, let's see if we can deal with it here.
Can you post a screenshot of the lyrics tab in the Tag Editor after those synced lyrics have been found? And which provider are they from?
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on June 17, 2023, 06:22:43 PM
Not sure if i should ask my question here, if not just let me know.
Should synced lyrics also work with radio stations? The lyrics themselves are found and shown, but they do not move like when playing a music file?.
Not sure yet either. But, before we trouble the rest of the forum with the question, let's see if we can deal with it here.
Can you post a screenshot of the lyrics tab in the Tag Editor after those synced lyrics have been found? And which provider are they from?

Yes i will try and post the result later this evening (i hope  :) )
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on June 17, 2023, 07:54:49 PM
(https://i.imgur.com/dRKbZqn.jpg)

I do not know how to use the Tag Editor in regard to a Radio Station?.

I made a screenshot of the lyrics tab. As you can see the synced lyrics are found but are not moving. The options to edit, embed or paste are greyed out, which makes sense in a way because there is no music file to work with. Hope that's what you wanted to see.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 17, 2023, 08:14:41 PM
Gendji:  there is no way to do this with radio stations.  Fixed files have fixed timing, etc. while Internet latency bounces around all the time to say nothing of any DSP being applied by the station.  If you add the Netease Lyrics plugin and the Desktop Lyrics plugin the latter will make an attempt to apply movement from stream hits on the Netease cloud but they end up hopelessly messed up.
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on June 18, 2023, 07:42:33 AM
Gendji:  there is no way to do this with radio stations.  Fixed files have fixed timing, etc. while Internet latency bounces around all the time to say nothing of any DSP being applied by the station.  If you add the Netease Lyrics plugin and the Desktop Lyrics plugin the latter will make an attempt to apply movement from stream hits on the Netease cloud but they end up hopelessly messed up.

Ah ok, makes sense then that it doesn't work.

I tested it yesterday also with the Mini Lyrics plug-in before your answer and it behaved just like you describe.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 24, 2023, 08:23:33 AM
I was notified of a post on email earlier today that I'd planned to reply to later in the day.
But looking now, I can't see anything - could the poster have deleted it?
hmm...looks like it has happened again.

(https://i.imgur.com/wRnQFS5.png)
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on June 24, 2023, 08:25:17 AM
hmm...looks like it has happened again.
Looks like a spam post that has been removed?
Title: Re: LyricsReloaded (Latest)
Post by: phred on June 24, 2023, 12:51:55 PM
Looks like a spam post that has been removed?
That's correct. It was a reply by a first time poster. The reply contained spam links and spam signature. Deleted and banned.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on June 24, 2023, 06:07:36 PM
Noted.

FWIW, I did get a look at the mentioned RC Lyrics Band and saw a fair number of synchronized lyrics over there.
The site has now been added to the optional providers zip.
Title: Re: LyricsReloaded (Latest)
Post by: boroda on June 24, 2023, 07:55:27 PM
@Mayibongwe, could you implement 2-pass search according to provider's priority: 1-pass searches for synchronized lyrics, if synchronized lyrics are not found, then 2-pass searches for not synchronized lyrics?
Title: Re: LyricsReloaded (Latest)
Post by: phred on June 24, 2023, 08:06:44 PM
@Mayibongwe, could you implement 2-pass search according to provider's priority: 1-pass searches for synchronized lyrics, if synchronized lyrics are not found, then 2-pass searches for not synchronized lyrics?
If implemented, please give us the option to retrieve or not retrieve synch'd lyrics. I don't use them and I don't want them.
Thanks.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on June 24, 2023, 08:20:00 PM
If implemented, please give us the option to retrieve or not retrieve synch'd lyrics. I don't use them and I don't want them.
Thanks.
+1
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on July 08, 2023, 10:54:44 AM
@Mayibongwe, could you implement 2-pass search according to provider's priority:
1-pass searches for synchronized lyrics, if synchronized lyrics are not found, then 2-pass searches for not synchronized lyrics?
I'm having difficulties understanding the request.

The way the plugin (or MusicBee itself, rather) works at the moment is that it iterates through the providers in the given order till it gets a hit.
Meaning that...if the synced lyrics providers were listed at the top of the pile, then it would first search for lyrics there.
And then when it didn't find them, it would move on to the other unsynced lyrics providers down the list.

You guys most probably already know that. I must be misunderstanding the request.
Title: Re: LyricsReloaded (Latest)
Post by: Havokdan on July 08, 2023, 12:22:01 PM
@Mayibongwe, could you implement 2-pass search according to provider's priority:
1-pass searches for synchronized lyrics, if synchronized lyrics are not found, then 2-pass searches for not synchronized lyrics?
I'm having difficulties understanding the request.

The way the plugin (or MusicBee itself, rather) works at the moment is that it iterates through the providers in the given order till it gets a hit.
Meaning that...if the synced lyrics providers were listed at the top of the pile, then it would first search for lyrics there.
And then when it didn't find them, it would move on to the other unsynced lyrics providers down the list.

You guys most probably already know that. I must be misunderstanding the request.

Perhaps he wants to say that if it is possible to search all providers for synchronized lyrics first, if not, that the search is performed for non-synchronized lyrics.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on July 08, 2023, 07:37:13 PM
The way the plugin (or MusicBee itself, rather) works at the moment is that it iterates through the providers in the given order till it gets a hit.
Meaning that...if the synced lyrics providers were listed at the top of the pile, then it would first search for lyrics there.
And then when it didn't find them, it would move on to the other unsynced lyrics providers down the list.
Exactly--and that's way it SHOULD work.  Those who like synced lyrics should simply move the providers that handle those to the top of their list.  They can also add the separate Netease and QQ Music plugins.  My philosophy is let's not mess up something that's already working great by trying to be all things to all people.
Title: Re: LyricsReloaded (Latest)
Post by: boroda on July 08, 2023, 08:52:09 PM
I'm having difficulties understanding the request.

The way the plugin (or MusicBee itself, rather) works at the moment is that it iterates through the providers in the given order till it gets a hit.
Meaning that...if the synced lyrics providers were listed at the top of the pile, then it would first search for lyrics there.
And then when it didn't find them, it would move on to the other unsynced lyrics providers down the list.

ok, then could you just add synced/unsynced remark (postfix) to provider names?
Title: Re: LyricsReloaded (Latest)
Post by: phred on July 08, 2023, 09:25:36 PM
...then could you just add synced/unsynced remark (postfix) to provider names?
This. Then those of us who want no part of synced lyrics can simply uncheck the provider and/or move the provider to the end of the list.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on July 25, 2023, 08:44:31 PM
...then could you just add synced/unsynced remark (postfix) to provider names?
This. Then those of us who want no part of synced lyrics can simply uncheck the provider and/or move the provider to the end of the list.
Apologies for the delay. That's done now.
I have simply added an asterisk to the synced lyrics providers like so:
It's only these three for now that provide synced lyrics. Suggestions for more are of course, always welcome.

-   Lyricsify*
-   Megalobiz*
-   RC Lyrics Band*
Title: Re: LyricsReloaded (Latest)
Post by: Cannibull on August 26, 2023, 02:49:52 PM
...then could you just add synced/unsynced remark (postfix) to provider names?
This. Then those of us who want no part of synced lyrics can simply uncheck the provider and/or move the provider to the end of the list.
Apologies for the delay. That's done now.
I have simply added an asterisk to the synced lyrics providers like so:
It's only these three for now that provide synced lyrics. Suggestions for more are of course, always welcome.

-   Lyricsify*
-   Megalobiz*
-   RC Lyrics Band*

Is there any way you could add support for Musixmatch/Spotify's synced lyrics? (Spotify sources their lyrics from Musixmatch)
After some digging online, I was able to find this GitHub repo: (https://github.com/akashrchandran/syrics-web)
It seems he was successfully able to extract .lrc files from Spotify. This approach has served me well for my favorite albums and artists, however, when it comes to my larger library it is far too time consuming to consider a viable solution. Downloading and embedding the files manually takes a long time, and I am unaware of any solution that can embed .lrc files into .flac files en masse. I would really appreciate it if you considered adding Musixmatch/Spotify as a synced lyrics provider. :)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on August 29, 2023, 06:14:56 AM
Gonna look into it some more, but first signs indicate that it may be beyond the capabilities of this plugin.
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on September 27, 2023, 05:48:53 AM
Hey @Mayibongwe, could you please take a look at the Built-in Genius provider when you have chance, it seems to have stopped working recently?
After trying a few tracks and it not working, I went back and tested a song that worked fine about 2 weeks ago but it's no longer finding it now (song name/url below).

Tinashe - Gravity
(https://genius.com/Tinashe-gravity-lyrics)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 27, 2023, 12:52:17 PM
Hi Sekt0r. Sure. Will have a look over the weekend.
(along with the request from Cannibull - had forgotten about that)
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on September 27, 2023, 04:50:48 PM
Hey @Mayibongwe, could you please take a look at the Built-in Genius provider when you have chance, it seems to have stopped working recently?
After trying a few tracks and it not working, I went back and tested a song that worked fine about 2 weeks ago but it's no longer finding it now (song name/url below).

Tinashe - Gravity
(https://genius.com/Tinashe-gravity-lyrics)
Same here.  FWIW, the Beenius plugin still works fine.

The custom Genius script for AIMP is also currently not working.(fixed!)  However, those for OpenLyrics, ESLyric, and LSP3-multisource for Foobar are.  Info presented in case it may help diagnose the MusicBee script.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 28, 2023, 06:25:03 PM
My bad. The YML's I gave you earlier were not actually from the latest built-in versions.
Try these ones (both #1 and #2 should be fixed for you):

Code
...
Six months between the last two Genius breakdowns - not bad at all!
When I started, I thought the providers would be misbehaving more often than this. Nice to know we've had a smooth ride so far.

I'll rebuild the plugin tomorrow evening as those files are on a different pc to the one I'm logged in with now.
Those who want to use the fix right now can follow the quoted link to access the latest Genius yml and then change the lyrics pattern to:

['<div data-lyrics-container="true" class="Lyrics__Container-sc-1ynbvzw-.*?">(?<lyrics>.*)<div class="LyricsFooter__Container.*?">', 's']
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 28, 2023, 06:43:00 PM
Is there any way you could add support for Musixmatch/Spotify's synced lyrics? (Spotify sources their lyrics from Musixmatch)
After some digging online, I was able to find this GitHub repo: (https://github.com/akashrchandran/syrics-web)
It seems he was successfully able to extract .lrc files from Spotify.
Is the linked website still running well?
I don't use Spotify and have just tried downloading the lyrics using that site, but it didn't seem to find anything.
Does one have to be logged in or something?

(https://i.imgur.com/EZoBJ9D.png)

Edit:
...first signs indicate that it may be beyond the capabilities of this plugin.
Sorry man, I don't think synced Musixmatch/Spotify lyrics are gonna be a possibility with this plugin anytime soon.
I checked it out last night and it's a tough nut to crack.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on September 29, 2023, 11:18:38 PM
could you please take a look at the Built-in Genius provider when you have chance, it seems to have stopped working recently?
Should be working fine now if you redownload the plugin.
Title: Re: LyricsReloaded (Latest)
Post by: Sekt0r on September 30, 2023, 02:14:48 PM
Yeap all good now. Thank you.
Title: Re: LyricsReloaded (Latest)
Post by: Dzib on September 30, 2023, 04:16:34 PM
Sorry to ask if it has been answered already but despite searching this thread, I couldn't find an answer : How to retrieve lyrics for a song if the title contains parentheses. It means that the title will be cropped and the lyrics won't be found....
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on September 30, 2023, 04:34:38 PM
How to retrieve lyrics for a song if the title contains parentheses. It means that the title will be cropped and the lyrics won't be found....
It might help if you provided a specific example of a song that others can test.
Title: Re: LyricsReloaded (Latest)
Post by: Dzib on September 30, 2023, 04:35:38 PM
How to retrieve lyrics for a song if the title contains parentheses. It means that the title will be cropped and the lyrics won't be found....
It might help if you provided a specific example of a song that others can test.

Melancholy (Holy Martyr) by Iced Earth
Not found on Genius
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on September 30, 2023, 04:51:30 PM
Melancholy (Holy Martyr) by Iced Earth
Not found on Genius
Strange, for me it does get found at the first attempt:
(https://i.imgur.com/kGvQZ2O.png)

And my title even has two phrases that are between parentheses:

(https://i.imgur.com/qiZfMkC.png)

Are you using a recent version of the plugin?
(the current one being 1.2.0.6)
Title: Re: LyricsReloaded (Latest)
Post by: Dzib on September 30, 2023, 05:10:16 PM
Melancholy (Holy Martyr) by Iced Earth
Not found on Genius
Strange, I get this:
(https://i.imgur.com/kGvQZ2O.png)

Are you using a recent version of the plugin?
(the most current being 1.2.0.6)

Yes, the latest version
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on September 30, 2023, 05:12:49 PM
Yes, the latest version

Can you post the exact song title you have in code?

This is what I tested this on, and as you saw, for me it works:

Code
Melancholy (Holy Martyr) (live)
Title: Re: LyricsReloaded (Latest)
Post by: Cannibull on October 01, 2023, 12:41:55 AM
Is there any way you could add support for Musixmatch/Spotify's synced lyrics? (Spotify sources their lyrics from Musixmatch)
After some digging online, I was able to find this GitHub repo: (https://github.com/akashrchandran/syrics-web)
It seems he was successfully able to extract .lrc files from Spotify.
Is the linked website still running well?
I don't use Spotify and have just tried downloading the lyrics using that site, but it didn't seem to find anything.
Does one have to be logged in or something?

(https://i.imgur.com/EZoBJ9D.png)

Edit:
...first signs indicate that it may be beyond the capabilities of this plugin.
Sorry man, I don't think synced Musixmatch/Spotify lyrics are gonna be a possibility with this plugin anytime soon.
I checked it out last night and it's a tough nut to crack.

It broke recently when Spotify paywalled their lyrics. It used to reliably find lyrics for almost any song.

I don't know if this helps at all, but I'll include it regardless. I found this Foobar plugin that can automatically scan your library and output .lrc files from Musixmatch. It requires a user token to work and it is pretty hit or miss but it still works after the Spotify paywall.

Plugin: https://www.foobar2000.org/components/view/foo_openlyrics
How to get the required token: https://spicetify.app/docs/faq/#sometimes-popup-lyrics-andor-lyrics-plus-seem-to-not-work (Steps 1-5)
Title: Re: LyricsReloaded (Latest)
Post by: Dzib on October 01, 2023, 11:09:34 AM
Yes, the latest version

Can you post the exact song title you have in code?

This is what I tested this on, and as you saw, for me it works:

Code
Melancholy (Holy Martyr) (live)


In the log, i have this :
Code
30/09/2023 05:08:40 [DEBUG] Lyrics request: Iced Earth - Melancholy - Something Wicked This Way Comes - Genius
30/09/2023 05:08:40 [INFO] Genius tries to load the lyrics...
30/09/2023 05:08:40 [DEBUG] The constructed URL: https://genius.com/iced-earth-melancholy-lyrics
30/09/2023 05:08:40 [FAIL] no lyrics found from Genius
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 01, 2023, 02:38:14 PM
Melancholy (Holy Martyr) by Iced Earth
Not found on Genius
This is what I tested this on, and as you saw, for me it works:
Melancholy (Holy Martyr) (live) by Iced Earth
In the <Title> tag, MusicBee automatically removes the last parenthesized portion before sending it to the plugin:
This is largely helpful, except ofc in a few instances like your title above - see here: https://getmusicbee.com/forum/index.php?topic=31635.0

Melancholy (Holy Martyr) is submitted to the plugin as Melancholy
and Melancholy (Holy Martyr) (live) as Melancholy (Holy Martyr)

The fuzzy versions of the providers are much more suited for handling tracks with tags that are not an exact match.
Enabling Genius (fuzzy) should pick your song up. You'll want to position it below the normal Genius for optimal results.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 01, 2023, 02:54:14 PM
I don't know if this helps at all, but I'll include it regardless.
It will help some day for sure. But for now, this plugin only relies on webpages that have the lyrics provided in plain text.
The synchronized versions of the Musixmatch lyrics are not available for viewing on any webpage (just in web-based applications like your Spotify, Instagram, etc.)

The original author of this plugin had structured it in a way that catered for various retrieval methods - static, search, and API.
At the moment, only the first two are implemented. I assume the "token" game you mentioned that other plugins are using is API based?

That would all be new territory for me I'm afraid. I would have to research a few things for which I unfortunately no longer have the kind of time for nowadays.
But yeah, maybe some day, one of us here will be able to get the API side of searching on this plugin going.

Edit:
By the way, on the forum we have somebody who's managed to create Genius and Museexmatch plugins that have direct access.
So you may try contacting slonopot to see if he wouldn't be able to fetch synced lyrics on his side:
https://getmusicbee.com/forum/index.php?topic=37508.0
Title: Re: LyricsReloaded (Latest)
Post by: Dzib on October 02, 2023, 09:36:34 AM
The fuzzy versions of the providers are much more suited for handling tracks with tags that are not an exact match.
Enabling Genius (fuzzy) should pick your song up. You'll want to position it below the normal Genius for optimal results.

I didn't think about the fuzzy version, good advice  :)
Thanks for the tip, now I better understand how the plugin is working  ;)
Title: Re: LyricsReloaded (Latest)
Post by: DrDinosaur on October 10, 2023, 12:53:18 AM
I'm on latest version.

A bunch of providers aren't working.

I get:
Code
10/10/2023 12:38:18 [DEBUG] Loading config from file: C:\Users\X\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\Lyrics Mode.yml
10/10/2023 12:38:18 [ERROR] Failed to load a configuration:
10/10/2023 12:38:18 [ERROR] Unknown provider type search, skipping
10/10/2023 12:38:18 [DEBUG] Loading config from file: C:\Users\X\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\Lyrics.yml
10/10/2023 12:38:18 [ERROR] Failed to load a configuration:
10/10/2023 12:38:18 [ERROR] Unknown provider type search, skipping
10/10/2023 12:38:18 [DEBUG] Loading config from file: C:\Users\X\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\Lyricsify.yml
10/10/2023 12:38:18 [ERROR] Failed to load a configuration:
10/10/2023 12:38:18 [ERROR] Unknown provider type search, skipping
10/10/2023 12:38:18 [DEBUG] Loading config from file: C:\Users\X\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\Megalobiz.yml
10/10/2023 12:38:18 [ERROR] Failed to load a configuration:
10/10/2023 12:38:18 [ERROR] Unknown provider type search, skipping
10/10/2023 12:38:18 [DEBUG] Loading config from file: C:\Users\X\AppData\Roaming\MusicBee\mb_LyricsReloaded\providers\Metal Archives.yml
10/10/2023 12:38:18 [ERROR] Failed to load a configuration:
10/10/2023 12:38:18 [ERROR] Unknown provider type search, skipping
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 10, 2023, 05:22:27 AM
Did it work before, then all of a sudden not?

Where did you install mb_LyricsReloaded.dll?  There should be only one copy on the PC.  Is "auto-retrieve missing lyrics for the playing track" in Prefs/Tags(2)?

Working fine here.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 10, 2023, 06:38:23 AM
Where did you install mb_LyricsReloaded.dll?  There should be only one copy on the PC.
Yeah, by the looks of it, you might still have an old LyricsReloaded install.
What's the plugin version number appearing on the log file that you submitted?

The error "Unknown provider type search" means the plugin cannot recognize the "search loader" which is something I introduced when I began working on this plugin.
So confirm the plugin version you have there.
Do you have any "fuzzy" (Genius, Deezer, Musixmatch) versions of the providers appearing in your MusicBee providers list? (I doubt)
Title: Re: LyricsReloaded (Latest)
Post by: DrDinosaur on October 10, 2023, 05:34:49 PM
Fixed.

I "installed" 1.2.0.6 via the add plugin, it said failed, but I checked folder and saw it. Turns out I have an old 1.1 version still there and didn't realise but was using the new providers.

Works now.
Title: Re: LyricsReloaded (Latest)
Post by: bjoerns on October 13, 2023, 11:10:56 PM
The Song Lyrics provider had a wrong pattern. I changed it in Song Lyrics.yml to
Code
pattern: ['<p id="songLyricsDiv"  class=".*">(?<lyrics>.*?)</p>', s]

Then I restarted MusicBee.

I tested it for Bukahara - Durak. The log entries are:
Code
13.10.2023 11:59:52 [DEBUG] Lyrics request: Bukahara - Durak - Strange Delight - Song Lyrics
13.10.2023 11:59:52 [INFO] Song Lyrics tries to load the lyrics...
13.10.2023 11:59:52 [DEBUG] The constructed URL: http://www.songlyrics.com/bukahara/durak-lyrics/
13.10.2023 11:59:53 [SUCCESS] lyrics found from Song Lyrics!

But altough there is "SUCCESS", the lyrics are not written in the file and in the window is written "Keine Änderungen" (No changes). What do I have to change?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 14, 2023, 05:50:45 AM
Try replacing the entire Song Lyrics yml with this one from GitHub--it works fine for me.  Title will show up in the plugin's sources list as "Song Lyrics GH" so it is not confused with the one supplied by the plugin:

Code
name: Song Lyrics GH

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '[^\sa-z0-9]', ""]
        - [strip_nonascii, -]
    title:
        type: title
        filters: artist

config:
    url: "http://www.songlyrics.com/{artist}/{title}-lyrics/"
    pattern: ['<div id="songLyricsDiv-outer">(?<lyrics>.*?)</div>', s]
    
post-filters:
- strip_html
- entity_decode
- clean_spaces
- utf8_encode
- [fix_broken_chars, 'Ã', ISO-8859-1]
- [replace, 'þ', 'ß']
Title: Re: LyricsReloaded (Latest)
Post by: bjoerns on October 14, 2023, 07:55:37 AM
Try replacing the entire Song Lyrics yml with this one from GitHub--it works fine for me.  Title will show up in the plugin's sources list as "Song Lyrics GH" so it is not confused with the one supplied by the plugin

Thank you very much, that worked!
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 17, 2023, 12:55:01 AM
@Mayibongwe:  I have confirmed what bjoerns said about the Song Lyrics yml provided in the latest providers.zip package no longer working.  It would be a good idea to replace it with the version I posted above which is definitely still working as of right now.  It was downloaded originally from frankz's old GitHub lyricsreloaded "configs" folder.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 17, 2023, 05:43:02 PM
It would be a good idea to replace it with the version I posted above.
Done...which reminds me - I haven't looked at most of those since they were first added.
I will have a look over the weekend to see if there are any others that have broken down since then.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 17, 2023, 07:52:05 PM
It would be a good idea to replace it with the version I posted above.
Done...
Thanks Mayibongwe. Will you be releasing an update sveakul's code whether or not you find providers that need updating?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 17, 2023, 10:24:59 PM
Quote
Will you be releasing an update sveakul's code whether or not you find providers that need updating?
He already has released the working Song Lyrics code yml I posted, it's in the current providers.zip download.
Title: Re: LyricsReloaded (Latest)
Post by: phred on October 17, 2023, 10:55:39 PM
He already has released the working Song Lyrics code yml I posted, it's in the current providers.zip download.
Ahhh ... I guess that's what he meant when he said "Done." <sigh>

Thanks sveakul
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 17, 2023, 11:44:03 PM
Unfortunately it looks like one of the results of the upload site's (Google Drive) zipped download process is that none of the yml's inside the folder within providers.zip now retain their original modified date--as a result, they all look like they were made today!  Mayibongwe, any way around this?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 18, 2023, 06:11:20 AM
My bad sveakul, it should already be behaving that way.
Last night, I made the upload from a work pc, when I usually make it from a monitored folder on my home pc.
I will rectify the modification dates just now.

Edit: Should be fine now. Thanks for picking that up.
Title: Re: LyricsReloaded (Latest)
Post by: aaaaaaa on October 19, 2023, 02:51:41 PM
I got a problem, the plugin sometimes doesnt get the right lyric or any at all, i think it is because of my music file tittle format which is "artist - tittle", and there is also the contributing artist.
So when it searched for the lyric it is double to be "artist" - "artist - tittle" resulting in wrong lyric or unable to find.
Is there a way to disable searching with artist or make it search using tittle only?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on October 19, 2023, 05:18:39 PM
First, "tittle" is spelled "title"  ;) ,

I'm not sure what to make of your post, but it sounds like your music is not tagged internally with standard metadata, and you are talking about file names.  Lyric searchers use the content of standard tags (Id3v2, Vorbis, etc.) to perform the search, with track title and artist normally the required fields.
Title: Re: LyricsReloaded (Latest)
Post by: aaaaaaa on October 21, 2023, 07:51:30 AM
Well im sorry for the misspelling as english is not my native language
my music file looks like this
(https://imagizer.imageshack.com/img923/9640/pPqaPA.png)
So the engine uses double artist for searching
Code
19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Google
19/10/2023 10:17:37 [INFO] Google tries to load the lyrics...
19/10/2023 10:17:37 [DEBUG] The constructed URL: https://www.google.com/search?q=imagine dragons - sucker for pain+lyrics

19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Genius
19/10/2023 10:17:37 [INFO] Genius tries to load the lyrics...
19/10/2023 10:17:37 [DEBUG] The constructed URL: https://genius.com/imagine-dragons-imagine-dragons-sucker-for-pain-lyrics

19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Musixmatch
19/10/2023 10:17:37 [INFO] Musixmatch tries to load the lyrics...
19/10/2023 10:17:37 [DEBUG] The constructed URL: http://www.musixmatch.com/lyrics/imagine-dragons/imagine-dragons-sucker-for-pain

19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Deezer
19/10/2023 10:17:37 [INFO] Deezer tries to load the lyrics...

19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Metal Archives
19/10/2023 10:17:37 [INFO] Metal Archives tries to load the lyrics...
19/10/2023 10:17:37 [DEBUG] The constructed google identity URL: https://www.google.com/search?q=Metal Archives+Imagine_Dragons+Imagine Dragons - Sucker For Pain+

19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Genius (fuzzy)
19/10/2023 10:17:37 [INFO] Genius (fuzzy) tries to load the lyrics...
19/10/2023 10:17:37 [DEBUG] The constructed identity URL: https://www.deezer.com/search/imagine dragons - sucker for pain+imagine dragons/track
19/10/2023 10:17:37 [DEBUG] The constructed identity URL: https://www.deezer.com/search/imagine dragons - sucker for pain+imagine dragons/track
19/10/2023 10:17:37 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Genius+imagine dragons - sucker for pain+imagine dragons

19/10/2023 10:17:37 [DEBUG] Lyrics request: Imagine Dragons - Imagine Dragons - Sucker For Pain -  - Deezer (fuzzy)
19/10/2023 10:17:37 [INFO] Deezer (fuzzy) tries to load the lyrics...
19/10/2023 10:17:37 [DEBUG] The constructed identity URL: https://www.google.com/search?q=Deezer+imagine dragons - sucker for pain+imagine dragons
19/10/2023 10:17:37 [FAIL] no lyrics found from Genius
19/10/2023 10:17:37 [FAIL] no lyrics found from Musixmatch
19/10/2023 10:17:37 [WARN] The pattern class="BNeawe tAd8D AP7Wnd">(?<lyrics>.*)Source: didn't match!
19/10/2023 10:17:37 [FAIL] no lyrics found from Google
19/10/2023 10:17:37 [DEBUG] The constructed lyrics URL: https://genius.com/Lil-wayne-wiz-khalifa-imagine-dragons-logic-and-ty-dolla-sign-sucker-for-pain-lyrics
19/10/2023 10:17:37 [WARN] The google identity pattern (?<identity>https://www.metal-archives.com/albums/Imagine_Dragons/.*?)["&] didn't match!
19/10/2023 10:17:37 [FAIL] no lyrics found from Metal Archives
19/10/2023 10:17:38 [DEBUG] The constructed lyrics URL: https://www.deezer.com/en/track/127247963
19/10/2023 10:17:39 [WARN] The identity pattern "SNG_ID":"(?<identity>\d+)","PRODUCT_TRACK_ID":"\d+","UPLOAD_ID":\d+,"SNG_TITLE":"imagine dragons - sucker for pain","ART_ID":"\d+","PROVIDER_ID":"\d+","ART_NAME":"imagine dragons" didn't match!
19/10/2023 10:17:39 [FAIL] no lyrics found from Deezer
19/10/2023 10:17:39 [SUCCESS] lyrics found from Deezer (fuzzy)!
19/10/2023 10:17:40 [SUCCESS] lyrics found from Genius (fuzzy)!
i hope there is a way to exclude artist name from being used in search because some songs cant be found, otherwise i think i have to remove the names from my music files
Title: Re: LyricsReloaded (Latest)
Post by: frankz on October 21, 2023, 01:22:16 PM
The solution isn't to remove the artist names from your artist tags, the solution is to remove the artist names from your title tags.  They don't belong there.
Title: Re: LyricsReloaded (Latest)
Post by: BillH on October 25, 2023, 05:56:53 AM
I need help with installing the new version of Lyrics reloaded.

Following the instructions, I tried to install it from MusicBee -> Edit -> Preferences -> Plugins -> Add Plugin.  There is no Add Plugin option (I'm assuming that is because I already have an older version installed).

So I thought maybe I had to uninstall the old version to install the new version.  I clicked on Uninstall and got the following error:

MusicBee v3.5.8692.38789D  (Win10.0), 24 Oct 2023 21:56:

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at MusicBeePlugin.Plugin.Uninstall()
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at #=z5JnFeWoWZ2oEgm8XZw==.#=zEJ5XCz4=()

Am I doing something wrong?

Thanks,
Bill

Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on October 25, 2023, 06:34:37 AM
Can't give a detailed response right now, but:

I am aware that the uninstall function doesn't play well with this plugin.
I have briefly looked at it before but couldn't pinpoint if the issue was on the plugin's side or MusicBee's - I will revisit this some other time.

For now, go straight to the plugin's folder in Windows Explorer and delete it (you appear to be using the installer version - refer to this thread (https://getmusicbee.com/forum/index.php?topic=36875.0) to locate the plugins folder)
After deleting it, you should be able to add the new plugin version using the 'add plugin' button at the top right of this screenshot:

(https://i.imgur.com/fjaX24i.png)
Title: Re: LyricsReloaded (Latest)
Post by: BillH on October 25, 2023, 05:10:06 PM
For now, go straight to the plugin's folder in Windows Explorer and delete it (you appear to be using the installer version - refer to this thread (https://getmusicbee.com/forum/index.php?topic=36875.0) to locate the plugins folder)
After deleting it, you should be able to add the new plugin version using the 'add plugin' button at the top right of this screenshot:


Thanks Mayibongwe,  that worked.

Thanks,
Bill
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 04, 2023, 07:59:54 PM
Hi, would someone be kind enough to help me create a .yml provider file for https://www.songtexte.com please? I find it to be a really great source of lyrics, but I don't quite understand how to create the .yml file correctly. :)
Title: Re: LyricsReloaded (Latest)
Post by: boroda on November 04, 2023, 10:03:12 PM
I am aware that the uninstall function doesn't play well with this plugin.
I have briefly looked at it before but couldn't pinpoint if the issue was on the plugin's side or MusicBee's - I will revisit this some other time.

none of my plugins have any issues with the Uninstall() plugin function. but keep in mind that you can only delete some resources used by the plugin (e.g. settings file) inside this function. Clicking the "uninstall" button in MB prefs won't delete the plugin itself.

though Steven promised to solve this issue in MB 3.6
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 05, 2023, 10:05:01 AM
none of my plugins have any issues with the Uninstall() plugin function. but keep in mind that you can only delete some resources used by the plugin (e.g. settings file) inside this function. Clicking the "uninstall" button in MB prefs won't delete the plugin itself.

though Steven promised to solve this issue in MB 3.6
Thanks for the insights, man.
After reading your post above and point #2 discussed here (https://getmusicbee.com/forum/index.php?topic=37084.msg212406#msg212406), I realized the flaw in reloaded's uninstall() function.
That's now fixed and I can confirm that MB v3.6 does indeed delete the .dll on restart.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 05, 2023, 10:05:21 AM
Hi, would someone be kind enough to help me create a .yml provider file for https://www.songtexte.com please?
I find it to be a really great source of lyrics.
The website mentioned that it sources its lyrics from Musixmatch - a provider that already comes bundled with the plugin.
But I suppose that's already the case with most of the optional providers in that zip file. So, I've decided to add it anyway:

Code
name: Songtexte
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '\s', "-"]
        
    title:
        type: title
        filters: artist

config:
    identity url: "https://www.google.com/search?q=site:songtexte.com+{title}+{artist}"
    identity pattern: ['(?<identity>https://www.songtexte.com/songtext/{artist}/{title}-.*?\.html)', 's']
    lyrics url: ""
    lyrics pattern: ['<div id="lyrics">(?<lyrics>.*)<p id="artistCopyright', 's']

post-filters:
- [regex, '<br />[\s\S]<div id=[\s\S]*?</script>[\s\S]<br />', '']
- strip_html
- utf8_encode
- entity_decode
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 05, 2023, 11:05:35 PM
The website mentioned that it sources its lyrics from Musixmatch - a provider that already comes bundled with the plugin.
But I suppose that's already the case with most of the optional providers in that zip file. So, I've decided to add it anyway:

Thanks so much! I really appreciate that. :)

...For some reason, it's adding 5 empty lines at the end of the lyrics for every song. Any idea why?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 06, 2023, 05:29:28 AM
...For some reason, it's adding 5 empty lines at the end of the lyrics for every song. Any idea why?
Haven't been able to reproduce that on the songs I've tested this with.
Any specific song we can have a look at?
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 06, 2023, 10:23:49 PM
Haven't been able to reproduce that on the songs I've tested this with.
Any specific song we can have a look at?

That's certainly interesting! I have this problem with literally every single song, and I've tested several dozen so far.

Here's just one example: the song "A Head Full of Dreams" by Coldplay.

Here is the lyrics page - there are no extra line breaks or empty lines at the end:

https://www.songtexte.com/songtext/coldplay/a-head-full-of-dreams-3b679004.html

And here's how it looks in MusicBee after importing the lyrics with your yml file - note the 5 empty lines below the last line of text. You can see my mouse cursor on the last empty line there:

(https://i.ibb.co/rbrW39d/musicbee.png)

In case it helps, here's what I'm doing: on the Music tab in MusicBee, I right click on a song, select "Auto-Tag by Track", then "Update Missing Lyrics".
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 06, 2023, 10:59:35 PM
...And a related question, if I may:

The yml file you created for songtexte.com uses a Google search for the "identity url".

You once wrote in another post (https://getmusicbee.com/forum/index.php?topic=36952.msg203146#msg203146), that using a Google search for the identity url has "a side effect in which songs that aren't available on the website, would return incorrect lyrics instead."

Could that be a possible risk with the songtexte yml file you've created? Would it be more accurate to use an identity url based on the songtexte.com url instead?

Sorry if this is a silly question...
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 07, 2023, 05:29:22 AM
That's certainly interesting! I have this problem with literally every single song, and I've tested several dozen so far.
Weird one for sure. Below is what I've been seeing all along - there aren't any line breaks:
(https://i.imgur.com/Cmpm229.png)

After experimenting with inserting the lyrics source at the bottom, the line breaks are now showing up:
(https://i.imgur.com/eoZMbN7.png)

Inserting - [regex, '\n\n+(?!\w)', ''] at the end of the yml should fix it. I will make the correction on the uploaded file later on.

Could that be a possible risk with the songtexte yml file you've created?
Would it be more accurate to use an identity url based on the songtexte.com url instead?
Thumbs up for also picking that up. I will also correct that.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on November 07, 2023, 05:30:32 PM
The website mentioned that it sources its lyrics from Musixmatch - a provider that already comes bundled with the plugin.
But I suppose that's already the case with most of the optional providers in that zip file. So, I've decided to add it anyway:

Thanks so much! I really appreciate that. :)

...For some reason, it's adding 5 empty lines at the end of the lyrics for every song. Any idea why?
I'm not trying to be "Scrooge," but is there any reason using the existing Musixmatch plugin isn't good enough for you when Mayibongwe has already indicated that this is where "songtexte" is getting its lyrics from?  There is also the "Museexmatch" API-based plugin that can be used simultaneously with his Musixmatch yml version.
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 07, 2023, 08:18:43 PM
Inserting - [regex, '\n\n+(?!\w)', ''] at the end of the yml should fix it. I will make the correction on the uploaded file later on.

Thanks, much appreciated!

I added this to the very end of my yml file:

Code
- [regex, '\n\n+(?!\w)', '']

And it no longer adds the 5 line breaks at the end of the lyrics 🥳 - however, it also now removes some of the double-line (ie. paragraph) breaks from the middle of the lyrics, and puts the first line of the new paragraph at the end of the last line of the previous paragraph:

(https://i.ibb.co/B4SMksq/y-I7iti-FRi9.png)

Compare with the source here:
https://www.songtexte.com/songtext/coldplay/everyday-life-g438def87.html
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 07, 2023, 08:25:07 PM
I'm not trying to be "Scrooge," but is there any reason using the existing Musixmatch plugin isn't good enough for you when Mayibongwe has already indicated that this is where "songtexte" is getting its lyrics from?  There is also the "Museexmatch" API-based plugin that can be used simultaneously with his Musixmatch yml version.

Fair question! :)

For me, the problem with using the built-in Musixmatch plugin is that it blocks me after I've fetched just a few song lyrics. If I then go to the Musixmatch webpage, it says that my IP has been blocked, and I need to solve a captcha, however that doesn't unblock MusicBee.

I've read elsewhere that Musixmatch is known to do this, and AFAIK there is no solution.

So far, I haven't been blocked at all with Songtexte, so using them instead is a win for me.

I'm not aware of a Musixmatch yml version though - there wasn't one inside the providers.zip file. Is it something different to the built-in one?

And I also haven't heard of the "Museexmatch API-based plugin". Where can I find that? Will it allow me to use Musixmatch without getting blocked?
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on November 08, 2023, 01:49:05 AM
Fair answer!  That is strange that you get blocked so quickly from Musixmatch, makes me wonder if either you live in an area they geo-restricted or are getting assigned an IP from a VPN that has been over used there by others.

By "yml version" I meant the Musixmatch searcher built-in to LyricsReloaded, sorry.  One thing to try is moving Musixmatch farther down the searcher list, as I believe lyrics aren't actually fetched from it, if they are found in sources listed previously (Genius is first on my list and finds an incredible amount of hits and hasn't blocked me yet).

"Museexmatch" is an alternative Musixmatch lyric searcher plugin for MusicBee and can be downloaded here:
https://github.com/slonopot/Museexmatch (https://github.com/slonopot/Museexmatch)
It uses API-based searching instead of html "scraping" and as such is very accurate and resistant to any changes on the website.  It has a Forum section here: https://getmusicbee.com/forum/index.php?topic=37508.0 (https://getmusicbee.com/forum/index.php?topic=37508.0)

Once installed, Museexmatch will appear as an additional source choice in the regular MB lyric source choices in Prefs/Tags(2)/lyrics.  It does not conflict with the LyricsReloaded version and can be used simultaneously.  A warning, you need to follow the install directions very carefully as far as what goes where.  If like me you are using the Portable version of MusicBee you should stick with version 1.01 not 1.02-- the latter has changes in where files are placed that are only compatible as-is with the Installer (Desktop) version of MusicBee.  I've never been blocked using it.  FWIW, the same developer also makes an API-based Genius searcher for MB, "Beenius" (https://getmusicbee.com/forum/index.php?topic=36605.0 (https://getmusicbee.com/forum/index.php?topic=36605.0)).  If you have the Portable MusicBee, stick with the 1.3.6 version of Beenius instead of 1.3.7 for the same reasons described above.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 08, 2023, 05:30:03 AM
however, it also now removes some of the double-line (ie. paragraph) breaks from the middle of the lyrics.
Oopsie - does this help it?
[regex, '\n\n\n+(?!\w)', '']
Title: Re: LyricsReloaded (Latest)
Post by: Dweller95 on November 08, 2023, 08:34:33 PM
I'm not sure why, but I can't seem to download the plugin from Google Drive. It no longer shows a download option.
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 08, 2023, 09:42:21 PM
Oopsie - does this help it?
- [regex, '\n\n\n+(?!\w)', '']

Yeah, that seems to have done the trick - thanks!!!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 12, 2023, 04:06:23 PM
I'm not sure why, but I can't seem to download the plugin from Google Drive. It no longer shows a download option.
Still unable to?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 12, 2023, 04:09:31 PM
Would it be more accurate to use an identity url based on the songtexte.com url instead?
Thumbs up for also picking that up. I will correct that.
For some reason, I'm not able to access the website at the moment. So the above change may have to wait.
Are you able to open any of its webpages just fine?
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on November 13, 2023, 12:15:39 AM
For some reason, I'm not able to access the website at the moment. So the above change may have to wait.
Are you able to open any of its webpages just fine?

Yeah it's working fine for me at the moment. I hope it's just a temporary thing for you! :)
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 13, 2023, 03:56:52 PM
Must have been a glitch. I can access it fine now.

Would it be more accurate to use an identity url based on the songtexte.com url instead?

Code
name: Songtexte
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase
        - [regex, '\s', "-"]
        
    title:
        type: title
        filters: artist

config:
    identity url: "https://www.songtexte.com/search?q={title}+{artist}&c=all"
    identity pattern: ['(?<identity>songtext/{artist}/{title}-.*?\.html)', 's']
    lyrics url: "https://www.songtexte.com/"
    lyrics pattern: ['<div id="lyrics">(?<lyrics>.*)<p id="artistCopyright', 's']

post-filters:
- [regex, '<br />[\s\S]<div id=[\s\S]*?</script>[\s\S]<br />', '']
- strip_html
- utf8_encode
- entity_decode
- [regex, '\n\n\n+(?!\w)', '']
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on November 16, 2023, 11:23:47 AM
Two questions if i may :-).

1. I have updated to the latest version 1.2.0.7 but the log file states:

Code
[INFO] mb_LyricsReloaded in version 1.2.0.6 started!
Is that just a display error? mb_LyricsReloaded.dll itself says 1.2.0.7, Date: 05-11-2023.

2. Does Lyricsify still work?

The only synced lyrics that are working for me at the moment are from Megalobiz. There are no errors in the log. I read somewhere that the Lyricsify website uses CAPTCHA now and that could be a problem.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on November 17, 2023, 05:33:24 PM
Is that just a display error? mb_LyricsReloaded.dll itself says 1.2.0.7, Date: 05-11-2023.
It indeed is. I will make a silent update later on to correct the version number on the log.

I read somewhere that the Lyricsify website uses CAPTCHA now and that could be a problem.
That looks to be true. A way to get around it would be to conduct the search on google rather than the site itself.

Code
name: Lyricsify
loader: search

variables:
    artist:
        type: artist
        filters:
        - lowercase

    title:
        type: title
        filters: artist

config:
    identity url: "https://www.google.com/search?q=site:www.lyricsify.com+{artist}+{title}"
    identity pattern: ['(?<identity>lrc/.*?\.\d+)', 's']
    lyrics url: "https://www.lyricsify.com/"
    lyrics pattern: ['<div id="lyrics_.\d*_details">(?<lyrics>.*?)</div>', 's']
   
post-filters:
- strip_html
- utf8_encode
- entity_decode
- clean_spaces
- trim
- [regex, '', '', s]
Title: Re: LyricsReloaded (Latest)
Post by: Gendji on November 17, 2023, 10:47:00 PM
It indeed is. I will make a silent update later on to correct the version number on the log.

Roger that.

That looks to be true. A way to get around it would be to conduct the search on google rather than the site itself.

Tested and using it, Lyricsify is working again.

Thank you.
Title: Re: LyricsReloaded (Latest)
Post by: Dweller95 on November 20, 2023, 02:27:53 PM
I'm not sure why, but I can't seem to download the plugin from Google Drive. It no longer shows a download option.
Still unable to?

I can, but I have to download the folder instead of the individual zip files. Before, I could Shift-Click both and right-click, then select the Download option.
Title: Re: LyricsReloaded (Latest)
Post by: gaiastar on December 17, 2023, 02:42:29 PM
hi
beautiful plugin  :-*
I have tried to download several times with different browsers and used 7zip and winrar
and the file ReadMe.txt is corrupted  , is in this file ReadMe.txt how to uninstall correctly ? I mean remove the settings from musicbee settings file and in short make a clean uninstall
i'm asking about a clean uninstall just if something goes wrong and re-install from scratch
thanks
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on December 17, 2023, 05:43:16 PM
@gaiastar:  To uninstall (paths reflect having the PORTABLE version of MusicBee):

1.  In MusicBee/Plugins, delete the file mb_LyricsReloaded.dll

2.  In MusicBee/AppData, delete the folder mb_LyricsReloaded and its contents

I can confirm that the readme.txt as currently in the uploaded package is corrupt--Mayibongwe, please take a look!  This is the file's contents when it was originally uploaded with version 1.2.0.7:

Code
Ask any questions you might have here:
https://getmusicbee.com/forum/index.php?topic=36952.0

Installation
============
- Inside MusicBee, go to 'Edit->Edit Preferences->Plugins->Add Plugin'.
  Then locate and select the 'mb_LyricsReloaded.dll' file.


Optional
========
- Download and extract the 'providers' zip file into the "...\MusicBee\AppData\mb_LyricsReloaded\providers" folder.

- In addition to the built-in providers ... Genius, Musixmatch, Deezer ...
  the contents of this zip file - called YAML configuration files - will appear as additional sources in
  'Edit->Edit Preferences->Tags (2)->auto-tagging->lyrics' , where you can reorder their priority.


Advanced
========
- Want your retrieved lyrics to indicate which source they came from?
  Then open the 'Settings.ini' file located in the plugin's AppData folder.
  Change the 'enabled' value of the <showSource> setting from 'false' to 'true'.

- By default, the source will appear at the bottom of the lyrics when the above setting is enabled.
  To have it appear at the top instead, change the 'position' attribute from 'bottom' to 'top'.

- Follow this link to learn more on how to make custom YAML files:
  https://github.com/pschichtel/LyricsReloaded/blob/master/LyricsReloaded/README.md
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on December 17, 2023, 06:53:13 PM
Hi @Mayibongwe, would you be willing to help me with a .yml file for https://lyrics.lyricfind.com - I really like the formatting of their lyrics, but as far as I can tell there isn't a .yml file for them currently.

Preferably using their own site for the identity url rather than Google... ;)

Hope it's ok for me to ask!
Title: Re: LyricsReloaded (Latest)
Post by: gaiastar on December 18, 2023, 09:47:07 AM
@gaiastar:  To uninstall (paths reflect having the PORTABLE version of MusicBee):

1.  In MusicBee/Plugins, delete the file mb_LyricsReloaded.dll

2.  In MusicBee/AppData, delete the folder mb_LyricsReloaded and its contents

I can confirm that the readme.txt as currently in the uploaded package is corrupt--Mayibongwe, please take a look!  This is the file's contents when it was originally uploaded with version 1.2.0.7:

Code
Ask any questions you might have here:
https://getmusicbee.com/forum/index.php?topic=36952.0

Installation
============
- Inside MusicBee, go to 'Edit->Edit Preferences->Plugins->Add Plugin'.
  Then locate and select the 'mb_LyricsReloaded.dll' file.


Optional
========
- Download and extract the 'providers' zip file into the "...\MusicBee\AppData\mb_LyricsReloaded\providers" folder.

- In addition to the built-in providers ... Genius, Musixmatch, Deezer ...
  the contents of this zip file - called YAML configuration files - will appear as additional sources in
  'Edit->Edit Preferences->Tags (2)->auto-tagging->lyrics' , where you can reorder their priority.


Advanced
========
- Want your retrieved lyrics to indicate which source they came from?
  Then open the 'Settings.ini' file located in the plugin's AppData folder.
  Change the 'enabled' value of the <showSource> setting from 'false' to 'true'.

- By default, the source will appear at the bottom of the lyrics when the above setting is enabled.
  To have it appear at the top instead, change the 'position' attribute from 'bottom' to 'top'.

- Follow this link to learn more on how to make custom YAML files:
  https://github.com/pschichtel/LyricsReloaded/blob/master/LyricsReloaded/README.md
hi
and  will it remove everything from musicbee preferences files ?
thank you so much!
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on December 24, 2023, 09:33:06 AM
Is this just me?

The download for 1.2.0.7 here:
https://drive.google.com/drive/folders/10PsVrfkHNtL6mgwvROB6ymXyIl4U9PsS
gives a zip file that I can't extract, it saying "the archive is corrupt'".
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on December 24, 2023, 10:16:44 AM
There does appear to be something wrong with that uploaded zip file.
Sorry guys - that's now fixed. Should be extractable just fine now.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on December 24, 2023, 10:20:31 AM
Hope it's ok for me to ask!
Totally fine. Will have a look and let uu know when it's ready.
Title: Re: LyricsReloaded (Latest)
Post by: hiccup on December 24, 2023, 10:47:40 AM
that's now fixed. Should be extractable just fine now.
Confirmed, that fixed it. Thnx.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on December 24, 2023, 11:57:12 AM
would you be willing to help me with a .yml file for https://lyrics.lyricfind.com
I really like the formatting of their lyrics, but as far as I can tell there isn't a .yml file for them currently.
Sorry man, I've had a look at the site and I can't seem to get the lyrics in plain text.
The already-available <Deezer> and <Google> providers get their lyrics from Lyric Find.
And in terms of the formatting, they also both seem to retrieve it as is. So you will have to use either of the two as an alternative.
Title: Re: LyricsReloaded (Latest)
Post by: GermanKiwi on December 24, 2023, 08:42:53 PM
Sorry man, I've had a look at the site and I can't seem to get the lyrics in plain text.
The already-available <Deezer> and <Google> providers get their lyrics from Lyric Find.

No problem at all - thanks for checking! And thanks for the tip about Deezer and Google using Lyric Find as their source. Much appreciated!
Title: Re: LyricsReloaded (Latest)
Post by: morgothulhu on December 25, 2023, 01:11:06 PM
Hello all!

I posted a version of the plugin that supports DarkLyrics - it is available here (https://github.com/morgothulhu/LyricsReloaded) or mb_LyricsReloaded.metalEdition.1.2.1.zip (https://github.com/morgothulhu/LyricsReloaded/releases/download/1.2.1/mb_LyricsReloaded.metalEdition.1.2.1.zip) for a direct link.

Also tweaked the Genius plugin to work better for my use-case, so feel free to give it a shot!

Thanks!
Title: Re: LyricsReloaded (Latest)
Post by: frankz on December 25, 2023, 01:22:34 PM
Hello all!

I posted a version of the plugin that supports DarkLyrics - it is available here (https://github.com/morgothulhu/LyricsReloaded) or mb_LyricsReloaded.metalEdition.1.2.1.zip (https://github.com/morgothulhu/LyricsReloaded/releases/download/1.2.1/mb_LyricsReloaded.metalEdition.1.2.1.zip) for a direct link.

Also tweaked the Genius plugin to work better for my use-case, so feel free to give it a shot!

Thanks!
IMO you probably should have worked on Mayibongwe's updated and vastly improved version (https://www.getmusicbee.com/addons/plugins/467/lyrics-reloaded-latest/) rather than mine.
Title: Re: LyricsReloaded (Latest)
Post by: stargatetraveler on December 31, 2023, 03:44:21 PM
Anyone having problems with getting Lyrics?  Yesterday, I was pulling the same lyrics for different songs/albums.  I have lyricsreloaded ver. 1.2.0.7 installed.  I tagging tool to show songs with missing lyrics, right click on the song, edit, go to lyrics tab and search for lyrics.  I have the following checked for providers:

chartlyrics
Genius
Deezer
Genius (fuzzy)
Deezer (fuzzy)
Lyrics
Lyrics Mode
Google
Bandcamp
Metal Archives

Also, how do you post a pic without having to provide a URL?  I tried inserting a pic by copy/paste and nothing happens.

Title: Re: LyricsReloaded (Latest)
Post by: sveakul on December 31, 2023, 05:11:49 PM
No problems here grabbing lyrics.

You can't post an image directly via the forum, but you can like this:
https://getmusicbee.com/forum/index.php?topic=29488.0 (https://getmusicbee.com/forum/index.php?topic=29488.0)
Title: Re: LyricsReloaded (Latest)
Post by: BillH on January 13, 2024, 01:25:19 AM
Awhile back (maybe 2 or 3 months) I started having a problem when I'm ripping CDs.  This happens to all CDs I rip.

I rip the CD and it gets all the tracks for the album just fine, but I don't get any lyrics for any of the songs.  After the rip is completed, if I go to Now Playing and go to the lyrics pane and right click and select "redo search", it finds the lyrics just fine.

Any ideas as to why they are not found when the CD is ripped?  I could swear that it always worked that way before.  Did I somehow mess up a setting? 

I'm not sure how to find the version of Lyrics Reloaded I'm using.  The last version I see in my download folder is 1.2.0.6, but I'm not sure how to tell if that is the one MusicBee is using.

Thanks,
Bill
Title: Re: LyricsReloaded (Latest)
Post by: phred on January 13, 2024, 03:10:08 AM
Any ideas as to why they are not found when the CD is ripped?  I could swear that it always worked that way before.  Did I somehow mess up a setting?  
I don't think you've ever automatically gotten lyrics when ripping a CD as I'm pretty sure it's not supported. I can't recall a time when I ripped a CD and automatically got lyrics.

As you've discovered, once your CD is ripped, you then have to manually invoke getting the lyrics. It doesn't have to be from the Now Playing pane either. Simply select the tracks you want lyrics for > right-click > auto-tag by track > update missing lyrics.

EDIT: Correction
Title: Re: LyricsReloaded (Latest)
Post by: BillH on January 13, 2024, 03:24:40 AM
I don't think you've ever automatically gotten lyrics when ripping a CD as I'm pretty sure it's supported.

It doesn't have to be from the Now Playing pane either. Simply select the tracks you want lyrics for > right-click > auto-tag by track > update missing lyrics.

I am guessing you really meant to say that it is not supported rather than it is supported.  I guess my bad memory is showing it ugly head.  I hadn't ripped a CD for awhile and I guess I was just remembering incorrectly.

I will give that method a try as it would be quicker.

Thanks!
Bill
Title: Re: LyricsReloaded (Latest)
Post by: phred on January 13, 2024, 03:29:31 AM
I am guessing you really meant to say that it is not supported rather than it is supported.
Yes, that's right. I have corrected my post. Thanks for catching that.

Quote
I guess my bad memory is showing it ugly head.  I hadn't ripped a CD for awhile and I guess I was just remembering incorrectly.
Perhaps.
I don't rip that often, but I was recently given a nice stack of CDs and am slowly ripping my way through them, so it was fairly fresh in my mind.
Title: Re: LyricsReloaded (Latest)
Post by: Kikizoshi on January 14, 2024, 11:24:52 PM
Hey, I'm not sure why, but the pesni.guru provider doesn't work for any of my songs. The lyrics are on the site itself, but won't get picked up by the provider. I checked to make sure that the titles and artists were the same and in the right categories, and they are. I'm also not having trouble with other providers using the same plugin, just pesni.guru. It's broken for both English and Russian songs. Would you be willing to look into this?
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on January 15, 2024, 04:13:55 PM
Hey there, welcome to the forum.

It seems to be working fine for me on the files I've tested this with.
Have you checked the entries on the log file to see where it's failing? ...MusicBee\AppData\mb_LyricsReloaded
Can you provide an example of a song we can have a look at?
Title: Re: LyricsReloaded (Latest)
Post by: Kikizoshi on January 15, 2024, 06:40:08 PM
Hey there, welcome to the forum.

It seems to be working fine for me on the files I've tested this with.
Have you checked the entries on the log file to see where it's failing? ...MusicBee\AppData\mb_LyricsReloaded
Can you provide an example of a song we can have a look at?

(Sorry, I had to redo this post, since my edit converted the Cyrillic to something illegible.)

Thank you :)

I looked at the log, and it's showing a success... but MusicBee is saying 'No lyrics found'. Here's the success log I got with Камень by Флер:
Code
[DEBUG] Lyrics request: Флер - Камень - Тысяча светлых ангелов - Pesni Guru
[INFO] Pesni Guru tries to load the lyrics...
[DEBUG] The constructed identity URL: https://pesni.guru/search/флер+камень
[DEBUG] The constructed lyrics URL: https://pesni.guru/text/флер-камень-минус
[SUCCESS] lyrics found from Pesni Guru!

It's the same for all the songs I tried. So it looks like it is finding the lyrics, but not loading them into MusicBee? But with other providers, it will both have a success and load the lyrics into MusicBee. If it helps, this is what happens if Pesni has first priority and succeeds finding lyrics (the other provider loads lyrics fine, but despite the success Pesni never will load them):
Code
[DEBUG] Lyrics request: IAMX - Ghosts Of Utopia - Volatile Times - Pesni Guru
[INFO] Pesni Guru tries to load the lyrics...
[DEBUG] The constructed identity URL: https://pesni.guru/search/iamx+ghosts of utopia

[DEBUG] Lyrics request: IAMX - Ghosts Of Utopia - Volatile Times - Musixmatch
[INFO] Musixmatch tries to load the lyrics...
[DEBUG] The constructed URL: http://www.musixmatch.com/lyrics/iamx/ghosts-of-utopia
[DEBUG] The constructed lyrics URL: https://pesni.guru/text/iamx-ghosts-of-utopia
[SUCCESS] lyrics found from Pesni Guru!
[SUCCESS] lyrics found from Musixmatch!

If I click 'Search Next Provider', it will load Musixmatch's lyrics again. And if I take Musixmatch back off, Pesni will log the same success, but again no lyrics will be loaded. Right-clicking on the Lyrics panel will show 'Lyrics Source: No Lyrics Found'. Other songs I tried were Невесомый человек by Ясвена and Я – Луна by Серебряная Свадьба - both returned the same success log as Камень, but also didn't load lyrics into MusicBee.

Edit: just thought to check other non-standard providers, to see if it was an issue with only the providers that had to be added in, but those other additional providers worked too. Song Lyrics was able to find Ghosts of Utopia and load it just fine.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on January 17, 2024, 01:27:45 PM
I looked at the log, and it's showing a success... but MusicBee is saying 'No lyrics found'. Here's the success log I got with Камень by Флер:
For now, I don't have any explanation as to why that may be happening.
I just checked with the above and the lyrics came up alright in the Tag Editor - it would be great if someone else can confirm.

Can you also check that the YML you have is indeed identical to the one showing up here:
https://getmusicbee.com/forum/index.php?topic=36952.msg204493#msg204493
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on January 17, 2024, 07:23:41 PM
The Pesni Guru yml in the cited post is definitely NOT the same as the one in the latest providers.zip download package.

I haven't been able to find out which one (if either) actually works though, despite multiple checking with both sources at the top of my search list.  Maybe boroda can help?
Title: Re: LyricsReloaded (Latest)
Post by: boroda on January 20, 2024, 03:46:50 PM
i'm ready, but i need a sample track to test (which doesn't work for somebody).
Title: Re: LyricsReloaded (Latest)
Post by: Thopter on March 06, 2024, 03:44:59 AM
Hi, is there a way to create an option, perhaps via settings.ini, to have LyricsReloaded check the "mark as having no lyrics" box when no lyrics are found? I assume this would just be setting a tag value, though I'm not sure what the tag is or what the value is.

The main purpose of this feature would be to prevent unnecessary duplicate checking for lyrics when playing a file multiple times with automatic lyrics download enabled.

Also, this is a really minor aside, but the readme.txt for the current version has an incorrect path for where to place the providers files. I believe it should be: %AppData%\MusicBee\mb_LyricsReloaded\providers, but the readme has an extra \AppData\ between the MusicBee and the mb_LyricsReloaded. I figured out the problem pretty quickly, but I could see this vexing some users.

Another mostly-irrelevant aside: let me mention, removing the old version 1.2.0.5 was an absolute beast of a problem, and I think it's because I have the "app" version of MusicBee, which means there's nothing to find in Program Files or Program Files (x86). If anyone else is having difficulty, here was my solution: I finally searched my entire drive for "MusicBee" and deleted everything I could find in subfolders of the Users folder, except for the contents of %AppData%\Roaming\MusicBee. Then I manually copied the new mb_LyricsReloaded.dll file into its proper position in %AppData%\Roaming\MusicBee\plugins and ran MusicBee. In doing this, I lost all my settings, but it did fix the weird uninstall errors and let me uninstall and then properly reinstall Lyrics Reloaded 1.2.0.7. Also, this caused MusicBee to create new settings files in %AppData%\Roaming\MusicBee that weren't there before.
Title: Re: LyricsReloaded (Latest)
Post by: Thopter on March 06, 2024, 04:05:28 AM
Also, there might be a minor error in the Genius retrieval regex. It leaves a bit of detritus when removing advertisement data: <inread-ad></inread-ad>.

Example: For the track Hey Boy, Hey Girl by The Chemical Brothers, 1.2.0.7 retrieves the following from Genius, which has an error near the end:
Code
Hey girls, B-boys
Superstar DJs, here we go!
Hey girls, B-boys
Superstar DJs, here we go!
Hey girls, B-boys
Superstar DJs, here we go!
Hey girls, B-boys
Superstar DJs, here we go!
Hey girls, B-boys
Superstar DJs, here we go!

Hey girls, B-boys
Superstar DJs, here we go!

Hey girls, B-boys
Superstar DJs, here we go!

(Pleasure, you will get-get-get)

Here we go!
Here we go!

Hey girls, B-boys
Superstar DJs, here we go!
(Here we go!)
<inread-ad></inread-ad>Here we go!
Here we go!

Source: Genius

The line <inread-ad></inread-ad>Here we go! should simply read Here we go!
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 06, 2024, 05:13:08 AM
Also, this is a really minor aside, but the readme.txt for the current version has an incorrect path for where to place the providers files.
The three MB installs each save their data in different locations.
The one used in the readMe is the Portable Version location (which is the most common installation type, I believe).
I think there's additional info in the readMe about going to help > about > open appData folder  which leads to the right location in any of the installations.

...problems with updating the plugin when using the store version of MusicBee...
Yeah, from what I hear, patching the Store version of MusicBee (or any other app) is not the easiest of tasks (both MB and Plugin wise).

Also, there might be a minor error in the Genius retrieval regex.
I will address this over the weekend if I can't get to it during the week.
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 06, 2024, 05:26:17 AM
Hi, is there a way to create an option, perhaps via settings.ini, to have LyricsReloaded check the "mark as having no lyrics" box when no lyrics are found? I assume this would just be setting a tag value, though I'm not sure what the tag is or what the value is.
The "mark as having no lyrics" value was/is saved in the MusicBee database the last time I checked. So we would probably have to involve Steven (MB's developer) on this one.

I imagine you would want such a setting applying to any other lyrics plugin as well? If so, then this would have to be a global MB setting which you can request in the wishlist board of the forum.

More importantly, have uu considered how this would result in a lot of false positives? i.e tracks being marked as having no lyrics when the providers actually have them, but perhaps returning "no lyrics found" due to the site being temporarily down, or being updated that causes the provider to break, or the site temporarily banning your IP address due to overuse, etc.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on March 06, 2024, 07:26:55 AM
More importantly, have uu considered how this would result in a lot of false positives? i.e tracks being marked as having no lyrics when the providers actually have them, but perhaps returning "no lyrics found" due to the site being temporarily down, or being updated that causes the provider to break, or the site temporarily banning your IP address due to overuse, etc.
Yes, BAD IDEA, for all the reasons stated above.  Also I would add that keeping the plugin up-to-date and functioning for the retrieval of accurate lyrics from many sources should be the primary (I would argue, ONLY) function, not attempting to intertwine it with the additional mission of creating custom library values, flagging, etc. etc.  Why kludge up an already well-oiled machine with functionality best performed elsewhere, even if that means manually.
Title: Re: LyricsReloaded (Latest)
Post by: Thopter on March 07, 2024, 09:31:07 PM
Hi, is there a way to create an option, perhaps via settings.ini, to have LyricsReloaded check the "mark as having no lyrics" box when no lyrics are found? I assume this would just be setting a tag value, though I'm not sure what the tag is or what the value is.
The "mark as having no lyrics" value was/is saved in the MusicBee database the last time I checked. So we would probably have to involve Steven (MB's developer) on this one.

Oh, in that case nevermind. I assumed it was just storing some kind of data in the lyrics field, or maybe a binary has-lyrics field or something. I don't want to seek anything that would mess with the program's data/database.

I imagine you would want such a setting applying to any other lyrics plugin as well? If so, then this would have to be a global MB setting which you can request in the wishlist board of the forum.

Hmm, I will consider it, but it sounds like it would be more trouble than it's worth. Especially if it doesn't save data to the files themselves.

Quote
More importantly, have uu considered how this would result in a lot of false positives? i.e tracks being marked as having no lyrics when the providers actually have them, but perhaps returning "no lyrics found" due to the site being temporarily down, or being updated that causes the provider to break, or the site temporarily banning your IP address due to overuse, etc.

Indeed, a simiilar concern was why I suggested it only as an optional settings.ini setting (so the user has to choose to do it) instead of a default behavior (which would be bad for the reasons you list). But even an optional setting feels like an iffy/bad idea to me if it's not just plunking some default value into the file's lyrics field / some related field.

Yes, BAD IDEA, for all the reasons stated above.  Also I would add that keeping the plugin up-to-date and functioning for the retrieval of accurate lyrics from many sources should be the primary (I would argue, ONLY) function, not attempting to intertwine it with the additional mission of creating custom library values, flagging, etc. etc.  Why kludge up an already well-oiled machine with functionality best performed elsewhere, even if that means manually.

Yeah, when I made the suggestion,. I figured it was probably just MusicBee using the lyrics field creatively (maybe storing a '0' or something). Now that I've learned it's not directly tied to a field in the file data, it seems like a bad idea (and also unrelated to LyricsReloaded's purview) so I retract it.
Title: Re: LyricsReloaded (Latest)
Post by: Thopter on March 07, 2024, 09:38:16 PM
Also, there might be a minor error in the Genius retrieval regex.
I will address this over the weekend if I can't get to it during the week.

Cool. Let me add, because it's possibly related: lyrics for Steely Dan are keeping the ad line intact in the returned lyrics from Genius (but not the <adline> thing I mentioned earlier). This seems like a weird quirk, because LyricsReloaded is not returning an ad line for other artists in my collection. Here is the returned value for Do It Again by Steely Dan, which has an advertisement insert "See Steely Dan LiveGet tickets as low as $33" at line 22 / the last line of paragraph 3:
Code
In the mornin' you go gunnin'
For the man who stole your water
And you fire 'til he is done in
But they catch you at the border
And the mourners are all sangin'
As they drag you by your feet
But the hangman isn't hangin'
And they put you on the street

Yeah, you go back, Jack, do it again
Wheel turnin' 'round and 'round
You go back, Jack, do it again

When you know she's no high climber
Then you find your only friend
In a room with your two timer
And you're sure you're near the end
Then you love a little wild one
And she brings you only sorrow
All the time you know she's smilin'
You'll be on your knees tomorrow
See Steely Dan LiveGet tickets as low as $33

Yeah, you go back, Jack, do it again
Wheel turnin' 'round and 'round
You go back, Jack, do it again

Now you swear and kick and beg us
That you're not a gambling man
Then you find you're back in Vegas
With a handle in your hand
Your black cards can make you money
So you hide them when you're able
In the land of milk and honey
You must put them on the table

Yeah, you go back, Jack, do it again
Wheel turnin' 'round and 'round
You go back, Jack, do it again

Source: Genius
Every Steely Dan song in my collection had a similar line, but I haven't seen it in the lyrics returned for any other artist.

I mention all this only in case it might help with debugging. I want to emphasize, I'm really grateful for LyricsReloaded and all your work on it; I think it's an amazing tool.
Title: Re: LyricsReloaded (Latest)
Post by: sveakul on March 08, 2024, 12:17:14 AM
Every Steely Dan song in my collection had a similar line, but I haven't seen it in the lyrics returned for any other artist.

I mention all this only in case it might help with debugging. I want to emphasize, I'm really grateful for LyricsReloaded and all your work on it; I think it's an amazing tool.
This line only seems to appear when the particular artist is actively scheduled for one of these appearences.  It does not appear in results from the API-based "Beenius" Genius retrieval plugin, which can be run simultaneously with LyricsReloaded without issue (https://getmusicbee.com/forum/index.php?topic=36605.0 (https://getmusicbee.com/forum/index.php?topic=36605.0)).
Title: Re: LyricsReloaded (Latest)
Post by: Mayibongwe on March 09, 2024, 10:24:24 AM
The line <inread-ad></inread-ad>Here we go! should simply read Here we go!
This is now fixed. Update to v1.2.0.8.

Here is the returned value for Do It Again by Steely Dan, which has an advertisement insert "See Steely Dan LiveGet tickets as low as $33" at line 22 / the last line of paragraph 3:
I cannot see that line on my side. Once you update to the new version, run it again with the same song and see if it persists.