-
Notifications
You must be signed in to change notification settings - Fork 83
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
Sostenuto pedal does nothing #624
Comments
Ok, so I've had a bit of a look at this and I'm not sure this is implemented in the Synth_Dexed synth engine MiniDexed uses. I've found references online to sostenuto being "key hold" which can be set to be controlled by the second foot controller (FC2) in a DX7ii: But can't see where this maps into Dexed itself - I'm not sure it is part of the original DX7? There are a number of API calls in Synth_Dexed to set what the foot controller will do for voices (choosing combinations of pitch, amplitude, EG and the range) and there is a global sustain function. But I can't see a mention of sostenuto or key hold in the original DX7 manual and I'm not sure the original DX7 recognised CC66 either from the MIDI implementation chart I've found - again I'm wondering if this might be a DX7ii thing... Kevin |
"Key Hold" sounds like the right thing though it's sad that it's not in the original DX7. :( |
Should I suggest this to the upstream Synth_Dexed or the original Dexed? |
Hmm, good question. Not sure. I guess ultimately it would have to be in Synth_Dexed regardless even if the original change is further upstream, so I'd probably start there. I can see that each note has a "sustain" flag but that seems to always be set according to the voice's global sustain status. I don't know how the two would interact so it might be necessary to introduce a "hold" flag for notes too to allow either sustain or hold to hang on... I don't follow the Dexed code as much as Synth_Dexed, but I couldn't obviously see it implemented there either. It certainly didn't look like it processed CC 66, only CC 64 - this is in PluginProcessor/processMidiMessage, which appears to have most of the logic that became dexed.cpp in Synth_Dexed. Given how the code is quite diverged anyway, it could perhaps be added to Synth_Dexed and not worry about the original... Kevin |
Thanks @soyersoyer. As soon as it is merged in https://codeberg.org/dcoredump/Synth_Dexed, we shall update MiniDexed to use the updated Synth_Dexed version. |
It's merged in Synth_Dexed. Thanks! |
This one needs to be merged also #746. And the CC 66 should call the new functions. I'll create a PR. |
Hopefully closes probonopd#624
I just tried the latest release with my dpiano and while the sustain pedal works the sostenuto one doesn't.
Any thoughts on adding support for this?
The MIDI CC# for sostenuto is 66.
The text was updated successfully, but these errors were encountered: