Skip to content

MIDI Keyboard does not change attributes of played notes #474

Open
@CreeperPookie

Description

@CreeperPookie

Describe the bug
When I got a MIDI keyboard for OpenNBS songs, I didn't expect many features to work (because OpenNBS isn't a full DAW like FL Studio or similar); however, it worked better than I thought; even the pressure sensitivity worked perfectly! however, one thing I did notice was the pitch wheel, modulation wheel, and volume slider did not change the sound of played notes at all; I wouldn't expect modulation to work since OpenNBS doesn't have any modulation options, but I was surprised that the pitch wheel didn't respond since there is a class dedicated to it scripts/midi_input_pitch_wheel/midi_input_pitch_wheel.gml

To Reproduce
Steps to reproduce the behavior:

  1. Open OpenNBS
  2. Connect a MIDI device with a pitch wheel or a volume slider
  3. Play a note with the MIDI device for reference
  4. Change the pitch or volume on the MIDI device
  5. Play the same note again
  6. Note how the newly configured pitch or volume doesn't affect the sound of the played note

Expected behavior
Ideally, I would expect OpenNBS to play the note with the current pitch and/or volume; however since OpenNBS seems to use an external library to read the pitch of MIDI devices, I understand this might not be practical to implement; I am curious though if certain MIDI keyboards do change the played pitch, especially if they output in the expected range.

Additional context
I did test the keyboard with a MIDI diagnostic program and it does receive the volume and pitch change events, but I did notice mine seems to output pitch from [0-16383] in steps of about 192; not to mention the code appears to be expecting a value from 0-127, which would explain this.
However, I did also observe the modulation wheel does output from [0-127] (this time in steps of 2 or 3), which is also very interesting
For context, I'm using a Midiplus AKM320

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions