Changelog

What's new in each version.

v1.11.0

Latest25 new · 27 improved · 33 fixed

New

  • Redesigned Settings, the menu bar panel, the lyrics window, the lyrics manager and onboarding with Liquid Glass on macOS 26
  • Added web lyrics (Beta): use a phone or tablet as a second screen with controls, or show lyrics in OBS
  • Lyrimuse now treats the same song across players and versions as one, sharing lyrics, corrections and play counts
  • Added Entries for This Song to the lyrics manager, with line-by-line comparison and splitting
  • Added LX Music and reAMP as built-in players
  • Added Naver VIBE and Genie as lyric sources, filling gaps for Korean songs
  • Added Favorite for NetEase Cloud Music, QQ Music, Kugou Music, Amazon Music and Soda Music
  • You can now control QQ Music, NetEase Cloud Music and Soda Music while another app holds media focus
  • Added hotkeys to hide or restore all lyrics, favorite the current song and switch to the player
  • The floating lyrics can now follow the screen of the active window
  • Added options to hide the floating lyrics for instrumentals, songs without lyrics or full-screen apps
  • The Dynamic Island can collapse its lyric row for instrumentals, and its expanded view adds Favorite
  • You can now resize the floating lyrics with ⌘ and scroll, or with hotkeys
  • Added karaoke, font weight, sung color, alignment and HDR Highlight to the full-size lyrics window
  • The mini lyrics window can now hide when paused or in full screen, and let clicks through when faded
  • Added auto expand and collapse, a More page, lyrics color and dimmed text brightness to Touch Bar lyrics
  • Discord can now show the current lyric line and buttons, with options for layout and hiding the song
  • Pushes can now go to several channels, with Send Test, Delivery History and Resend, adding ntfy, Slack and webhooks
  • Added a Light, Dark or Automatic appearance setting
  • Added a Deep Links card, and Shortcuts can now get the playing song through x-callback-url
  • Long-press or right-click the Lyrics Manager tile in the menu bar panel to search or re-match the song
  • Added a feature list to About, plus links to the Discord and Telegram communities
  • Click a day in the Last.fm heatmap to see that day's most played songs
  • Added a lyre intro animation to the first-run guide
  • Settings now says which folder stops the lyrics engine from starting and how to fix it

Improved

  • Cut the dmg download to about half its size and updates by about a third
  • Entries of the same song share lyrics by default, which you can turn off in Settings
  • The lyrics engine writes over 80% less to disk during playback and uses about a third less memory
  • Reworked the menu bar right-click menu with a lyrics offset row, quick toggles and a Help submenu
  • The lyrics offset and font size can now be adjusted in the floating lyrics gear menu
  • The menu bar panel now opens song, artist and album notes from its header
  • Search Lyrics now opens one window from every entry, showing the lyrics in use first for side-by-side comparison
  • Improved lyrics matching for translated titles, character versions and off-vocal tracks
  • Improved original title lookup for Chinese songs from Taiwan and Hong Kong
  • More sources now find lyrics for songs few sources have, such as titles with guest credits
  • Lyrics stored by players now share one Player's Own Lyrics row in the source order
  • Lyric sources in Settings now show a description on hover and warn when their lyric quality drops
  • Lyrics now switch less often once a song already has good lyrics
  • Lyrics for upcoming songs in NetEase Private FM and Play Next are now ready in advance
  • Each album now keeps one consistent cover, and motion artwork stays in step with it
  • The lyrics manager's scan interval is now adjustable and shows an estimated time for finding missing lyrics
  • Plays that may not have reached Last.fm are now checked and resent automatically
  • Reworked the play count breakdown, with a summary and plays grouped by month
  • ListenBrainz now warns when your token is rejected and keeps plays it could not send
  • Song, album and artist notes now show right away after a restart
  • The floating lyrics control bar now fits its buttons, taking up less space
  • Double-click the lyrics window's title bar to zoom or minimize, following your system setting
  • Added hover and press feedback to menu bar panel tiles, glass menus and other clickable items
  • The Automation permission prompt now explains why it is needed in your system language
  • Settings now explains when Full Disk Access or Accessibility stops working and how to re-add Lyrimuse
  • Diagnostics exports now hide your Last.fm and ListenBrainz user names and relay address
  • Sped up the Settings window, especially the lyrics library page

