-
Notifications
You must be signed in to change notification settings - Fork 404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sustain Pedal in MPE mode doesn't work properly #1268
Comments
baconpaul
added a commit
to baconpaul/surge
that referenced
this issue
Nov 2, 2019
In note-per-channel mode notes would ask the wrong channel for their sustain pedal status; so devices which put that controller on channel 0 (since it is monophonic) would result in no sustain in channel-per-note modes. Fix that by making the holdBuffer the appropriate data structure etc. Closes surge-synthesizer#1268
baconpaul
added a commit
to baconpaul/surge
that referenced
this issue
Nov 2, 2019
In note-per-channel mode notes would ask the wrong channel for their sustain pedal status; so devices which put that controller on channel 0 (since it is monophonic) would result in no sustain in channel-per-note modes. Fix that by making the holdBuffer the appropriate data structure etc. Closes surge-synthesizer#1268
baconpaul
added a commit
that referenced
this issue
Nov 2, 2019
In note-per-channel mode notes would ask the wrong channel for their sustain pedal status; so devices which put that controller on channel 0 (since it is monophonic) would result in no sustain in channel-per-note modes. Fix that by making the holdBuffer the appropriate data structure etc. Closes #1268
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This is easiest with my linnstrument
Fire up a surge in MPE mode and put the LinnStrument in one channel mode. The sustain pedal works just fine.
Fire up a surge in MPE mode and put the Linnstrument in one-note-per-channel (aka proper MPE) mode and the sustain pedal is defacto ignored.
My almost definite guess is that SurgeSynthesizer::releaseNote looks at channelState[channel].hold but the controller which sets sustain comes in on channel 0 (the control channel; since it is monophonic) and doesn't get applied to the channels where the notes are. So that needs an if mpeEnabled and channel swap
The text was updated successfully, but these errors were encountered: