Skip to content

Conversation

@ViRb3
Copy link

@ViRb3 ViRb3 commented Oct 30, 2025


Description:

MPV and IINA already support LRC timecoded lyrics, but you need to manually load them from Subtitles > Load External Subtitle... for each audio file. This PR makes a few improvements on that front:

  • Auto load .lrc files if they have the same name as the input file
  • Parse out lyrics metadata from audio files and if it matches LRC format (it is timecoded), load it as such

There is one minor issue with the current implementation - if the subtitles are extracted from metadata, they are saved to a temporary .lrc file so it can be loaded with mpv command. The file is immediately deleted after. I couldn't find a way to load from memory, but if there is, please let me know.

The lyrics code currently runs on any input file, including video, but it causes no issues if it doesn't find LRC file or relevant metadata. If this is unwanted for videos, please let me know how to refactor it.

I tested MP3 and M4A (AAC) with embedded lyrics as well as the same files with external LRC lyrics. All scenarios worked for me. If anybody wants to test without compiling, I am uploading a build here:

https://files.catbox.moe/3c2iin.zip

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant