Gets the currently playing song's synced lyrics and displays them in sync with song's actual position.
lrcsnc was primarily designed for bars like Waybar, but grew into something that can be used basically anywhere (check below!)
lrcsnc-lbl-output.mp4
^ - lrcsnc launched as a server and lrcsnc-lbl-client used for client side.
stuff.mp4
^ - a basic example in Waybar using the simple client that's included in the base package
- Precise synchronizing to any* player that supports MPRIS
- Can be tailor-fit into a lot of things; the UNIX way, as they say.
- Client-server communication, allowing for different types of clients to exist simultaneously
- A decent level of customization and configuration using TOML
- Barebones romanization for Japanese, Chinese and Korean languages
- ...and more!
* - player should be precise itself. There are examples of players that don't handle timings well, or have problems with their MPRIS implementations. Check compatibility wiki page for more.
lrcsnc is available at AUR!
yay -S lrcsnc
Also you can build it from source (see below)
git clone https://github.com/Endg4meZer0/lrcsnc.git
cd lrcsnc
make # or `sudo make all` for automatic install
Make sure to have go v1.23 or above.
lrcsnc [OPTION]
Get more info on on available options with lrcsnc -h.
- Check compatibility with different players
- More lyrics providers (maybe local files too?)
- More configuration options?
- There is definitely always more!
You can always make an issue for either a bug or a feature suggestment! If your question is more general, consider opening a discussion.
Consider adding them! Currently lrcsnc uses only LrcLib, which is a great open-source lyrics provider service that has its own easy-to-use app to download or upload lyrics. Once the lyrics are uploaded, lrcsnc should be able to pick them up on the next play of the song (that is if the cached version is not available though - check the docs for how to clear the cache). Also, other ways to get lyrics will be implemented later.