foo_openlyrics icon indicating copy to clipboard operation
foo_openlyrics copied to clipboard

'Prefer lyric type: synced' not always working

Open PeteSapai opened this issue 4 months ago • 6 comments

Steps to reproduce

  1. Set "Prefered lyric type" to 'synced'
  2. Play song
  3. Downloaded Lyric is unsynced (even though synced versions are found when searching manually)

Expected behavior

  1. Lyric is synced

Versions

  • foobar2000 version: 1.6.10, but I also tested it with the latest version (2.24.6)
  • OpenLyrics version: 1.12

Debug logs

Opening track for playback: "E:\Music\Maria Mena - And then Came You-2023\01-Little Did I Know.opus" INFO-OpenLyrics: No search avoidance info available for track INFO-OpenLyrics: Searching for lyrics for artist='Maria Mena', album='And Then Came You', title='Little Did I Know'... INFO-OpenLyrics: Save file name format '[%tracknumber%-][%title%]' with directory class 'Custom('E:\Misc\FoobarLyrics\%directoryname%')' evaluated to 'E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know' INFO-OpenLyrics: Querying for lyrics in E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know.lrc... INFO-OpenLyrics: Querying for lyrics in E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know.txt... INFO-OpenLyrics: Found 0 lyrics in local files: E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know INFO-OpenLyrics: Failed to retrieve lyrics from source: Local files INFO-OpenLyrics: Successfully retrieved lyrics from https://api.genius.com/songs/9520441?text_format=plain INFO-OpenLyrics: Successfully looked-up lyrics from source: Genius.com INFO-OpenLyrics: Parsing lyrics text... INFO-OpenLyrics: Loaded lyrics already form a valid UTF-8 sequence INFO-OpenLyrics: Parsing LRC lyric text... INFO-OpenLyrics: Lyric loading complete INFO-OpenLyrics: Expanding lyric text... INFO-OpenLyrics: Auto-edit replaced 0 named HTML-encoded characters INFO-OpenLyrics: Expanding lyric text... INFO-OpenLyrics: Expanding lyric text... INFO-OpenLyrics: Saving lyrics to a local file... INFO-OpenLyrics: Save file name format '[%tracknumber%-][%title%]' with directory class 'Custom('E:\Misc\FoobarLyrics\%directoryname%')' evaluated to 'E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know' INFO-OpenLyrics: Saving lyrics to E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know.txt... INFO-OpenLyrics: Successfully saved lyrics to E:\Misc\FoobarLyrics\Maria Mena - And then Came You-2023\01-Little Did I Know.txt

Additional information

The search order is: Local, Genius.com, NetEase Online Music. In this case the synced lyrics are found at NetEase, the unsynced at Genius. If I move NetEase to the top, it will actually find and show the synced lyrics. Which would be a "fix" in this specific case, but would of course mean that if NetEase doesn't have the synced lyrics and Genius does, that the issue repeats itself.

Shouldn't the 'Prefered lyric type' be prioritised over the search order?

PeteSapai avatar Aug 24 '25 14:08 PeteSapai

I also sometimes get this.

Tenome avatar Sep 13 '25 23:09 Tenome

Shouldn't the 'Prefered lyric type' be prioritised over the search order?

This depends on what you mean by "Shouldn't" here. In the sense that the current behaviour is the intentional and expected behaviour: No, it should not. In the sense that this may be what some users expect (and like yourself are surprised when that's not what happens)...maybe.

Changing this would require a significant rework of how searches happen and would be a change in behaviour (which similarly could result in surprise for other existing users, which may well be worthwhile but needs consideration). In either case it probably warrants further clarification on the preferences page.

I also want to say that they has almost certainly been other issues about this but I've not looked. If somebody wants to look and link those in here (or report that they couldn't find any), that would be helpful.

jacquesh avatar Sep 14 '25 07:09 jacquesh

I agree with other users about this, that current behavior is not intuitive or desired even it that's the design intention.

I have also been seen this, but never opened an issue thinking it was just my imagination or some kind of temporal server error. Saying this because it's probably the experience of many other users.

Also it's pretty hard to notice the component is doing that because you are not usually -manually- searching for already found lyrics, so most people will never notice what's going on... and think they get unsynced lyrics because they are the only available thing.

Considering synced lyrics preference is a categorical preference, it should be applied over any server order preference. If I want synced lyrics, I prefer them no matter the source they come from, which is an entirely different thing.

a change in behaviour (which similarly could result in surprise for other existing users, which may well be worthwhile but needs consideration)

If one also takes into consideration how other components work, that setting behaves as described above, prioritizing always synced lyrics. Not saying that because the component should do the same, but since the rest of the components precede this one, it could be argued that most users expect already known behaviors.

Without a clear reason to change it, the current behavior is not only unexpected to most people but also undesired.

regorxxx avatar Oct 01 '25 16:10 regorxxx

Thank you, regorxxx, well said! And thanks for your input as well, jacquesh!

the current behaviour is the intentional and expected behaviour.

Well, "intentional" is of course the developer's intention, I cannot speak for that. As for 'expected': I'm quite sure if you'd ask the users that at least 99% would expect synced lyrics to be prefered when setting 'prefered lyric type' to 'synced'.

In that same line of thought:

Changing this [...] could result in surprise for other existing users

I don't think changing the setting of 'prefered lyric type: synced' leading to the prefered lyric type being synced would be surprising to anyone. (Except for: it used to work a certain way and now it doesn't, surprise!)

Changing this would require a significant rework of how searches happen

I'm not a developer/coder, but can it really be that hard? The manual search has results from all sites and specifies which are (un)synced. Have the auto-search use that same search list and pick synced.

Having said that I'm still grateful for the plugin as it is now, so thanks, even if you don't change this setting!

PeteSapai avatar Oct 01 '25 17:10 PeteSapai

To be clear, when this was implemented originally, my goal was to mimic the behaviour of LSP3 (IE go through sources in the defined order stopping as soon as a matching lyric is found). I don't have the source for LSP3 (that's the whole point of openlyrics) so I could have gotten it wrong.

jacquesh avatar Oct 01 '25 21:10 jacquesh

Understandable, but didn't LSP3 prioritse lrc? (I can't remember, I switched to openlyrics a loooong time ago.) According to the documentation it does, or at least it intended to: "It will search for a lrc (lyric) file with timing information first."

Anyway, if you could ever change the behaviour to prioritise 'prefered lyric type' over 'search sources' I'd be very grateful! For now I'm testing if having only 1 search source is sufficient (and which one works best - LRCLIB and NeatEase seem like the best contenders), and it mostly is. (Although it sometimes can't find any lyric on auto-search even though manual search shows plenty results from that source.)

PeteSapai avatar Nov 18 '25 09:11 PeteSapai