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

Universal LRC parsing #2

Open
MonNomSontPasUtile opened this issue Nov 18, 2020 · 1 comment
Open

Universal LRC parsing #2

MonNomSontPasUtile opened this issue Nov 18, 2020 · 1 comment
Assignees
Labels
enhancement New feature or request unification unify several specifications

Comments

@MonNomSontPasUtile
Copy link
Contributor

There are several specifications that resembles or based on the LRC specification. Currently there are two to be known: xLRC and TRC, which both had word timing added. All meta tags of LRC were preserved.

Taking a deeper dive into the TRC format, we will find something like this (example from a certain Chinese site):

[00:16.54]<250>当<300>你<1852>要<249>离<452>开<201>的<451>时<3801>候

And let's see an example of xLRC files (example from Wikipedia):

[00:06.47] <00:07.67> And <00:07.94> all <00:08.36> the <00:08.63> joy <00:10.28> within <00:10.53> you <00:13.09> dies

We can see that the timing tags of TRC and xLRC are both placed before each seperate "unit". Timing tags in TRC describes the duration of each word in milliseconds, while in xLRC describes when will each word end in the normal human-readable format. This means the parser of both xLRC and TRC can be merged inside the LRC parser with some dynamic adjustments when the parser reads each line.

Because there are a lot of lyrics that do not use either UTF-8 or UTF-16 as their encoding, there should also be some compatibility with detecting and decoding existing encoding schemes.

@MonNomSontPasUtile MonNomSontPasUtile added the enhancement New feature or request label Nov 18, 2020
@MonNomSontPasUtile MonNomSontPasUtile self-assigned this Nov 18, 2020
@MonNomSontPasUtile MonNomSontPasUtile added the unification unify several specifications label Nov 18, 2020
@MonNomSontPasUtile
Copy link
Contributor Author

https://github.com/webcirque/websf/wiki/lrc_general
Specification proposal

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request unification unify several specifications
Projects
None yet
Development

No branches or pull requests

1 participant