Skip to content

An elegant and deeply customizable lyrics & player app, built with WinUI3/Win2D | 一款优雅且高度自定义的歌词/播放器应用,基于 WinUI3/Win2D 构建

License

Notifications You must be signed in to change notification settings

jayfunc/BetterLyrics

Repository files navigation

BetterLyrics

🤩 An elegant and deeply customizable lyrics & player app, built with WinUI3/Win2D

Static Badge Static Badge Static Badge Static Badge

GitHub Repo stars

💞 BetterLyrics is made possible by all its contributors, bug reporters and users.

中文版 README 请点按此处

This project is under active development; unexpected issues may occur.

🎉 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

QQ 群 (1054700388) | Discord Server | Telegram Group

🌟 Highlighted features

  • 🌠 Pleasing User Interface

    • Smooth and highly personalized style, animations and effects
      • Immersive fluid background
      • Perspective/fan-shaped lyrics
      • Snowflake effect
      • Multiple lyrics scrolling functions
      • ... (and more)
  • ↔️ Strong Lyrics Translation

    • Offline machine translation (supporting 30+ languages)
    • Auto-reading local lyrics files for embedded translation
  • 🧩 Various Lyrics Source

    • 💾 Local storage
      • Music files (with embedded lyrics)
      • .lrc files (with both core format and enhanced format)
      • .eslrc files
      • .ttml files
    • ☁️ Online lyrics providers
      • QQ 音乐

      • 网易云音乐

      • 酷狗音乐

      • amll-ttml-db

      • LRCLIB

      • ⚠️ Apple Music (additional config needed)
        • Open the Apple Music web app and the Developer Tools window. Refresh the page. Return to the Developer Tools window, select Fetch/XHR, select a request, find the Media-User-Token header in the request header, and copy its value.
        • Open BetterLyrics and go to the Playback Source settings. Enter the copied value in the Media-User-Token (for Apple Music) setting and click the accept icon on the right-hand side.
  • 🎶 Multiple Music Players Supported

    • Check it out here for detailed info
  • 🪟 Multiple Display Modes

    • Standard Mode
      • Enjoy an immersive listening journey with rich lyrics, animations and beautifully dynamic backgrounds
    • Docked Mode
      • A smart animated lyrics bar docked to your screen edge
    • Desktop Mode
      • Enjoy immersive lyrics floating above your apps
    • And More...
      • Waiting for you to discover...
  • 🧠 Smart Behaviors

    • Auto hide when music paused

🖼️ Screenshots

⚠️ Due to GIF format and frame rate limitations, the displayed effect is for preview only. Please refer to the actual device for the actual effect.

📹 Demonstration

Watch our demo video (uploaded on 21 Oct 2025) on Bilibili here.

🧪 Try it now

Unlimited free trail or purchase (there is no difference between free and paid version).

If you find it useful, please consider donating or purchasing it in Microsoft Store, I'll appreciate it! 🥰

Having trouble downloading and installing from the MS Store? Try the following options:

🏗️ Build

Before you build, make sure that you have already replaced BetterLyrics\BetterLyrics.WinUI3\BetterLyrics.WinUI3\Constants\LastFMTemplate with BetterLyrics\BetterLyrics.WinUI3\BetterLyrics.WinUI3\Constants\LastFM.cs.

🤑 Donations

If you like this project, please consider supporting it by donating. Your support will help keep the project alive and encourage further development.

You can donate via:

📄 License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

💖 Many thanks to

Some functions and code are referenced or modified from public repositories, including but not limited to the following open source projects/packages, tutorials, etc., and we would like to express our gratitude to them here.

Projects/Packages Description
Lyricify-Lyrics-Helper Provide lyrics fetch, decryption, and parsing for QQ, Netease, and Kugou sources
lrclib LRCLIB lyrics API provider
Manzana-Apple-Music-Lyrics Apple Music lyrics fetch using Python
Audio Tools Library (ATL) for .NET Used for extracting pictures from music files
WinUIEx Provide easy ways to access the Win32 API regarding windowing
TagLib# Used for reading the original lyrics content
Vanara Win32 API wrapper
LibreTranslate Provide the ability for offline lyrics translation
Isolation Dynamic fluid background implementation
SpectrumVisualization Audio visualization reference
DevWinUI Provide many out-of-the-box features for building WinUI 3 applications
... ...

See all the dependencies here.

Tutorials/Blogs/etc.

💡 Inspired by

Some design ideas are referenced from the following plugins/software (excluding code that is indirectly or directly referenced or modified, and is only used as a guide for design ideas).

✍️ Help us translate into your language

Cannot find your language? Or have better translations? Don't worry! Start translating and becoming one of the contributors! 😆

Visit https://crowdin.com/project/betterlyrics/invite?h=c9bfb28fce061484883c0891e7a26f9b2592556 to accept the invitation and become a valuable translator now!

⭐ Star history

🤗 Any issues and PRs are welcome

If you find a bug, please file it in issues, or if you have any ideas, feel free to share them here.

⚠️ Disclaimer

This project is provided "as is" without warranty of any kind.

All lyrics, fonts, icons, and other third-party resources are the property of their respective copyright holders. The author of this project does not claim ownership of such resources.

This project is non-commercial and should not be used to infringe any rights. Users are responsible for ensuring their own use complies with applicable laws and licenses.

💭 Share it on social media

BetterLyrics

BetterLyrics