Fixed

  • Fixed credits, section markers and ISRC codes showing as lyrics in some songs
  • Fixed podcasts, DJ voiceovers and audiobooks in Spotify, NetEase Cloud Music and QQ Music being treated as songs
  • Fixed lyrics timing in QQ Music, NetEase Cloud Music and Kugou Music at track starts and after pauses
  • Fixed Apple Music lyrics not advancing when the song duration is unavailable
  • Fixed Dolby Atmos songs in Apple Music missing the spatial audio lyrics offset outside radio
  • Fixed Amazon Music lyrics timing after seeking, switching output devices or playing a video in another app
  • Fixed Amazon Music confusing versions with the same title and missing covers for its local lyrics
  • Fixed a paused Kaset taking over between songs, and Other Apps players freezing during browser videos
  • Fixed regular YouTube videos being shown as YouTube Music songs in the same browser
  • Fixed wrong or missing lyrics with Soda Music 2.9 and later, and previews being detected as other songs
  • Fixed local libraries matching a version of the song from another album
  • Fixed lyrics running about 30 seconds off when picked for another version of the song
  • Fixed some songs getting truncated lyrics or another track's lyrics from the same album
  • Fixed Priority Order picking the first source's lyrics even for the wrong version
  • Fixed romanization missing from many lines when the source covers only part of the song
  • Fixed covers and song links coming from another album or version of the song
  • Fixed lyrics staying on Searching after a follow-up search found nothing
  • Fixed the expanded Dynamic Island repeating the current line, controls jumping on the last line and a text cursor
  • Fixed duet lines sliding sideways during the floating lyrics line transition
  • Fixed the lyrics window not returning to an external display after it reconnects
  • Fixed the menu bar panel reopening when closed from its icon, and needing a click before it became active
  • Fixed menu bar lyrics freezing while a menu is open or a window is being dragged
  • Fixed unsaved edits in the lyrics manager being lost when switching songs or using its menus
  • Fixed lyrics manager titles upside down, wrong sorting, split albums and new songs stuck on Searching
  • Fixed duplicate entries for the same recording with slightly different lengths
  • Fixed lyrics of songs without an artist being left out of lyric backups
  • Fixed Last.fm Now Playing lagging after quick skips, smart matching picking obscure entries and plays lost on restarts
  • Fixed Discord and Web Push briefly showing the previous song when a new one starts from pause
  • Fixed ListenBrainz plays being dropped while the service was having problems
  • Fixed Discord briefly showing a playing card after pausing and keeping the last line too long
  • Fixed missed daily reports never being sent and checks running late after the Mac slept
  • Fixed beta updates showing up a day after they were released
  • Fixed the Touch Bar's Lyrimuse button being replaced by Now Playing after a song change

Release notes and downloads on GitHub ›

v1.10.0

19 new · 25 improved · 23 fixed

New

  • You can now edit and re-match lyrics from the lyrics window, and edit word-timed lyrics without losing timing
  • Added Discord Rich Presence to show the current song on your Discord profile
  • Added Kaset, a third-party YouTube Music client for Mac, as a built-in player
  • Added Touch Bar lyrics for MacBook Pro models equipped with a Touch Bar
  • Added more playback controls for QQ Music, Amazon Music, Spotify and YouTube Music on the web
  • Added song notes, and more sources for album and artist notes
  • Added an optional line transition and adjustable line spacing to the floating lyrics
  • The floating lyrics and the lyrics window now each have their own romanization and translation settings
  • Added a single-line layout, header size, font weight, sung color and hover fade to the mini lyrics window
  • Added a hotkey to switch between full and mini sizes, and the lyrics window now reopens at launch
  • Added songwriter credits and Space and arrow key playback controls to the lyrics window
  • Added a track change animation and play count milestone celebrations to the Dynamic Island
  • Added adjustable corner radius and lyric row height to the Dynamic Island
  • Added an optional notification each time the song changes
  • Added lyrics source health status to Settings, with alerts when a source stops working
  • Added Last.fm account suggestions, and Play in QQ Music for chart tracks only on QQ Music
  • Added a Launch Silently option that opens no windows at launch
  • Added Report an Issue, which opens a GitHub issue form with your app and player details filled in
  • You can now open any Settings page or the lyrics search through lyrimuse:// links

