For example, the distance between C and C# (black key next to C), or the distance between E and F (both being white keys). In other words, a semitone is also the distance between two consecutive keys on the piano. A semitone is the minimum distance between two consecutive notes in any tempered scale (12 equal semitones per octave). In the case of Linux, VMPK does not use the scancodes that are produced by the keyboard drivers directly, but uses the so-called 'keycodes' of the X11 keyboard driver, managed through the XCB library.A scale is a set of musical notes ordered as a well-defined sequence of intervals (tones and semitones). There are several programs that are useful for obtaining the key codes and planning new translation maps. What is not possible is to translate a key to several notes. Several different keys can be translated to the same MIDI note. This is not a problem when editing the XML file using a text editor, since the XML file is key oriented. There is an editor window in VMPK that also allows you to edit translation maps without leaving the program itself, but this editor has a drawback: it is oriented to MIDI notes, and for this reason it is not possible to assign two different keys to the same note. The "note" attribute corresponds to the MIDI note, and the "keycode" corresponds to the key number (scancodes on Windows, keycodes on X11 and macOS). This is the structure of the low-level translation map: For example, in Windows, you can use notepad.exe, or even better: Notepad++. In all cases the translation maps are XML files that can be edited in any operating system with the simple text editor that the user prefers. These types of maps are independent of the user's language and do not have "dead keys", so they allow us to take advantage of a greater number of keys on the keyboard, but they have the disadvantage that it is necessary to find out these codes and that they are different in each operating system. The same map can be used in different operating systems, but has the disadvantage that the "dead keys" cannot be used to produce MIDI notes. These types of maps that we could call high level depend on the user's language settings. From alphanumeric characters to MIDI notes.Two types of translation maps can be used in VMPK: The codes sent by the keyboard hardware and managed by the operating system driver are called scancodes and are the lowest rung on which a program can rely to process keystrokes on the computer keyboard. An alternative is to use low-level key codes instead of alphabetic signs as the source of the note conversion map. All of the above multiplies the number of possibilities and limitations that must be taken into account when transforming keystrokes into musical notes. In many languages, there are some keys called "dead" that when pressed do not produce any character but affects the next one. Even within the same alphabet there are different distributions of the characters, such as QWERTY, AZERTY, and QWERTZ. However, most of the functions (such as changing the octave, the instrument, or the MIDI channel) are accessible via keyboard shortcuts, which are also configurable.Įntering text data requires computer alphanumeric keyboards to be adapted to the user's language, as there are different alphabets in addition to the Latin alphabet. For example: in the main window, no control accepts the focus, nor is it possible to change the focus between the different controls located on the toolbars using the Tab key. The usage of computer alphanumeric keyboards in this way is not the intended one, nor it is orthodox, therefore it should not be expected that in VMPK the alphanumeric keyboard will behave as in other programs. In the case of VMPK, instead of text input the keys are used to produce MIDI notes emulating the function of musical keyboards. The purpose of alphanumeric computer keyboards is to make it possible to enter text data into programs.
0 Comments
Leave a Reply. |