Skip to content

Polish lyrics show words with letters missing #703

Closed

Description

@thcp

The problem

Reported by a user: "polish lyrics are not showing the right chars or special chars".

Polish songs show their lyrics with letters missing. Natalia Kukulska's "W biegu" comes up as:

Znowu biegne bo co cigle kae biec

where the song is:

Znowu biegnę bo coś ciągle każe biec

Some letters are dropped outright ("każe" as "kae", "coś" as "co") and some are folded to their base letter ("biegnę" as "biegne"), often both in one line. For a Polish singer reading along, a line like that is hard to sing from and looks broken.

Where it comes from

Nothing in StemDeck's own text handling is at fault. The letters are already gone in the source. LRCLIB holds many copies of Polish songs, and of other accented languages, that lost every letter outside ASCII on their way in:

  • Natalia Kukulska, "W biegu": 5 copies on LRCLIB, all 5 stripped.
  • Kayah, "Nie ma, nie ma ciebie": 11 stripped copies and 1 intact one, and a stripped one was the one picked.

So picking a "better" copy is only part of an answer. Sometimes there is no intact copy to pick.

Why it is not just a lookup table

  • A stripped copy cannot be told apart from a song written without accents on its own. The text alone does not say whether letters are missing.
  • Many stripped words are ambiguous. "co" is a real Polish word, and so is "coś". Guessing a letter back in can turn a correct word into a wrong one.
  • The timing of a stripped copy is usually as good as any other. Throwing it away to fix the spelling loses the synced lines.

Constraints for a fix

  • Restoring letters must never change a word that was already correct, and never change the line timing.
  • When there is no trustworthy reference for a word, it stays as it is. A missing accent is better than a wrong word.
  • English songs, and anything already carrying its accents, must not pay any cost for this: no extra lookups, no extra processing.
  • It has to work on CPU and Mac, not only on a CUDA machine.

Being worked on in the feat/song-identification branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions