Categories

Fixing percussion sounds with Style Master

Yamaha-format styles are accompaniment files that you can play on your digital keyboard or use in our Accompaniment Machine program. Often, you may find a great style that is effectively useless because 1) it’s permeated by police whistles and other strange sounds or 2) the percussion sounds like someone pounding on a piano . In this article, I’ll explain the origin of the problems and review new features in the Style Mater that lets you correct the files.

To understand the problem, it’s necessary to review some features of MIDI (Musical Instrument Digital Interface). A MIDI file consists of a sequence of timed messages. The most important one is the 3-byte NoteOn Message

90h+ChanNo NoteNum Volume

The 90h value specifies NoteOn and ChanNo is one of 16 MIDI channels, each of which can represent an individual synthesizer voice (instrument). The pitch value (in the range 00h-7Fh) is given by the number NoteNum, representing the 88 keys of the piano plus some extras. Yamaha styles use channels 08h through 0Fh. By convention, channel 09h carries percussion sounds. Optionally, channel 08h can be set as a supplementary percussion channel by sending an appropriate message. Because these sounds do not have pitch, the NoteNum value is used to specify the type of instrument. The following standard set is recognized by all MIDI compliant keyboards and synthesizers:

Regarding the first issue, the complication is that high-end keyboard workstations may have several alternate drum sets that make different sounds in response to the same NoteNum. A style file designed for such a machine (often with the suffix PRS) sounds great on that keyboard but may include inappropriate sounds on a keyboard or with a soundfont that doesn’t recognize the drum set.

The second issue arises when using the computer as the MIDI output device through soundfonts. Neither Microsoft MIDI Mapper nor CoolSoft VirtualMIDISynth recognizes percussion messages on channels other than 09h. In this case, percussion messages on channel 08h are reproduced as through they were for a pitched instrument, leading to some strange sounds.

Figure 1. Current Customizer interface.

We added features to the Style Master to fix the problems. Figure 1 shows the program interface. There are two new checkboxes: Percussion filter and Percussion channel compress. The first control addresses the issue of inappropriate sounds. It is fortunate that the General MIDI equivalent is acceptable for most of drum sounds. There are only a few really bad ones. When the Percussion filter box is checked, SVO assigns zero volume to NoteOn signals to percussion channels in a save file operation with the following NoteNum values:

When the Percussion channel compress box is checked, Style Customizer makes a simple correction when channel 08h has been defined as a percussion channel. The program assigns any NoteOn or NoteOff signals to channel 09h rather than channel 08h. There is no loss of information, and the percussion sounds are reproduced correctly by both Microsoft MIDI Mapper and CoolSoft VirtualMIDISynth.

A sound is worth a thousand words. In the following excerpt, a PRS file is played through CoolSoft. For clarity, only channels 08h and 09h are included. The first part is the original file while the second part is a corrected file generated by Style Master.