Releases: Jed556/AutoMidiPlayer
Smarter MIDI Handling & Stability Improvements
What's New?
- Added robust file handling to support auto scanning and handling problematic files. (79d40e9) (Wiki)
- Added MIDI folder auto scanning. (6985123)
- Add MIDI folder scan/refresh button to song view. (efb63f4)
- Fold out-of-range notes by octaves before quantization to avoid spam. (3a7f6b0)
- Improved song search by including parsed song details. (aa7f52b)
| Auto scan on | Auto scan off |
|---|---|
Bug fixes
- Fixed inverted octave calculation. (6195736, 3f3b161)
- Ensured DialogHost initializes correctly before use. (6fc20e1)
Auto key detection has undergone significant changes and is still being tested. If you encounter pitch or playback issues, it is recommended to manually set a default key offset for the meantime.
Covered Issues
- "DialogHost not set" still persists in other dialogs. (#15)
- Octaves are calculated in an inverted manner. (#14 )
- Feature request to add MIDI folder refresh button to song view. (#13 )
Full Changelog: v6.17.13...v6.21.0
Auto Key Detection Override & Manual Controls
What's New?
- Add manual song key setup and toggle to disable auto key detection (7ecca72)
- Change windows player integration to display artist instead of time and index (047885a)
| Edit Song | Settings |
|---|---|
![]() |
![]() |
Note
I've just noticed that for instruments with fewer keys, some songs tend to lose accuracy by ear, where auto key detection actually helps improve playback. However, for instruments with a wider key range (such as Roblox and Heartopia 37-key pianos), applying auto key detection can introduce a key offset, resulting in noticeable pitch inaccuracies.
This update addresses the issue by allowing manual key selection and giving users the option to disable auto key detection for better control.
I’m planning to implement a threshold so that auto key detection/correction only applies to instruments with fewer keys, avoiding key offset issues on instruments with a wider range, or explore improvements to smart transposition.
Bug fixes
- Properly aligned title bar buttons. (ca43857)
- Fixed issue where the mouse gets stuck after clicking a dropdown in the song list (695df16)
- Fixed thin draggable area in window title bar (afdd61d)
Covered Issues
- Auto song key detection causes inaccurate playback. (#12 )
Full Changelog: v6.17.7...v6.17.13
Quick fix for listen mode
Bug fix
- Fix unintended key offset application in listen mode caused by auto key detection (5650b43)
Changes
- Change default delay between press down and up to 50ms (fe06803)
Full Changelog: v6.17.6...v6.17.7
Smart Transpose & Key Detection
What's New?
- Added Smart transpose mode. (eee450c)
- Added automatic song key detection upon song import. (dcf0c3a)
- Added a toggle in instruments view to play unplayable notes during listen mode when transpose is set to
Ignore. (885e7c4) - Improved overall UI for a cleaner experience. (380fb43, 1af4f2f)
- Set Hold Notes to Off by default, as some games (e.g., Genshin Impact) can’t detect new key presses if the current key is still being held. (dcf0c3a, d713a2f)
Important
You might want to delete the song from the list and import it again or click the Reset Defaults button in the song edit dialog to automatically detect the song key of already imported songs.
Bug fixes
- Fixed file explorer opening twice when clicking the crash log link in the crash dialog. (52114e5)
- Fix issue where key offset is re-applied when previous button is clicked (20be79f)
Covered Issues
- The app now automatically detects the correct key, so there’s no need to manually search for it. (#11, #9)
- Limited transpose options (previously only ±1 semitone) have been addressed with the introduction of Smart Transpose. (#11, #9)
Full Changelog: v6.14.0...v6.17.6
Thanks for the support, everyone! I’ve been diving into music theory while developing this application, and I’m really enjoying the process. 💖
New Accessibility Features
What's new?
- Added Listen Mode toggle to the control panel (#10)
- Added pause on mouse click hotkey in settings (#10)
Bug fixes
- Fix crash when transposing a song 7dccb42
- Fix Sky Notes afff980
- Fix BPM not changing b7ef1ab
- Fix Hold Notes not updating correctly 42817b6
- Match the layouts to the game UI for better readability edef894
- Code cleanup and optimizations 18e9f26 f1325e7 4e6b162 5da3666
Full Changelog: v6.13.1...v6.14.0
Add keypress options
What's new?
- Added delay options between key-down and key-up when Hold Notes is disabled in the settings.
- Added an option to disable key-up events in the settings.
Note
The delay option is added because the keyup event fires way too fast. Since the input duration is practically zero, some games like Heartopia doesn't register the key press long enough to trigger the yellow visual feedback or the character's piano animation.
Tip
If you'd like the app to follow the original key-down and key-up from the MIDI file, you might want to consider enabling Hold notes in Instruments view. This is on by default for new songs.
Beta v6.12.12: 6.12.11...v6.12.12
Full Changelog: 6.12.11...v6.13.1
Fix Heartopia unnatural behavior
What's Fixed?
Revert to old SendKeyDirect() behavior where no immediate key-up is sent.
The issue happens because the
keyupevent fires way too fast. Since the input duration is practically zero, the game engine doesn't register the key press long enough to trigger the yellow visual feedback or the character's piano animation.
See issue #7 for more details about expected Heartopia animation behavior
Important
If you'd like the app to follow the original key-down and key-up from the MIDI file, you might want to consider enabling Hold notes in Instruments view.
Beta
Will be working on:
- A feature where you can set your own delays between key-down and key-up
- A toggle to send key-up or use the legacy behavior just sending key-down
Beta v6.12.12: 6.12.11...v6.12.12
More bug fixes!
What's Fixed?
- Fixed an issue in Queue history management where a removed/deleted song is still accessible by clicking previous 934316b
- Fixed playback issues 3e9f022
- Fixed app crash when deleting songs f165dad 750203c
Full Changelog: v6.12.6...6.12.11
Bug fixes
More Game Support and Enhancements
What's New
- Added support for Roblox. #5
- Implemented note mappings for Sky. Currently works only in Listen Mode. f8b812c
- Added more 15-key instruments for Heartopia. All 15-key instruments share the same note mappings. If you encounter issues, feel free to contribute) 1f23a88
- Improved Listen Mode (formerly Test Mode) f3c71f1
- Added a toggle to use Window Message for keypress simulation. 8e096d7
- Minor UI changes
- Bug fixes
New Contributors
Full Changelog: v6.10.0...v6.12.3





