New Features For April, 2020

During the month of March, 2020, a number of new features have been implemented in the KeyMusician Keyboard. Most notable of these features, is making the application, as well as its tutorials and help documentation, accessible for the blind.

Let’s take a brief look at the new features.

Feature 1: Saving A Text-File Of The Music-Keys Played

The sheet music in the KeyMusician Songbook has the music keys to press, as lyrics, along with the music. But this is also a handy way for players of the KeyMusician Keyboard to give their new music to other KMK musicians.

If they have heard the piece, and know the rhythm, all they need to play it is the music-keys to press. And these keys are the same regardless the key-signature the piece is played in.

This may also be a way for blind KMK musicians to distribute their music.

The application makes a continuous recording of all the melody-area music-key-presses you make. It has a big enough area to store it, that should fit any piece you might want to record.

To get the text file it recorded, simply click (activate) the “Save Config” file on the F1 pane.

It will write the configuration file, then it will ask you if you want to save a text file of the music notes played. If you want it, answer “Yes”, and it will write a text (.txt) file of it, having the same file name as the configuration file you saved.

For example, if I was using “PriorConfig.kmk” for the configuration file, and I chose to write a music-key text file, its filename would be “PriorConfig.txt”.

Then, you can edit that file with a word processor, deleting any notes from before you started playing the actual recorded piece, and separating lines of the file so they correspond to musical phrases.

Here’s an example.

I played the C Trumpet part from my arrangement of the 3rd movement of Beethoven’s Moonlight Sonata, but only the first 14 measures. Here is the sheet music for it:

Picture of the C Trumpet part of my arrangement of the Beethoven piece, through measure 14.  There are four sharps in the key-signature.
Here is an edited version of the text-file I got from my performance, separated into phrases using a word processor:

Beethoven’s Moonlight Sonata, Third Movement
S S S S S Q S Q E Y E Y I P I Y 
+D +D +D +D +D A +D A E +T E +T U P U +T
S S S S S +Q S +Q E Y E Y +I P +I Y 
R R R R R U P U 
+W +W +W +W +W U +O U 
P P P P P P P O [ P O I U Y +T 
E E E E E E W +T R E W Q A +D G G G G G G 

Notice that there is a space between each music key note, except some of them have a plus-sign in front of them. The plus-sign means the Page-Up key was used with the note, making it a sharp of that note. If a minus-sign appears before a music-key note, it means the Page-Down key was used with the note, making it a flat of that note.

If you would like to try playing along with that piece using those notes, and to hear what it sounds like, click the link below:

Beethoven Moonlight Sonata Third Movement Excerpt Audio File

Feature 2: The ‘Down’ Wah-Wah Key

We have always had a Wah-Wah key, on the KeyMusician Keyboard. It’s the Enter-Key. You press it repeatedly while holding out a note, and it varies the tone of the note manually, depending on how you repeatedly press the Enter-Key.

Each time you press it, it raises the pitch of the note (or notes) using the pitch-bend control, and when you release it, it restores the note (or notes) to their original pitch. So it moves the pitch up when you press it, then restores the pitch back down to what it was, when you release it. So it’s what we call an ‘up’ wah-wah.

This new feature adds a ‘down’ wah-wah, by repeatedly pressing the Caps-Lock key. By a ‘down’ wah-wah, we mean that when you press the Caps-Lock key, it lowers the pitch of the note (or notes) using the pitch-bend control, then restores the pitch back up to what it was when you release the Caps-Lock key.

It sounds similar to the ‘up’ wah-wah, but is distinctly different.

Unfortunately, this feature isn’t supported on Mac OS X, because on that system, it doesn’t pass key-press/key-release events to the application for the Caps-Lock key, but instead sends a key-press event when caps-lock goes on, and a key-release event when you press it again to turn caps-lock off. This behavior could leave the notes in a down pitch-bend state, out-of-tune with everything else! In addition to that, it’s twice as slow, and not as expressive.

When you use this key, you may leave it in a caps-lock state, but that doesn’t effect the application, because it uses raw key-events.

Feature 3: Accessibility For The Blind

Blind people cannot see the screen, and can’t use a mouse to point and click on things. They depend on navigating the components of the screen using the Tab-Key, or Shift-Tab-Key. When a component has focus, a screen-reader (with its robot voice) reads to them what the component is, what it contains, and its tool-tip.

The KeyMusician Keyboard windows make extensive use of tool-tips, and in some cases they are necessary, so the screen-reader should have the capability to read tool-tips turned on.

Making the F1 pane accessible to the blind was not too difficult, but the performance panes were another matter, since we don’t want the music to suddenly stop in the middle of a performance, because the Tab-Key was accidentally hit, and a screen component stole keyboard focus!

With a bit of persistence, and a lot of testing, we finally got this to work.

In the performance panes, hitting the Tab-Key (or Shift-Tab-Key) will navigate to the next (or prior) screen component, allowing the screen-reader to describe the component, and every focusable component will pass music keys on to the application, so the music doesn’t accidentally stop.

We also made it possible to navigate to the MIDI Player/Recorder window, and the Learning Metrics window, using the Alt-Tab-Key, or Control-Down-Arrow (followed by arrow-keys to select which window), on Mac OS X.

But there was another problem.

In the Help documentation, and in the Tutorials, there are a lot of pictures. But these pictures are useless to a screen-reader, which depends on the alternate-text supplied for the picture, which, unfortunately, was almost never supplied.

We had to go through all of the Help documentation, and every tutorial, to supply alternate-text to describe what each picture shows. Also, there were constant references to clicking on things, with no mention of tabbing-to, and activating controls.

With the above changes, as well as a few re-written sections, the existing documentation will now work, and separate documentation for the blind is not necessary.

Switching to the Different Windows of the Application, and Other Details

On Windows and Linux machines, you can switch to the next window of the application by pressing the Alt-Tab-Key (or Shift-Alt-Tab to go to the prior window). These keys will also take you to the windows of other active applications.

On Mac OS X, with a KMK window focused, you press Control-Down-Arrow to arrange the KMK windows on the screen, then you press an arrow-key to move the focus to the next window in a particular direction. For the blind, that means you try different arrow-keys, and see which window you switch to.

On Chromebook, the Alt/Tab and Shift-Alt-Tab keys worked for the application installed within ChromeOS as a Linux Application. But on Linux installed in a separate root file system (called Crouton), Alt-Tab and Shift-Alt-Tab only moved within different application windows, and there was no way to access the application’s helper-windows. The same was true for the Gallium-OS system installed on a separate drive, using the Chromebook hardware. The application is generally usable without accessing those other windows, however.

Both the “Num-Keypad – Chords” window, and the “Num-Keypad – Dynamics” window are not focusable (meaning you can’t Alt-Tab to them). These windows supply useful information visually about the current chord, or dynamics, but it would be impractical to focus it and tab-through the components to read it during a performance.

With both of these windows, everything is done using numeric keypad keys. If you’re blind, you need to pay more attention to remembering (or hearing) what you’ve done, rather than glancing at it to remind yourself, and you’re probably better at keeping track of this sort of thing anyway.

If you are blind, and would like to read a words-only description of how all of the keyboard keys are used by the KeyMusician Keyboard, as well as a description of how chords are played, and how dynamics are controlled – both using the numeric keypad, follow the link below. Return back here, using your browser’s back-button.

Keyboard Key Usage by the KeyMusician Keyboard

To return to the index of all KMK Newsletter articles, click/follow the link below.

Index Of All Newsletter Articles