Improved

  • Improved lyrics coverage, with word-level timing available for more songs
  • Sped up lyrics and artwork on song changes, with new songs showing lyrics before every source responds
  • Improved lyrics matching to better distinguish between different recordings of a song
  • Reduced CPU and memory usage, especially with large lyrics libraries or when windows are hidden
  • Redesigned the lyrics manager and added Clean Up Invalid Entries for ads, podcasts and audiobooks
  • Redesigned the lyrics search panel, which can now also mark songs as instrumental
  • Improved translations, preferring YouTube Music's official ones and skipping lines that repeat the original or need none
  • Improved line breaking to keep words intact and follow CJK punctuation rules
  • Improved romanization for Korean, Japanese and Cantonese, and conversion between Simplified and Traditional Chinese
  • Improved artwork coverage, including the player's own artwork and songs in your NetEase Cloud Music cloud drive
  • Refined lyrics window animations to match Apple Music and added album and artist links for more players
  • The mini lyrics window no longer takes focus and can float over full-screen apps when pinned
  • Improved duet support, with singer labels in more songs
  • Redesigned onboarding with Liquid Glass and clearer permission notes, and rewrote the interface text
  • Tidied the floating lyrics by removing the duet singer marker and pinning top and bottom positions flush
  • The lyrics window now hides its buttons and scroll bar while the pointer is idle
  • Hotkey confirmations now also appear on the Touch Bar, menu bar lyrics and lyrics window
  • Playback buttons now dim and explain why when another app holds playback focus
  • Settings now flags missing permissions, explains Web Push failures and opens options when you click a preview
  • Merged different spellings and translated titles of the same artist, track or album in Last.fm charts
  • Reduced animated cover downloads by about 20% and added cache management in Settings
  • Added VoiceOver labels to every icon-only button in the lyrics window
  • Lyrics search now labels results as identical only when their line timing also matches
  • Reduced ListenBrainz retries when the service cannot be reached
  • Renamed the background process to lyrimuse-engine in Activity Monitor

Fixed

  • Fixed the first lyric line briefly flipping back to the intro dots just after a song starts
  • Fixed credits, notes and titles showing as lyrics, including credits lists on instrumental versions
  • Fixed missing lyrics, wrong characters and Chinese glyph variants in some Japanese and Chinese songs
  • Fixed lyrics appearing during ads and radio breaks, and progress bars moving during ads
  • Fixed paused players' lyrics moving on while a browser video holds playback focus
  • Fixed lyrics being out of sync for Dolby Atmos tracks in Apple Music
  • Fixed Apple Music track changes occasionally being detected as the previous track
  • Fixed Spotify Web being detected as the desktop app, and Spotify lyrics drifting after resumes or replays
  • Fixed NetEase Cloud Music sometimes missing the first song and treating previews as separate tracks
  • Fixed lyrics timing while KKBOX buffers and for Kugou Music previews that start mid-song
  • Fixed lyrics running slightly ahead of or behind Amazon Music playback
  • Fixed word timing and translations occasionally being lost after lyrics updates
  • Fixed songs without lyrics staying on Searching for lyrics while a lyrics source was paused
  • Fixed Settings opening at every launch and window titles not following the interface language
  • Fixed floating lyrics wrapping duet lines early, passing drags to the window below and not settling near the menu bar
  • Fixed the lyrics window flashing white between tracks and its volume slider dragging the window
  • Fixed the lyrics manager lagging when opened and while typing in its search field
  • Fixed jumpy scrolling text, scroll position and mini intro translation issues in the lyrics window
  • Fixed misaligned two-line menu bar lyrics when a custom font is selected
  • Fixed a misplaced black block appearing beside the notch when Lyrimuse launches
  • Fixed wrong artwork and links for some singles and for Amazon Music tracks marked Explicit
  • Fixed Web Push failing behind a system proxy and briefly clearing at launch
  • Fixed song titles with enclosing marks after Chinese or Japanese characters appearing smeared

Release notes and downloads on GitHub ›

v1.9.0

15 new · 13 improved · 11 fixed

