jacquesh / foo_openlyrics

An open-source lyric display panel for foobar2000
MIT License
401 stars 24 forks source link

Option to respect line order for lyrics containing both synced and unsynced lines #349

Open Ded10c opened 3 months ago

Ded10c commented 3 months ago

When a set of lyrics includes some lines with timestamps and others without, synced lines are displayed at appropriate times and all unsynced lines are displayed at the end. Some songs have lines that appear in e.g. liner notes that are not actually present in the song itself, and it would be helpful to have a way of displaying these at the appropriate positions by positioning unsynced lines according to line order (perhaps using past text formatting to indicate their absence from the track).

This would also make it much easier to add spaces to separate stanzas in synced lyrics, as it would no longer need an additional timestamp.

jacquesh commented 3 months ago

Personally I could find this useful for separating stanzas as you suggest.

We could probably have untagged lines get bundled in with the line before (in much the same way that they currently do if two consecutive lines have the same timestamp).

Do you know of any precedent for this in other software that displays lyrics? Is there any semblance of a standard we could follow?

Ded10c commented 3 months ago

I've only just (finally) gotten around to tagging my library with lyrics after what must be about 15 years, so I'm afraid I've not got a blind clue about anyone else's approach. My thinking was that if a file does have a mix of lines with and without timestamps, then either the user did that deliberately and it's probably safe to assume they want it displayed at the corresponding position, or the timestamp is just missing and bundling the line in with one before would probably be a better "close enough" behaviour while still allowing the user the opportunity to realise something's up (particularly if it's formatted differently)