Skip to content
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

added octave up and down buttons #409

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

quirkylemon
Copy link

I added octave shift buttons and very basic documentation for the feature.
This currently has an issue where if press one of the octave buttons while holding notes it can cause them to get stuck. but this is also an issue in Surge-XT and LMMS iirc.

Also at some point I hope to add a panic button that will clear all audio output and active notes.

@FulopNandor
Copy link
Contributor

I have applied the ''octave-shift'' modifications in both MS Windows 10 and Raspbian OS (bookworm), and I have also experienced that the virtual keyboard can get stuck in both cases. The symptoms were same in the standalone versions: when some keys associated to notes were depressed and held down (e.g. key S and D), and then either key X or C was depressed and released during the held state of keys S and D, and, finally, the keys S and D were also released, the notes associated to S and D and their octaves were activated simultaneously - but not terminated only if button INIT was clicked.
dexed-octave-shift-keyboard-stucking

I have also made a further attempt: I moved the subdirectory ''JUCE'' being in ''libs'' outside of my local repo and substituted it with a soft symlink to the most recent version of JUCE just cloned. Unfortunately it has not solved the stucking problem.

@quirkylemon
Copy link
Author

yeah that is an issue in Surge XT too. I am not sure how to go about fixing it so any ideas you might have would be greatly appreciated.

@FulopNandor
Copy link
Contributor

Unfortunately, I have no enough experience related to JUCE, so I have really no idea, how to overcome this problem. So, I really would not like to express any negative criticism, but I have also encountered another problem, which is marginal to the current issue but might be related: JUCE does not handle the mapping of PC keyboard layout schemes properly. I use a Hungarian PC keyboard, where the positions of the Z and Y keys are swapped compared to the original US keyboards. Interestingly, my Z key, which is next to T, does not produce any sound - but the Y key does, which is next to X, according to Hungarian keyboard layout.

@mkruselj
Copy link
Contributor

@FulopNandor Yes, JUCE virtual keyboard only supports QWERTY layout. For Surge XT I had to write specific layouts and offer an option to switch between them, you can see here:

https://github.com/surge-synthesizer/surge/blob/2834ca4c4fb270b1987bc0de1c47b9c0830563e6/src/surge-xt/SurgeSynthEditor.h#L118
https://github.com/surge-synthesizer/surge/blob/2834ca4c4fb270b1987bc0de1c47b9c0830563e6/src/surge-xt/SurgeSynthEditor.cpp#L279

And then provide UI for switching between those layouts.

@FulopNandor
Copy link
Contributor

@mkruselj, thank you for your answer, I am going to study that!:-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants