Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lyric finder returns incorrect lyrics #281

Closed
apprehensions opened this issue Nov 7, 2023 · 5 comments · Fixed by #635
Closed

Lyric finder returns incorrect lyrics #281

apprehensions opened this issue Nov 7, 2023 · 5 comments · Fixed by #635
Labels
bug Something isn't working good first issue Good for newcomers

Comments

@apprehensions
Copy link
Contributor

Describe the bug
The Lyric finder returns random lyrics for a song i listen to, but the lyrics are for a completely different song.

To Reproduce
Listen to any obscure music, maybe one with or without vocals.

Expected behavior
No lyrics found

Screenshots
image
image
The above song has actual lyrics, however this is a different lyrics set.
image

@apprehensions apprehensions added the bug Something isn't working label Nov 7, 2023
@aome510
Copy link
Owner

aome510 commented Nov 11, 2023

Can use string similarity metric (https://docs.rs/strsim/latest/strsim/) to detect similarities between query title vs returned title, and query artists vs returned artists. Genius is kind of a best-effort way to get the lyric anyway, so the result is not always correct.

@aome510 aome510 added the good first issue Good for newcomers label Nov 11, 2023
@apprehensions
Copy link
Contributor Author

How come Spotify is able to retrieve lyrics with accuracy then? they use their in-house lyrics?

@aome510
Copy link
Owner

aome510 commented Nov 18, 2023

How come Spotify is able to retrieve lyrics with accuracy then? they use their in-house lyrics?

Not sure. Official app indicates they use https://www.musixmatch.com which may have better search functionality than genius.

@JingYenLoh
Copy link

Some time ago, I hacked together a PoC that used lyricstify's API to fetch lyrics, which iirc uses Spotify's internal APIs under the hood to retrieve the lyrics. I did it because genius often doesn't contain lyrics to songs I listen to.

My goal was to clean up the code (it's a dirty hack and the lyricstify maintainers might not appreciate calling their API directly) and eventually upstream it, but I never found the time to. I'm now hoping this information is helpful to whoever is interested in tackling this problem!

@genricoloni
Copy link
Contributor

I kinda found a pattern for this behaviour: some songs that have a featuring on Spotify (meaning that more than one artist is present in artist_names) don't have all these names in the song lyric's page on Genius.
An example is the following: by playing the song "Lost in the Dark" by "Left To Suffer" and "Peleface Swiss", the query will be "Lost in the Dark Left To Suffer Paleface Swiss". The results of the query is

image

And we can see that the song we wanted has not been found.

While instead performing the crafted query "Lost in the Dark Left To Suffer", so using only the first artist, the response will be:

image

Note that "Marc Zelli" is the singer of the group "Paleface Swiss", so the lyric is the correct one.

In my experience, I can say that using only the first artist is usually enough to get the correct lyric, but I don't know how this can actually impact the quality of the functionality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working good first issue Good for newcomers
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants