11 KiB
BetterLyrics
Your dynamic lyrics display tool built with WinUI 3 and Win2D — works with local playback and other players
🎉 This project was featured by SSPAI!
Check out the article: BetterLyrics – An immersive and smooth lyrics display tool designed for Windows
🔈 Feedback and chat group
🌟 Highlighted features
-
🌠 Pleasing User Interface
- Fluent animations and effects
-
↔️ Strong Lyrics Translation
- Offline machine translation (supporting 30 languages)
- Auto reading local lyrics files for embedded translation
-
🧩 Various Lyrics Source
- Local storage
- Online lyrics providers
- QQ Music
- 网易云音乐 NetEase Cloud Music
- 酷狗音乐 Kugou Music
- amll-ttml-db
- LRCLIB
-
🎶 Multiple Music Players Supported
-
⚠️ NetEase Cloud Music
- Please install the BetterNCM plugin first. If a downgrade guide pops up after the installation, please follow the guide to complete the downgrade of NetEase Cloud Music (downgrade to 2.10.13);
- After that, please install the InfLink plugin in PluginMarket. After the installation is complete, please restart NetEase Cloud Music. At this point, all preparatory operations have been completed, enjoy it!
- ⚠️ Please note that there is issues with timeline due to plugin issue
-
⚠️ Kugou Music
- Please make sure that the Kugou Music setting "Support system playback controls, such as lock screen interface" is turned on
- No timeline information broadcasted, which means when you change timeline position in Kugou Music, BetterLyrics has no way to detect this change.
- ⚠️ Please note that there is issues with timeline due to Kugou itself
-
⚠️ Apple Music
- Make sure you have set timeline threshold to around 600 ms in settings (Go to "Settings" - "Advanced option" to change), otherwise, the lyrics will be moving forward and afterward constantly.
- ⚠️ Please note that you need additional settings to stop from seeing shaking lyrics (see FAQ at the end of this document for more information)
-
⚠️ foobar2000
- Make sure you have https://github.com/dumbie/foo_mediacontrol installed with it
- ⚠️ Please note that there is issues with timeline due to plugin issue
-
Spotify
-
QQ Music
-
PotPlayer
-
Media Player (System)
-
LX Music
- Please make sure you have enabled "Open API" in LX Music settings page
- Then open BetterLyrics, go to settings, go to "Advanced options", input your LX Music server address (mostly like http://127.0.0.1:23330) and there you go!
-
MusicBee
- Please install https://github.com/HenryPDT/mb_MediaControl before using
-
iTunes
- Please install https://github.com/thewizrd/iTunes-SMTC before using
-
AIMP
- Please install https://www.aimp.ru/?do=catalog&rec_id=1097 before using
-
-
🪟 Multiple Display Modes
- Standard Mode
- Enjoy an immersive listening journey with rich lyrics animations and beautifully dynamic backgrounds
- Dock Mode
- A smart animated lyrics bar docked to your screen edge
- Desktop Mode
- Enjoy immersive lyrics floating above your apps
- Standard Mode
-
🧠 Smart Behaviors
- Auto hide when music paused
This project is still under development, bugs and unexpected behaviors may be existed in the latest branch.
Screenshots
Standard mode
Dock mode
Desktop mode
Demonstration
Watch our introduction video (uploaded on 7 July 2025) on Bilibili here.
Try it now
Microsoft Store
Easiest way to get it. Unlimited free trail or purchase (there is no difference between free and paid version)
☕ If you find it useful, please consider purchasing 🧧 it in Microsoft Store, I'll appreciate it! 🥰
When there's a stable version built, Microsoft Store will be the first channel to get updated.
Google Drive
Or get it from Google Drive (see release page for the link)
Please note you are downloading ".zip" file, for guide on how to install it, please kindly follow this doc.
💖 Many thanks to
- Lyricify-Lyrics-Helper
- Provide lyrics fetch, decryption, and parse for QQ, Netease, Kugou sources
- lrclib
- LRCLIB lyrics API provider
- Audio Tools Library (ATL) for .NET
- Used for extracting pictures in music files
- WinUIEx
- Provide easy ways to access Win32 API regarding windowing
- TagLib#
- Used for reading original lyrics content
- Vanara
- Win32 API wrapper
- LibreTranslate
- Provide the ability for offline lyrics translation
- Stackoverflow - How to animate Margin property in WPF
- DevWinUI
- Bilibili -【WinUI3】SystemBackdropController:定义云母、亚克力效果
- cnblogs - .NET App 与 Windows 系统媒体控制(SMTC)交互
- Win2D 中的游戏循环:CanvasAnimatedControl
- r2d2rigo/Win2D-Samples
- CommunityToolkit - 从入门到精通
Inspired by
✍️ Help us translate into your language
Cannot find your language? Don't worry! Start translating and become one of the contributors! 😆 Click the link to translate this app into your language via Crowdin now!
Star history
Any issues and PRs are welcomed
If you find a bug please file it in issues or if you have any ideas feel free to share it here.
FAQ
I couldn't see any button in dock mode
It is important to note that when you enter "Docked Mode", the action buttons are hidden. Hover your mouse over the top to access the "Immerse", "More", and "Close" buttons.
Hover the mouse slightly above the bottom edge of the window to display the white control floating window at the bottom
Tap the "little white bar" to display the bottom control bar in floating window form (including current playback progress view, timeline offset adjustment; previous song, pause/play, next song; translation, layout, settings)
How can I lock the window in desktop mode
Hover you mouse on the top, click on the lock icon and you're good to go! Or, alternatively, press Ctrl + Alt + U.
How can I unlock the window in desktop mode
It's in the system tray, right-click on the icon and you'll see "Unlock the window". Or, alternatively, press Ctrl + Alt + U.
There's a delay in lyrics timeline
Hover you mouse on the very bottom of the app,
And then click on the first icon button (Lyrics timeline offset), here you can adjust the offset freely.
The lyrics jump back and forth frequently (e.g. Apple Music)
Go to "Advanced options" section, increase the threshold value (marked with the bigger red rectangle) until the lyrics is working properly.
