New

  • Added Soda Music, KKBOX and Amazon Music as built-in players, bringing the total to eight
  • Lyrics for the next songs in your queue are now ready before they play
  • Lyrics your players already saved on your Mac are now used directly, without a search
  • The lyrics window now shows background vocals, overlapping duet lines and Apple Music-style word emphasis
  • Added a mini size to the lyrics window, plus background, colour and font options
  • Refreshed the desktop lyrics with a theme gallery, interlude dots and drag-to-resize
  • Long lines can now be split, and short ones joined, to fit the desktop lyrics, Dynamic Island and menu bar
  • Added album notes and artist bios for the song that is playing
  • The Dynamic Island gains shuffle and repeat for Apple Music and steps aside for full-screen apps
  • Added optional ad skipping and better lyrics timing for YouTube Music videos
  • Added new Last.fm stats: listening hours, artist regions, rank changes and loved tracks
  • Scrobbles can now match Last.fm's own spelling of artists and song titles
  • Added monthly and yearly listening summaries, and Telegram as a push channel
  • You can now add any app as a player without waiting for it to play
  • The lyrics manager can now fill in missing lyrics and tells you when it finishes

Improved

  • From this version on, updates keep Accessibility, Automation and Full Disk Access permissions
  • Your lyrics library is now better protected against damaged files and failed saves
  • Lyrics appear noticeably faster, and more songs get word timing, translations and readings
  • Improved lyrics matching, so fewer songs get the wrong version or misaligned timing
  • Covers now load sharper from most sources, and faster in lists
  • Lyrimuse now uses much less CPU, memory and disk space
  • Lyrimuse copes better with rate limits, outages and changes on the services it relies on
  • Renamed the background service to the lyrics engine, and settings now apply without restarting it
  • Streamlined the first-run guide and made permissions clearer throughout Settings
  • Last.fm stats are more accurate and sync faster, with missing covers filled in from your library
  • Failed Last.fm scrobbles are now resent, and you are notified if the connection drops
  • Export Diagnostics now includes the complete logs, with credentials removed
  • Polished the wording and layout across Settings and the lyrics manager

Fixed

  • Fixed lyrics and controls breaking when a browser video took over Now Playing
  • Fixed lyrics freezing while AppleScript or Spotify stopped responding for a moment
  • Fixed Apple Music links, covers and progress failing in some regions and languages
  • Fixed several cases where songs found no lyrics or showed the wrong artist
  • Fixed Last.fm issues with music video scrobbles, play counts and switching accounts
  • Fixed edits in the lyrics manager landing on the wrong song or going stale
  • Fixed lyrics export, timing offsets and translations falling out of sync in edge cases
  • Fixed web players showing songs late or with the browser's icon
  • Fixed cover flicker, stray clicks and display glitches in the desktop lyrics, lyrics window, Dynamic Island and menu bar
  • Fixed blurry or jagged lyrics on non-Retina displays and a menu bar that kept resizing
  • Fixed custom fonts, light themes, shortcuts, update checks and Apple Music reconnect in Settings

Release notes and downloads on GitHub ›

v1.8.0

15 new · 6 improved · 17 fixed

New

  • Added Apple Music as an eleventh lyrics source — the only one carrying Apple's own word-by-word timing, and the only one that asks you to connect the account in Settings, once every six months
  • Added a full rescan that re-picks every lyric in the library under today's matching rules
  • A full rescan skips hand-corrected lyrics, confirmed instrumentals and tracks whose timeline you tuned
  • You can now import your own .ttf and .otf fonts for the lyrics
  • Split the karaoke fill into two independent colours, one sung and one unsung
  • Added a thickness setting for the frosted background behind the desktop lyrics
  • Added a switch for the playback buttons that appear when you hover the desktop lyrics
  • You can now pick a font family for the menu bar lyrics
  • Added the second line and font size to the menu bar quick settings panel
  • The menu bar panel now offers one button that starts the music again when nothing is playing
  • Added back and forward keys to the Settings window
  • Replaced the system colour panel with a smaller picker of our own
  • The menu bar preview now draws the max-width limit
  • AMLL now looks a track up by the ID the system provides, instead of relying on NetEase and QQ being switched on
  • New installs now scrobble collaborations with smart credit; existing installs keep their setting

