
MelodyMatrix 1.2.0 and 1.2.1: Learn Section Groundwork, Playback Improvements, and a Startup Fix
Two MelodyMatrix releases went out last week, one right after the other. 1.2.0 brings the first steps toward a Learn section, some playback improvements, and initial MusicXML support. 1.2.1 followed a day later to fix a startup issue that 1.2.0 itself introduced.
1.2.0: Learn Section Groundwork
The biggest piece of this release doesn’t show up as a visible feature yet: it’s the plumbing for an upcoming Learn section, a series of lessons built into the app to help someone getting started with piano, chords, and more.
- Flexible lesson configuration: lesson series can now adjust the viewer and audio settings per lesson, instead of every lesson using one fixed configuration.
- Background license verification, so premium lesson content can unlock without extra steps from the user.
- Localized Learn content, shown in the app’s own language with English as a fallback wherever a translation is still missing.
- Premium lessons visible in the catalog before unlocking, so users can browse what’s available even without a license.
None of this is visible as a finished “Learn” tab yet. Vik is building the actual learn content in the background, and the app will be updated with a proper Learn section once it’s ready.
1.2.0: Playback Improvements
Alongside the Learn groundwork, playback itself got some attention:
- Only one file plays at a time, so switching between lessons or recordings no longer overlaps audio.
- A countdown indicator before playback starts.
- Adjustable playback speed, to slow a piece down while learning it or speed it back up once it’s comfortable.
- A fix for dropped notes: fast, back-to-back notes could get lost in the views during playback, that’s resolved now.
1.2.0: Initial MusicXML Support
MelodyMatrix can now load MusicXML files, with a few fixes for files that were getting stuck on loading. This ties directly into Sheetmusic4J , the JavaFX sheet music rendering library I wrote about last week , which is what will eventually power a real notation view inside MelodyMatrix. That notation rendering is still preliminary in this release, but the file loading it depends on is now in place.

On top of that, 1.2.0 ships a new splash screen design and adds particle effects to the Piano view.
1.2.1: Fixing a Startup Regression
Immediately after 1.2.0 shipped, it became clear that new splash screen didn’t always behave. On some systems, the loading screen shown at startup wouldn’t disappear once MelodyMatrix was actually ready: it stayed visible above the app window on macOS, or got stuck behind the main window on Linux. Rather than patch around it, the loading screen got removed entirely in 1.2.1, so the image above didn’t even last a full day in production, and I reported this as an issue in the JDeploy repo .

The same release also fixes a rare freeze during startup, where the app could briefly hang while checking the license status in a background thread.
If you hit the stuck loading screen with 1.2.0, restart the application so it udpates to 1.2.1.
Getting the Update
MelodyMatrix packages are published through jDeploy via GitHub Releases , for Mac (Apple Silicon and Intel), Windows (x64 and arm64), and Linux (x64 and arm64). If you already have the app installed, it updates automatically on next launch. Full release notes for every version are on the releases page .
The Viewers module stays open source , if you spot a bug or want to suggest something, open an issue there.