KBD-Infinity keyboard voice laboratory

We have completed the main technical routines that constitute the foundation of KBD-Infinity. We are now building the four main windows
of the program with a goal to a release in early summer. We are testing program functions with the Yamaha PSR E423 keyboard, although the program may be used on any electronic keyboard with MIDI connections to a computer to access the full range of Yamaha styles.

KBD-Infinity has four windows.


The MIDI Player is a full-featured utility for playing MIDI and karaoke files on any connected MIDI device. With the Style Organizer, you can preview, correct and organize Yamaha style files. Use the Voice Lab to create complex MIDI patches or capture them from your keyboard. The key component is the Performer window, where you can set up sophisticated arrangements and sequences that would be impossible on a simple keyboard. The fundamental unit in the Performer window is the Song, a preset recorded as a file that includes the following components:

  • One or more Voice presets that may be combined in parallel, octave or harmony.
  • A Style with complete access to all sections (introductions, main sections, transitions, endings).
  • A Sequence that contains a set of operations (style section change, tempo change, voice change,fade,…) invoked by pressing a single,
    user-defined key.

In this article, I’ll describe some the features and innovations of the Voice Lab. It marks a turning point in our development of KBD-Infinity. Previously, we worked to replicate functions of the on-board keyboard processor. With the Voice Lab, the program capabilities extend far beyond the test keyboard, both in terms of functionality and sound quality. Figure 1 shows a preliminary interface. The commands in the bottom-left corner control the input and output MIDI ports. The program can be pointed to any installed device.

KBD-Infinity Voice Lab, screenshot.

Figure 1. KBD-Infinity Voice Lab, screenshot.

The commands in the Edit voice group (center) are used to initiate and to test a new voice.

  • New voice. Clear the program and start work on a voice from default settings.
  • Capture voice. This is a unique and useful feature of KBD-Infinity. You can grab favorite voices from your keyboard to use in the program.
    Simply put the program in Capture voice mode and use the keyboard SendInit command. KBD-Infinity filters the information and uses it to
    set the controls on the left-hand side of Fig. 1. You can save the settings directly or improve them (e.g., the volume is too low for almost all the XGLite voices on the PSR E423 and the organ voice are an octave too low).
  • Update in voice list. This command is active if you are editing an entry in a voice file (right-hand side). The file settings are replaced with the current values of the voice controls.
  • Add as new to list. Save the current values of the voice controls as a new entry in the voice list.
  • Send test notes. Send a short note sequence to the MIDI output device to test the current control settings.
  • Toggle echo mode. The program reads notes from the MIDI input device and sends them to the MIDI output device with the current control
    settings. The mode is useful for fine-tuning voice parameters.

The controls in the center are used to build and to modify voices.

  • The string in the Name field is used as an identifier in the voice file.
  • The Bank select fields are the most- and least-significant bytes of the XG bank identifier. As with the remaining controls of this
    section, these values are filled in automatically when you capture a keyboard voice.
  • In the GM instrument pop-up menu, can choose any of the 128 general MIDI instrument sounds.
  • The commands Volume through Tremolo depth are used to fine-tune the voice. The sliders enter numbers in the range 0-127 (&h00 – &h7F). The top group is recognized by the PSR E423. Any changes are immediately reflected in the Send test notes command or the Echo mode. Creating a perfect sound is a quick and easy procedure.
  • The Left/right (Pan) command determines how much of the voice sound comes out of the left or right speakers of the keyboard or from an
    external amplifier. With this feature, you can define multi-voice songs with stereo effects in the Performance window.
  • You can include an Octave shift (up or down) as part of the voice specification. The information is recorded in the voice file.

The controls on the right-hand side apply to voice files. These files, which follow standard MIDI conventions, allow you to create and to save voice sets. A set could represent the entire repertoire of a keyboard with hundreds of entries or a few specialized voices that you will use in a performance. A following article discusses the voice-file format.

  • Load voice file. Load a voice file (with a name of the form FPrefix.MDV) for editing. The voice set is shown in the listbox at the bottom.
  • Save voice file. Save (or save as) complete information for the listed voice entries.
  • Edit voice. Pick a voice from a loaded voice file for modification. The program sets the current voice and the controls on the left-hand
    side.  You can over-write the present file entry or save the modified voice as a new entry in the list.
  • Delete voice. Delete the selected voice. The change will be recorded when you save the voice file.
  • Reorder voices. Bring up a dialog to move entries to group voices in a set by category.
  • Clear voice list. Remove all entries in the list to start a new set.


[1] This site has no affiliation with the Yamaha Corporation.

[2] Find out more about KBD-Infinity: Home page.

[3] If you have comments, please contact us at info@kbd-infinity.com.

[4] Download the KBD-Infinity Instruction Manual: kbd-infinity.pdf.

Comments are closed.