Improved

  • Moved the score breakdown into the expanded row in the lyrics manager
  • Opening the lyrics manager is faster on a large library
  • Reworked the selected state of the player cards: the card lifts off the page, and the accent colour stays on the border and the checkmark
  • Lined up both toolbar rows in the editor stages, column by column
  • The background service no longer does work nothing asked for: no web accent colour without a relay, no ListenBrainz without a token
  • Removed the "N/9" badge and the "thin evidence only" filter; the full count is on the track's decision sheet

Fixed

  • Fixed Apple Music lyrics stopping when another app took over the system's now-playing slot
  • Fixed the menu bar lyrics flickering, disappearing, and rebuilding in the middle of a line
  • Fixed three ways per-word romanisation came out wrong, including a blank word eating a syllable
  • Fixed Chinese being read as Japanese in lines that splice kana into a Chinese clause
  • Fixed DJ mix segments borrowing the studio version's lyrics
  • The search sheet now says why a track has no usable lyrics
  • Fixed a music video's length being taken as the song's length
  • Fixed catalog matching ignoring the artist, crossing storefronts, and settling for the first album track within tolerance
  • Fixed parenthesised name lists and the 组曲 prefix derailing the search
  • Fixed the Dynamic Island's black bar not matching the real notch height
  • Fixed the equalizer's position when it has an ear to itself and when the island is expanded
  • Fixed the desktop lyrics control bar opening from outside the lyrics text
  • Fixed a Dock icon staying around for minimized and auxiliary windows
  • Fixed follow-the-cover blanking out the colour theme row
  • Fixed the Apple Music automation card not showing on the default player setting
  • Fixed a motion cover that could not be checked being reported as a mismatch
  • Fixed player chips not starting from the left on every row, a stray rule in front of sub-rows, and the decision sheet's inputs not lining up

Release notes and downloads on GitHub ›

v1.7.0

17 new · 6 improved · 22 fixed

New

  • Deezer joins as a tenth lyrics source, and it covers a lot of ground the other nine were thin on: songs in French, Spanish, German, Italian, Portuguese, Japanese and Korean that used to come back with a poor match, or nothing at all, now have line-by-line lyrics
  • Album art moves in the lyrics window when Apple Music has a motion cover for the record; there's a switch to turn it off
  • Apple Music radio works properly: lyrics keep up with each track instead of drifting, and while the host is talking you see the station's name and logo rather than the last song
  • Radio lyrics have their own timing offset, so a station you listen to often can be nudged once and stay right
  • Settings can be searched: the matching row is highlighted and scrolled to, and a row tucked inside a collapsed group opens up on its own
  • Updates are installed from a Software Update page inside Settings, with the release notes and the progress in the same window
  • The desktop lyrics can be pinned to the top center or the bottom center above the Dock, or keep floating wherever you drag them
  • Font, weight and size for the Dynamic Island's lyric text
  • During an ad the island goes black and tells you how long is left and which ad of how many this is; YouTube Music web ads get a skip button
  • Duet lines stay near the center, so widening the overlay gives long lines more room instead of pushing the two voices apart
  • Last.fm can skip individual players, so plays from a player you'd rather not log stay out of your history; ListenBrainz is untouched
  • When a player reports no album name, one is looked up and included in the scrobble, so those plays no longer land without an album
  • "Show in Spotify" jumps to the track that's playing, and the shuffle button is hidden when Spotify says shuffling isn't allowed
  • Lyrics Manager explains a pick in plain terms: what the runner-up was short on, which sources returned the same words, and what was actually searched for
  • Lyrics Manager marks how many sources answered when a lyric was picked, and you can filter for the thin ones
  • Buttons on the desktop lyrics and the island respond to hover and press, and the island's quick actions show what they do
  • A newly recognized player is announced on the Dynamic Island as well

Improved

  • The Settings sidebar was rebuilt to sit closer to System Settings
  • Every Settings page opens with its own title and a line saying what it is for, and the window is taller so the desktop-lyrics section fits without scrolling
  • The "Web" row in the lyrics window's info panel links to the current player's own page for the track instead of listing every platform
  • The lyrics editor shows the words only; the tag lines no longer push them to a second screen
  • Tracks without lyrics are sorted more carefully: ones where no source answered at all are now told apart from ones that really have no lyrics, so a bad moment on the network stops looking like a verdict
  • The onboarding ends with a little confetti

