Releases: maxrave-dev/SimpMusic
Release list
2.0.0
Full changlogs here: https://www.simpmusic.org/blogs/new-update-simpmusic-v200
Read user-guide: https://www.simpmusic.org/docs
New
- Listen Together — listen in sync with friends in shared rooms, compatible with Metrolist clients.
- Three Now Playing styles — pick Classic, Material 3 Expressive or Apple Music in Settings.
- Apple Music lyrics — word-by-word glow with depth blur, on Android 12+ and Desktop.
- Lyrics romanization — read lyrics from 12 languages in Latin script, shown under the original line.
- Share lyrics as an image — pick your favorite lines and share them as a picture.
- SimpMusic Wrapped — a year-in-review built from your local listening, plus monthly recap playlists in Library.
- Ten-band equalizer — draggable curve, presets and AutoEq import with ~8,850 headphone profiles, on both platforms.
- Analytics tab — step back through weeks, months and years, with a listening clock and your listening fingerprint.
- New widgets — turntable, playlists and listening insights, resizable.
- Liquid glass UI — rebuilt bottom bar and glass surfaces across Android and Desktop.
- More reliable streaming — YouTube ciphers decoded on-device, extraction source shown in song info.
Improvements
- High-quality audio in your choice of Opus or AAC.
- Auto-download songs when you like them.
- Keep radio queues audio-only (optional).
- Sleep timer fades out; crossfade can keep albums continuous.
- Search inside playlists and multi-select songs.
- Paste a YouTube link into search to play it.
- Follow an artist to also subscribe to their YouTube channel.
- Clear listening history in one tap.
- Mix for you is now its own tab.
- Desktop: floating capsule player, landscape headers, pitch control and native download notifications.
Fixes
- Signed-in radios no longer lose most of their tracks.
- No loading spinner over playing audio, no NA:NA time at track end, and play restarts the queue at its end.
- Mini player no longer flashes on start; the Apple Music player plays exactly the queue row you tap.
- Widgets render at the launcher's real size instead of being squashed.
- Unfollowing an artist cleans up its notifications; queue position restores correctly after restart.
- Desktop volume reaches precached players, and Linux opens external links reliably again.
What's Changed
- feat(listen-together): listen in sync with friends in Metrolist-compatible rooms by @maxrave-dev in #2391
- fix(desktop): stop bundling glib in the Linux libmpv slice by @chrisdebian in #2359
- v2.0.0: New update by @maxrave-dev in #2412
- docs(fastlane): add the v2.0.0 changelog for build 57 by @maxrave-dev in #2413
New Contributors
- @chrisdebian made their first contribution in #2359
Full Changelog: v1.7.0...v2.0.0
1.7.0
Full changlogs here: https://www.simpmusic.org/blogs/new-update-simpmusic-v170
🎉 New features
Playback & player
- Last.fm scrobbling (Full build only) —
lastfm/lastfm-emptymodule pair, a login screen, its own settings group, and scrobbling during playback - Reworked Now Playing: new backdrop and artist card; added an inline lyric line and removed the blurred backgrounds
- Playlist import from a converted file, straight from Settings; writes to the database in batches
- Charts: added seven new YouTube Music countries — Hong Kong, Malaysia, Philippines, Singapore, Taiwan, Thailand and Vietnam
Browsing & search
- The empty search screen now shows browse categories
- Play a song directly from a browse category's shelf
- Home: long-press a quick pick to open the Now Playing sheet
- Library: show item counts in dynamic playlist headers
Settings
- Ask for confirmation before logging out of a linked account
Desktop
- Replaced VLC with libmpv as the sole playback backend — including DJ crossfade filters and a switch to DASH streams
- Linux: build libmpv from source in a container instead of extracting it from the AppImage
- Tray menu and tooltip now show the current track
- The volume slider expands only on hover
- The player bar timeline is tinted while a crossfade is running
- Video now renders through Compose frames;
SwingPanelremoved - Windows: removed the debug terminal window
- "Play next" now works on the desktop side
- Added a Queue button to the mini player — PR #2275 by @laoluogun
Internal
- Migrated every icon to generated Material Symbols
ImageVectors, droppingmaterial-icons-extendedand the XML drawables
🐛 Fixes
Crossfade & player
- Skip the crossfade when the next track plays as video, and when the current track plays as video
- Keep the correct incoming track when a transport control is pressed mid-crossfade
- Align the restored queue with the player, and guard against saves during a rebuild
- Keep the progress slider within Material3's default range
- Volume: apply it to the player before persisting it; unmute restores the original level — PR #2274
- Desktop: release the crossfade handle when loading another track; route volume through
ao-volumeso it applies instantly - Normalise Tidal key names before Camelot matching — Tidal spells accidentals out (
"FSharp","CSharp") rather than using symbols, sokeyToSemitonefailed to parse them and roughly 22% of tracks silently lost their key in DJ crossfade. Fixed by normalising the string before matching, and by changing thecalculateKeyGapDurationFactorfallback from1.0toUNKNOWN_GAP_DEFAULT_FACTOR— an unparseable key was previously treated as a perfect match
Data & parsing
- Lyrics: stop dropping the first character when no space follows the timestamp
- Identify song columns by
pageTypeinstead of a fixed index - Keep only the first subtitle group as artists
- The database now repairs artist names and album names stored by an older parse
- Treat personalised mixes as radio playlists
- Browse categories: key sections by title and cache them on disk, parse the songs shelf, and render every section the API returns
Downloads & cache
- Stop re-resolving stream URLs for tracks that are already fully downloaded
- Serve directly from cache only when the whole track is on disk
Desktop
- macOS: switched audio output to
avfoundation— avoids anao_coreaudiouse-after-free crash when headphones are plugged in or removed - macOS: register now-playing handlers on the main queue; stopped trimming native memory, which was causing a crash
- Disabled skiko vsync (the cause of freezes when changing displays) and restore the window on Dock reopen
- Backup: stopped double-wrapping the zip output stream
- Registered URL schemes at the correct level in
conveyor.conf, and restored external link opening on Linux - libmpv bundle: resolve by absolute path and drop POSIX open flags on Windows; strip AppleDouble sidecars that made macOS report "app is damaged"; treat an absent
ytdloption as success - Raised the macOS floor to 15.0 for the bundled libmpv — a breaking change for users on older macOS
User interface
- Force-dark screens now use a real dark colour scheme rather than just dark text
- Bottom sheet: title, artist and the like label take their colours from the dark palette
- Search: leave room for the floating search bar in every state; cap the browse grid width and use four columns on wide layouts
- Quick picks: keep titles on one line with a marquee
- Smoother artwork scrims via a smoothstep gradient
NormalAppBaruses the transparent colours the app uses elsewhere- Show a generic album label when the album name is unknown
- Analytics: lengthened the header scrim so the top song title no longer overlaps the stats
- Repaired the notification bell icon path
- Library: the "create playlist" label uses the theme colour
- Spotify: match the login status URL when it carries a query string
⚡ Performance (Desktop)
- Tuned the allocator and GC to cut resident memory
- Return freed native memory to the OS when playback idles
- Capped mpv's demuxer cache
🔧 Infrastructure & dependencies
- PipePipeExtractor to v6.2.0,
brave-newpipebumped - Bumped a batch of dependencies
- Refreshed the Gradle daemon JVM toolchain URLs
- CI/CD: workflow updates; stage natives in the release workflow and verify the libmpv bundles
CLAUDE.mdupdated for Last.fm, the from-source Linux libmpv build, Compose video rendering, and the video crossfade rules
What's Changed
- Feat/queue button desktop miniplayer by @laoluogun in #2275
- Feat/desktop mpv backend by @maxrave-dev in #2284
- Fix/volume unmute to original value by @laoluogun in #2274
- New version: v1.7.0 by @maxrave-dev in #2281
New Contributors
- @laoluogun made their first contribution in #2275
Full Changelog: v1.6.0...v1.7.0
1.6.0
Change logs: https://www.simpmusic.org/blogs/new-update-simpmusic-v160
- New light theme with theme mode settings and custom primary color
- Google Cast support: play music on your TV or speakers (Full version)
- All-new Android Auto experience: browse your library, search and view the queue
- Fix Discord Rich Presence connection issues
- Desktop: fix app crash on startup in release builds
- Desktop: Add native media controller for Windows
What's Changed
- New feature: Light theme + Custom color by @maxrave-dev in #2229
- Android Auto: New UI by @maxrave-dev in #2235
- Google Cast by @maxrave-dev in #2245
- v1.6.0: New version by @maxrave-dev in #2250
New Contributors
Full Changelog: v1.5.1...v1.6.0
🎉 SimpMusic Road to 10k Stars! 🎉
Thank you all for trusting and using SimpMusic. We are about to reach 10,000 stars—a number I couldn't have even imagined when I first started this project.
Your support has given me the motivation to overcome countless technical challenges to deliver better and better updates. However, I want to leave a quick reminder: SimpMusic is a 100% free and non-profit project. I dedicate my own personal time to serve the community. Because of that, I hope I no longer have to receive toxic feedback or harsh words from certain users.
Your respect for my hard work is the only motivation I need to keep SimpMusic alive and growing. Thank you to all the kind users who have always understood and stayed by my side! 🎧❤️
1.5.1
Change logs
- Add a toggle in About settings to turn blog post notifications on or off
- Desktop: fix an app crash that broke all text rendering
- Desktop: fix Canvas and video rendering see-through to the desktop
- Desktop: fix Lottie animations crashing the app
- Linux: fix the desktop icon and app name
What's Changed
- v1.5.1: Patch version by @maxrave-dev in #2209
Full Changelog: v1.5.0...v1.5.1
1.5.0
Change logs
Checkout full changelogs here: https://www.simpmusic.org/blogs/new-update-simpmusic-v150
- New artist page: immersive header with the artist's name logo, accent-colored follow and radio buttons, and a blurred bottom
- Get a notification when a new blog post is published, shown alongside artist release notifications
- Update the YouTube extraction engine (core) for more reliable playback and downloads
- Fix high battery drain and overheating caused by Discord Rich Presence retrying login in the background
- Fix Spotify lyrics and canvas toggles staying stuck after logging out
- Fix the liquid glass tab bar not switching screens when tapped
- Keep crossfade on the correct track when you pause, skip, or go back mid-transition
- Desktop: fix a crash when changing tracks
What's Changed
- v1.5.0: New version by @maxrave-dev in #2196
Full Changelog: v1.4.0...v1.5.0
1.4.0
Change logs
Checkout full changelogs here: https://www.simpmusic.org/blogs/new-update-simpmusic-v140
- Fix music pausing or stopping on its own between tracks (the background-playback freeze present since 1.0.4)
- New liquid glass bottom navigation on Android, with a press-to-bulge interaction
- New Apple Music-style in Local Playlist screen
- Optimize Spotify login
- Discover podcast shows on Home and open them in a dedicated podcast screen
- Fix empty Home and search shelves, and broken playback, after YouTube API changes
- Desktop: fix a startup crash and reinstall Windows updates in place without uninstalling
What's Changed
- v1.4.0: New version by @maxrave-dev in #2121
Full Changelog: v1.3.0...v1.4.0
1.3.0
Checkout full changelogs here: https://www.simpmusic.org/blogs/new-update-simpmusic-v130
Change logs
- New offline error screen on Home with Retry and quick access to your downloaded music
- Show translated lyrics in yellow under the Canvas subtitle on the Now Playing screen
- Smoother DJ-style AutoMix: equal-power crossfade curve and front-loaded BPM ramp
- Longer Auto mode crossfade for more deliberate transitions (20-45s, fallback 30s)
- Apple Music-inspired redesign for Album, Playlist and Now Playing screens
- Cleaner home item layout: enforced 3-line max with subtle marquee on long titles
- Preserve original track order when loading album songs
- Fix language codes for Chinese, Indonesian and Hebrew
- Desktop: Windows installer switched to MSIX with install.bat helper
- Desktop: macOS installer switched to a custom DMG
What's Changed
- Migrate Jpackage default to Hydraulic Conveyor by @maxrave-dev in #2051
- v1.3.0: New version by @maxrave-dev in #2058
Full Changelog: v1.2.1...v1.3.0
1.2.1
Change logs
- Hot fix: Fallback error when changing extractor library
What's Changed
- v1.2.1: Hot fix for changing new backend by @maxrave-dev in #2011
Full Changelog: v1.2.0...v1.2.1
1.2.0
Change logs
- Spotify-style horizontal pager for Now Playing screen with per-page palette backdrop
- Swipe to skip to previous track on Now Playing pager
- Add 256kbps stream option in settings for YouTube Music Premium user (replaces 320kbps preference)
- Optimize lyrics word-wipe animation (wall-clock based, smoother multi-step)
- Optimize AI client and fix AI translation
- Optimize Discord Rich Presence
- Remove Netscape cookie input from Dev YouTube login
- Fix YouTube extractor
- Bump target SDK to 37 (Android 17)
What's Changed
- v1.2.0: New version by @maxrave-dev in #2001
Full Changelog: v1.1.1...v1.2.0
1.1.1
Change logs
- Fix some UI bugs
- Fix Android Auto playback and controls
- Fix modal bottom sheet touch screen blocking
- Fix shuffle command routing from notification
- Fix Timeout check your internet connection
- Update dependencies
Desktop app:
- Fix crash when opening non-existent downloaded file
- Add Intel Mac DMG build
What's Changed
- v1.1.1: Hotfix by @maxrave-dev in #1865
Full Changelog: v1.1.0...v1.1.1