Full virtual piano PC keyboard mapping (+uppercase)

Synthesia is a living project. You can help by sharing your ideas.
Search the forum before posting your idea. :D

No explicit, hateful, or hurtful language. Nothing illegal.
Post Reply
NeuroFox
Posts: 3

Post by NeuroFox » 03-16-20 8:58 am

Problem
I use virtual piano to play some piano using PC keys i already know and to learn to type faster at the same time.

I found out that Synthesia has possibility to remap virtual keys by changing settings.xml file. I tried to put there config like
<setting key="System.SoftwareKeyboardMapping">sSdDfgGhHjJklLzZxcCvVbBnm</setting>
and expected lowercase PC s to trigger key1 and uppercase PC S to trigger key2. Instead it started to trigger both key1 and key2 at the same time when i press either lowercase s or uppercase S.

Pros
I find the configuration "lowercase pc key = white piano key", "uppercase pc key = black piano key" quite good because:
1. it allows to play many octaves at once.
2. there are already lots of examples over the internet for example if you search for "site:trello.com virtual piano sheets"

Cons
1. New case-sensitive key mapping will influence users who already expect both lowercase and uppercase symbols to work same. So i propose to add some menu setting that turns on case-sensitive key mapping on (and set to off by default) so that can be used if needed.
2. Pressing both lowercase and uppercase is not possible at the same time so that will not work for "waiting for all keys" learning mode but will work for other modes

Nicholas
Posts: 12238

Post by Nicholas » 03-16-20 3:59 pm

NeuroFox wrote:
03-16-20 8:58 am
Pressing both lowercase and uppercase is not possible at the same time...
This particular con seems big enough to be a deal-breaker to me. It feels like it'd be strange to only be able to play white keys OR black keys, never at the same time.

This scheme should already work with the top (number) row on the keyboard, because Shift+2 isn't a "capital 2", it's a @ sign, etc. So at the very least you should be able to test this in a small way. With the top row used twice, you can get around 40 keys mapped simultaneously pretty easily.

With things like key ghosting and having to learn the extensive list of all these virtual keys, I worry that it wouldn't be of much value to people. Really, the virtual piano is just there for the dire emergency of not having any access to a MIDI-enabled digital piano. Encouraging its use is kind of going in the opposite direction in an app focused on piano practice. Hmm.

NeuroFox
Posts: 3

Post by NeuroFox » 03-16-20 10:56 pm

It can feel strange yet people play in such a way. And play good. Ive seen not one and not 10. Person who knows that keys can be pressed with shortest pause possible make it sound quite good even if thats not perfect. And the one who wants perfect sounding goes for piano keyboard for sure, but thats next step.

I like how it sounds. People also like my plays. Also it makes me want to continue improving myself as a creator and especially music creator.

If developers will have some time for that then would be great. That change feels not very hard to implement. In other case I would not bother dev's with some stupid stuff.

Also, my "dire emergency of not having any access to a MIDI-enabled digital piano" can last for many years so just playing the best way I can for now.

Nicholas
Posts: 12238

Post by Nicholas » 03-20-20 6:27 pm

NeuroFox wrote:
03-16-20 10:56 pm
That change feels not very hard to implement.
It took deleting three lines of code. :D

Alright, that'll be in the next Synthesia 10.7 development preview. We'll see how many emails this generates saying "the virtual piano isn't working!" because they didn't notice their Caps Lock key was on...

NeuroFox
Posts: 3

Post by NeuroFox » 03-29-20 2:49 am

Aigth) Waiting for it, thanks alot :) Bow to you as that will require you to withstand waves of such people explaining changes. Pleased to see one of those developers supporting product for years :)

Meanwhile improved so that even was able to play Clair de lune at least somehow even a bit fast.

Post Reply