View Issue Details

IDProjectCategoryView StatusLast Update
0001881OpenMPTFeature Requestpublic2025-05-03 19:37
Reportercubes Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status newResolutionopen 
Platformx64OSWindowsOS Version10
Summary0001881: On-screen virtual piano keyboard
Description

Display a virtual, on-screen piano keyboard.
Everything that can be done currently by pressing a "note" key in OpenMPT (in the default key setup Q for a Base Octave C, for example), can be done by using the on-screen keyboard. Mainly: entering notes in the pattern editor, testing out the sounds of instruments and samples.

This will make it easier for users who are accustomed to the standard piano layout to compose and "test out" how a melody will sound.

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Activities

Saga Musix

Saga Musix

2025-04-27 12:18

administrator   ~0006350

For the time being, you could probably use something like VMPK together with a virtual MIDI loopback like loopMIDI.

cubes

cubes

2025-04-27 21:32

reporter   ~0006351

Last edited: 2025-04-27 21:39

This works great, thank you.
Using the temporary solution I can't seem to play (I mean "test out") samples and instruments in the Tree View. It would be useful if the upcoming feature provides support for this.

Saga Musix

Saga Musix

2025-05-02 12:12

administrator   ~0006354

I didn't specifically test it with VMPK but previewing samples / instruments via MIDI works just fine here in the tree view. Can you elaborate on what and how exactly you are trying to preview?

cubes

cubes

2025-05-02 19:03

reporter   ~0006358

Just using the basic instruments that come with Windows.
OpenMPT is open to the General tab. I click on an instrument in the tree view. If I press using my keyboard, I can preview the sound. Then I switch to the VMPK window and try pressing a key, but there is no preview sound like before.
Interestingly, if I try previewing a sample with VMPTK while OpenMPT is open to the Pattern view, the notes I press are sent to the pattern view (instead of being sent to the preview function)

Using a MIDI to USB with an electronic piano keyboard, I can preview samples just fine... when Windows is focused on the OpenMPT window (I mean it's selected, not sure what the right term is). But if I click on my desktop, then MIDI input will go to the pattern editor, not the preview function.

Putting together the pieces, here is my theory:
The way OpenMPT handles MIDI input allows notes to be entered into the pattern even when OpenMPT is not the focused window in the Windows GUI.
However previewing samples through MIDI only works when OpenMPT is the focused window.
That's why VMPTK doesn't work to preview samples - because in order to press a note on the piano in VMPTK, I have to switch to the VMPTK window.


Personally I think that this behavior in OpenMPT should be left the way it is. In the scenario above where OpenMPT's window is not selected and MIDI notes are being entered, most users would expect those notes to be entered into the pattern editor rather than the preview function. I can imagine someone working on a song and getting frustrated when he realizes that he needs to switch back to the pattern editor to start entering notes. Or worse, someone might have selected an instrument in the tree view, forgotten about it, and then get confused why OpenMPT is not recording his MIDI input in the pattern editor.

Saga Musix

Saga Musix

2025-05-03 19:37

administrator   ~0006362

Right, unfortunately Windows will redirect the keyboard focus from the tree view to the active module view whenver the main window loses focus. I don't think this can be worked around easily.

Issue History

Date Modified Username Field Change
2025-04-27 01:36 cubes New Issue
2025-04-27 12:18 Saga Musix Note Added: 0006350
2025-04-27 21:32 cubes Note Added: 0006351
2025-04-27 21:39 cubes Note Edited: 0006351
2025-05-02 12:12 Saga Musix Note Added: 0006354
2025-05-02 19:03 cubes Note Added: 0006358
2025-05-03 19:37 Saga Musix Note Added: 0006362