Skip to content

Releases: maxrave-dev/SimpMusic

1.7.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 07 Aug 16:51
5dc8736

Full changlogs here: https://www.simpmusic.org/blogs/new-update-simpmusic-v170

🎉 New features

Playback & player

  • Last.fm scrobbling (Full build only) — lastfm / lastfm-empty module 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; SwingPanel removed
  • 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, dropping material-icons-extended and 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-volume so it applies instantly
  • Normalise Tidal key names before Camelot matching — Tidal spells accidentals out ("FSharp", "CSharp") rather than using symbols, so keyToSemitone failed 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 the calculateKeyGapDurationFactor fallback from 1.0 to UNKNOWN_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 pageType instead 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 an ao_coreaudio use-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 ytdl option 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
  • NormalAppBar uses 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-newpipe bumped
  • 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.md updated for Last.fm, the from-source Linux libmpv build, Compose video rendering, and the video crossfade rules

What's Changed

New Contributors

Full Changelog: v1.6.0...v1.7.0

1.6.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 19 Jul 09:56
cebd12d

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 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

Choose a tag to compare

@maxrave-dev maxrave-dev released this 01 Jul 16:33
2a2e8ec

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

Full Changelog: v1.5.0...v1.5.1

1.5.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 28 Jun 12:12
cac815c

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

Full Changelog: v1.4.0...v1.5.0

1.4.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 07 Jun 14:45
c4c4ddb

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

Full Changelog: v1.3.0...v1.4.0

1.3.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 24 May 14:11
679ef1f

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

Full Changelog: v1.2.1...v1.3.0

1.2.1

Choose a tag to compare

@maxrave-dev maxrave-dev released this 10 May 08:16
ffe8017

Change logs

  • Hot fix: Fallback error when changing extractor library

What's Changed

Full Changelog: v1.2.0...v1.2.1

1.2.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 08 May 17:18
42b6f2d

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

Full Changelog: v1.1.1...v1.2.0

1.1.1

Choose a tag to compare

@maxrave-dev maxrave-dev released this 20 Mar 08:00
d57617b

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

Full Changelog: v1.1.0...v1.1.1

1.1.0

Choose a tag to compare

@maxrave-dev maxrave-dev released this 15 Mar 09:12
1959c12

Change logs

  • Add Canvas subtitle sync display for lyrics
  • Add BPM, key, and scale display to player bottom sheet
  • Add simpmusic:// and simpmusic.org deep link support
  • Add Auto Crossfade mode (like AutoMix)
  • Redesign playback speed/pitch controls with improved animations
  • Standardize share URL to use simpmusic.org
  • Optimize rendering performance and UI drawing APIs
  • Improve local song cache checking before fetching from API
  • Fix media playback and streaming issues across platforms
  • Fix player errors with retry logic
  • Fix video download
  • Fix sleep timer (end of song mode)
  • Fix rectangle thumbnail
  • Fix pitch and playback speed controls
  • Fix analytics day range preference in playlists

Desktop app:

  • Replace GStreamer with VLCJ for audio playback
  • Add Crash dialog for desktop
  • Fix gapless playing when changing settings
  • Disable transparency and custom titlebar in VM environments
  • Improve AppImage desktop integration

What's Changed

Full Changelog: v1.0.4...v1.1.0