Fixed

  • A Japanese original is no longer displaced by an "(English ver.)" release
  • A Japanese song with a romanized title no longer comes back with a single candidate
  • A space between a Japanese artist's family and given name no longer leaves every source empty-handed
  • A track no longer gets lyrics credited to a completely unrelated artist
  • "(Live)" and its Chinese equivalent count as the same version, so the right recording from that concert is no longer marked down
  • Tracks uploaded by re-post channels, with the artist written into the title, can be found now
  • The source that answered last had its words thrown away, so a song could end up with a worse match, or none at all, even though a source had found it
  • A track that came up empty once no longer sits on "Searching for lyrics…" forever
  • A brief network problem is no longer recorded as "this track has no lyrics"
  • A failed lookup of an artist's other spellings is no longer taken for "this artist has none", which used to keep every later song by that artist from being searched under the name the sources actually use
  • Stray character codes that some sources leave in the lyric text (they're) are cleaned up, existing lyrics included
  • A real song on YouTube Music is no longer labelled "Ad" for its whole duration
  • After an ad on YouTube Music, the next song no longer starts with a few blank seconds where nothing is shown
  • Spotify's progress no longer runs slow until you pause and resume
  • "Follow algorithm upgrades" no longer quietly stops working after a few upgrades — which also means a throttled background pass may move some tracks to a better match over the hours after you update
  • A track you're hearing for the first time no longer shows a listen count of 2
  • A Last.fm backfill that succeeded is no longer reported as failed, the recent plays refresh right after it, and it always says what it did
  • The row of playback buttons under the desktop lyrics appears only when the pointer is over the words, not anywhere inside the window
  • The dark specks on the island's small cover art are gone
  • Word-level romanization stays under the right characters on every line, not only the one being sung
  • Testing one lyrics source no longer keeps spinning after its result is already on screen
  • Clicking the Dock icon reliably brings the window back

Release notes and downloads on GitHub ›

v1.6.0

14 new · 11 improved · 6 fixed

Spotify lyric sync got a precision overhaul — the constant slight drift after resuming, the backwards jump when pausing, and the lag after ads are all gone. The menu bar can now show two lyric lines (next line, translation or romanization under the current one — the Dynamic Island has the same option), Migu Music joins as the ninth lyrics source, you can choose when a play scrobbles to Last.fm, and the settings pages went through a full reorganization with trimmed copy. Worth knowing before you upgrade: the matching algorithm is stricter about Cantonese-vs-Mandarin versions, so a throttled background pass may switch a few tracks to a better match over the following hours (the "follow algorithm upgrades" toggle freezes picks if you prefer); appearance settings you never touched now use recalibrated defaults, so a few surfaces may look slightly different; and the old global karaoke switch became three per-surface toggles (your previous choice carries over).

New

  • The menu bar can show a second lyric row — next line, translation or romanization under the current line; the Dynamic Island capsule has the same option
  • Migu Music joins as a lyrics source — nine in total now
  • Choose when a play counts for Last.fm: the official 50% rule, 75%, 90%, or only when the track plays to the end; ListenBrainz is unaffected
  • Player linkage is per-player now: pick which players launch with Lyrimuse, which ones launch Lyrimuse, and optionally quit Lyrimuse once the players it follows have all quit
  • An opt-in beta channel: turn on "Receive beta updates" in Settings →About to try pre-release builds; turn it off to stay on stable
  • The notch's expanded header gains a quick-actions row: search lyrics, toggle lyrics, open settings, or close the island — one hover away
  • The notch's expanded state can be wider than the resting capsule —set both widths with one dual-slider; lyrics alignment gains an automatic option that follows duet parts
  • When nothing is playing, the notch shows the app icon and blends into the real notch; hovering opens a compact idle panel with resume / open-player / settings shortcuts — and the desktop overlay shows a "♪ Lyrimuse" mark instead of nothing
  • Lyrics Manager: retry every track still missing lyrics in one click (all of them, or just the filtered ones), and mark a track as instrumental yourself; tracks without lyrics are now classified in four tiers instead of a blanket red "no lyrics"
  • A storage-style lyrics library panel in Settings: total count, a proportion bar of word-synced / line-synced / plain / instrumental, translation and romanization tallies
  • The manual lyrics search window is resizable and draggable, each candidate shows title / artist / album on separate lines, candidates with identical text are labeled, and sources that couldn't be reached are reported separately (DNS / connection / server) instead of counting as "no result"
  • Picking lyrics from the overlay's quick-search keeps the window open, so you can switch sources and listen until one sounds right
  • Source priority is reordered by dragging now (arrows stay for keyboard and VoiceOver)
  • Japanese lyrics typed with simplified-Chinese glyphs by some sources are repaired back to proper kanji — rule-based, no lookup table

Improved

  • Spotify position accuracy: anchors are pinned at stream-event arrival (±20ms), stale anchor republishes are recognized and ignored, pauses freeze at the pause instant, and a one-shot probe corrects the late anchor after ads
  • Lyrics matching v15: Cantonese and Mandarin versions of the same song are inferred and judged across the whole candidate batch, so a correctly tagged "(粤语)" candidate no longer loses to the wrong-language one
  • Matching also got stricter along the way: bare "(Edit)" cuts no longer masquerade as the original, translations baked into the lyric body are split out, and candidates are ranked by how well their reported duration fits the track
  • Lyric sources you disabled are no longer queried at all
  • All lyric sources share a system-DNS-first, DoH-fallback connection path — fixes six sources being unreachable under VPN-pushed DNS
  • The alias retry round re-queries only the sources that are missing usable candidates, instead of all-or-nothing
  • Default source order re-ranked by measured adoption; trailing credit lines no longer inflate a candidate's duration score, and 指导/总监/策划/导演 credit lines are filtered too
  • Karaoke word-fill is a per-surface toggle now (overlay / island / menu bar); the Lyrics Window always renders word-by-word
  • Launch at login is a standard system login item now (visible in System Settings), and restarts run the app at proper UI priority —animations no longer risk being throttled
  • Settings copy was trimmed across the board — shorter titles, fewer lecturing subtitles, tighter help bubbles
  • A corrupted config file is never silently overwritten anymore: it's quarantined with a banner and an explicit recovery path, and background-service restarts now report their result in the settings window

Fixed

  • The notch no longer expands when the pointer is merely below it
  • Notch animations: collapsing no longer undershoots and crawls back, expanded content crossfades in place instead of sliding, and the equalizer bars no longer flicker during size changes
  • The menu bar preview in Settings no longer flashes when the status item is rebuilt
  • Play counts Last.fm was slow to index are re-probed with backoff instead of being stuck at "no count"; tapping a count shows exactly which spellings were merged into it
  • "Back to current track" in Lyrics Manager scrolls to the right row on the first click
  • The search sheet's source counter is derived from the source list itself — no more "0/8" next to "nine sources"

Release notes and downloads on GitHub ›

v1.5.0

26 new · 17 fixed

The lyrics matching algorithm was overhauled — concert recordings should stop getting studio lyrics, and vice versa. YouTube Music and Spotify playing in a browser are now properly supported as players, and the UI speaks Traditional Chinese now. Worth knowing before you upgrade: first launch re-scores your library in a throttled background pass, so some tracks will switch to a better match over the following hours (a new "follow algorithm upgrades" toggle lets you freeze picks instead); the player setting is now multi-select (your old choice carries over); the notch's auto-hide switches are now separate from the desktop overlay's; and Intel Macs get in-app auto-update from this version on — but v1.5.0 itself needs one last manual install.

New

  • Select several players at once instead of one
  • YouTube Music and Spotify in a browser are properly supported as players — in whichever browser you pick; lyrics sync precisely to the page's own progress, with a one-click self-test
  • YouTube Music (LyricFind) and Kuwo join as lyrics sources — eight in total now
  • The UI is available in Traditional Chinese, as a third interface language alongside Simplified Chinese and English
  • Cantonese songs get word-aware Jyutping readings; all four romanization languages now default to on
  • Hand-picked lyrics can be locked against automatic rematching (new toggle, applied retroactively)
  • Background lyric upgrades can be turned off entirely — settled picks then stay put until you re-search yourself
  • A first-time lyrics search can be stopped — the song settles as "no lyrics" instead of searching forever
  • Six new global hotkeys, with conflict detection and on-screen feedback
  • The notch's expanded view is composable: track-info header, playback controls, next-line preview, lyric-offset control and per-row cover art are all toggleable
  • The notch's top row is configurable too: each ear picks its module (title / artist / album / cover / controls / elapsed / remaining / none), the equalizer can be turned off or moved to either ear (and was redrawn), lyrics can be hidden entirely, pause-collapse is optional, and the minimum width is much lower
  • The notch animates in and out — pausing shrinks the card back into the notch instead of it vanishing — and gained its own lyrics alignment setting
  • The overlay, menu bar and notch settings pages are all editors now, with live preview and reset-to-defaults; menu-bar lyrics gained an alignment mode; a one-time tip shows that ⌘-dragging moves the icon
  • Menu bar: a progress icon next to the lyrics (fills bottom-up with playback, Kugou-style), playback controls on hover, and adjustable lyric font weight and size
  • Desktop overlay: a hover control row (expand to lyrics window / settings / close), a ⚙ quick-settings menu with a standalone lyric-search mini window, an unlock button right on the overlay, and an alignment setting; the control capsule is smaller and uses a liquid-glass look (macOS 26+)
  • Desktop overlay: stroke color presets (white text + black stroke, black text + white stroke), with black text + white stroke + follow-cover as the new default look, and the settings preview now replicates the real word-by-word karaoke fill
  • Duet lyrics show a speaker indicator, so you can see who's singing
  • The lyrics window's right pane is now Play History, replacing the play queue: day-grouped records with paging — or your local pending listens when Last.fm isn't connected
  • The Lyrics Manager gained sorting (11 orderings), an offset column, album search, a placeholder row while a song is being searched, candidate covers in the decision panel, and round labels on multi-round searches
  • Settings shows lyrics-library stats, with translations split into source-provided vs machine-translated
  • The lyrics search shows each source's availability and failure reason, and Settings gained a one-click lyric-source test
  • The Dock icon has a right-click menu (Settings / Lyrics Manager / Lyrics Window / Last.fm), the lyrics window's title bar gained a settings button, and the "no lyrics" / "network failed" empty states offer a Search Lyrics button right there
  • The About page was redesigned — live GitHub star count, usage and copyright notes, and a third-party licenses list
  • Every outbound network request is audit-logged, and the diagnostics export got much richer
  • In-app auto-update now covers Intel Macs
  • The player picker is an icon grid; trusted players show their real icons

Fixed

  • Now-playing covers got a batch of accuracy fixes: artwork sent by the player itself is used first, wrong-edition album art is corrected, and Apple covers doubled in resolution
  • Searching lyric candidates dropped from minutes to seconds in the worst case
  • NetEase rate limiting is handled properly now — exponential backoff, a steadier endpoint, and no more false "rate limited" labels on sources that simply had no match
  • AMLL's embedded translations were never actually read; machine translation no longer skips repeated chorus lines
  • Translation or romanization lines no longer vanish over whitespace variants
  • The LRC [offset:] tag now works end to end, including the web page
  • The overlay's playback buttons register clicks where they're drawn
  • Notch lyrics stay readable on bright covers
  • Adopting a search result from the lyrics window no longer permanently freezes that song's lyrics
  • Rematch shows its actual outcome instead of a generic "no conclusion"
  • The Lyrics Manager highlight follows track changes; its filter bar no longer reflows on selection
  • The menu-bar panel opens over fullscreen apps and dismisses on Space change
  • Platform promo lines and credit/staff lines are filtered out of lyrics
  • Lyrics-window polish: background tinting no longer over-saturates near-black covers, and the volume capsule doesn't linger after playback stops
  • The Settings window keeps a fixed title; windows are listed in the Window menu; Dock reopen only auto-opens lyrics when nothing else is open
  • Importing an iCloud backup actually downloads it and validates it first
  • The "now scrobbling" count no longer goes stale, and "Nth listen" no longer shows a frozen old count for songs you haven't played in a while

Release notes and downloads on GitHub ›

Notes for earlier versions (v1.0.0 to v1.4.0) are on GitHub Releases.

Let the next song light up.

View on GitHub Sponsor

macOS 14 or later · Apple Silicon and Intel · Open source, GPL-3.0