Author Topic: LyricsReloaded (Latest)  (Read 58058 times)

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9283
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)
Last Edit: October 21, 2022, 10:44:57 PM by phred
Download the latest MusicBee v3.5 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here

sveakul

  • Sr. Member
  • ****
  • Posts: 2431
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://69.46.24.226:7242/listen.pls?sid=1

hiccup

  • Sr. Member
  • ****
  • Posts: 7758
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?

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
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.
Favourite song at the moment:   Decode by Paramore

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
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, -]
Favourite song at the moment:   Decode by Paramore

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
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.
Favourite song at the moment:   Decode by Paramore

hiccup

  • Sr. Member
  • ****
  • Posts: 7758
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.
Last Edit: October 22, 2022, 02:43:48 PM by hiccup

psydeath

  • Newbie
  • *
  • Posts: 2
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.

sveakul

  • Sr. Member
  • ****
  • Posts: 2431
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.

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
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.
Favourite song at the moment:   Decode by Paramore

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
Thank you, I was able to figure it out from here.
No problem. Glad to hear that you've got it figured out now.
Favourite song at the moment:   Decode by Paramore

sveakul

  • Sr. Member
  • ****
  • Posts: 2431
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.

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
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.
Favourite song at the moment:   Decode by Paramore

Mayibongwe

  • Sr. Member
  • ****
  • Posts: 986
  • Heal The World
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.
Favourite song at the moment:   Decode by Paramore

sveakul

  • Sr. Member
  • ****
  • Posts: 2431
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.