-
Notifications
You must be signed in to change notification settings - Fork 565
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
plugin: Synced Lyrics #2207
plugin: Synced Lyrics #2207
Conversation
Thanks for this amazing plugin! ❤️ Just curious, would it be fine if I merged the ideology of my draft plugin refined-lyrics (that has nothing implemented yet 😭) with yours? By that I mean, if I extended your plugin with the features I planned to have in mine.
It turns out that I have been way too busy and I've been procrastinating a lot to the point that I can't focus on that plugin. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I recommend the plugin works with restartNeeded: false
. but it's okay, I'm not forcing that. anyway, It seems to be great.
Hi, thanks for your feedbacks Yeah I have no problems merging your work here 👍 |
You can get lyrics from YT using |
My plan was actually to have an additional source of lyrics and not only lyrics from YouTube as well as giving lyrics of a song even if it's a video. But it seems to be pretty annoying to scrape genius.com, so I don't think that I will try to implement this feature (unless I find a better way to scrape the html from the site) |
// MAGIC: Since the transition takes 300ms, we need to add a delay of 300ms to the current time | ||
currentTime = secToMilisec(t) + 300; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, since this change, the lyrics seems to be displayed too early now. But if the way it worked before would have been a source of error we can keep it like that
is this PR ready to test? |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
@chiqors I theory this plugin is functional |
In case you did not already do this, I'd suggest you use eslint and prettier, that way the code not only follows our formatting standards, it is also easier to review in pull requests. PS: I was the one to mark the two comments about the text alignment as off-topic, please do not take offense. |
LGTM Additions like more lyric providers can be done in a separate PR. So I think we should iron out:
Are there more stuff left to iron out? |
Great for your contribution (you made me realized that my code was not that well written 😅)
Appart from that, everything is okay |
In my now closed PR for Maybe you can For one, I was using SolidJS instead of generating html. I can make another PR to migrate this to use SolidJS instead! |
Oh cleaver ! I'm not really familiar with SolidJS, and also because you already fixed this issue I think that your PR would be better than my code |
Update: Working on it right now |
@Non0reo I finally migrated the UI code to use SolidJS, there are some kinks I need to iron out though, like the text size is too small, notify the user that no lyrics were found, etc. |
Other than fixing the styling, I don't think there is much to change for an initial version. |
I'll re-review this tomorrow and try to get it merged. |
- Change type assertion code - Replace span to `yt-formatted-string` - Add refetch button
need i18n |
Added i18n, well, for english at least. |
src/plugins/synced-lyrics/renderer/components/LyricsContainer.tsx
Outdated
Show resolved
Hide resolved
This comment was marked as resolved.
This comment was marked as resolved.
f50e2b9
to
80380df
Compare
I don't know if you're working on it but the text size seems too small. Maybe I did something wrong with my version or something like that though Also, when the app start for the first time the lyrics arent fetched properly |
|
@JellyBrick any more thoughts? |
I have a question. What happens if I run lyric-genius and synced lyrics at the same time? |
is lyrics-genius even working? I'll handle that on my upcoming PR |
* Added Plugin File * Added Logic * Known issue * Finished Backend part * Before cleanup * Added Style Removed log * Fixed time and visibility issues * Changed lyrics style * Changed way lyrics are selected * Fix * Added style lyrics options * Cleanup * Fix lyrics styling Changed how lyrics status are changed * Moved code to make file more readable * Change Tab Size * Fixed issue with overlapping lyrics * Removed debug console.log * Added style adaptation for music videos * Changed file indent * Revered back to original pnpm file * Removed unnecessary option * Fix lyrics status bug Removed leftover logs * Started to implement fetching for genius lyrics * feat(synced-lyrics): add `addedVersion` field * Made changes according to feedbacks * fix: add a delay of 300ms to the current time - Since the transition takes 300ms, we need to add a delay of 300ms to the current time * Removed test about genius.com scraping * Removed 300ms delay * chore: cleaned up the code * Specified path and variable * chore: always enable lyrics tab * chore: use SolidJS to render the lyrics * chore: remove useless signal * chore: feature-parity with original PR (+some nice stuff) * recreate lock file * show json decode error * feat(synced-lyrics): improve ui - Change type assertion code - Replace span to `yt-formatted-string` - Add refetch button * chore: make the lyric styling a solidjs effect * feat: i18n * chore: apply suggestion --------- Co-authored-by: Su-Yong <[email protected]> Co-authored-by: JellyBrick <[email protected]> Co-authored-by: Angelos Bouklis <[email protected]>
As a user who enjoys listening to K-pop and J-pop, there are almost no applied lyrics. |
The lyrics for the song are on lrclib, but it doesnt work with the app, it just says 'No lyrics found for this song' 'Refetch lyrics'. |
@heyluft this is not the place to hold such discussion, please either open an issue, or comment on an existing issue. For example there is an existing issue similar to this, that I have made a PR to address it. That issue and PR are specifically about tracks featuring multiple artists. And always make sure to give example songs that have lyrics on lrclib but do not display in the app. |
Would be great if users could just select the lyric provider manually as well through in plugin settings but by default it should probably be auto selected to whatever source is best whenever multiple lyrics source is implemented <3 |
I'd imagine a priority order would be best. |
Affirmative sir. |
Hi 👋
I made this plugin to make lyrics synchronous with the music.
I used LRCLIB to get lyrics as it's also another open-source project with an easy-to-use API.
I took code from the lyrics-genius to have a base for my plugin. I modified a part of it so it is compatible with new version of Youtube Music (while adding functionalities do fetch, change, and display lyrics)