Purple Hearts hpmusic

Create a Song

Sunday, 07 November 2010
In this article we learn, how to program a MIDI-File of good quality.

1. Introduction

Our task is to create a MIDI-file of good quality. I think we are able to play it on our keyboard and have a basic knowledge of MIDI, about notes and a sequencer to edit a MIDI file.

The best way is to optimize a recorded song at the PC. We use the freeware program PSRUTI (look at Downloads - PSRUTI) and a sequencer like Cubase, Cakewalk, Sonar, XGWorks or Logic to correct bad notes.

I report my method and the special manipulations to get good songs. It is my procedure and I do not assert, that it is the best one. I would like to get some remarks of my readers, if my method can be improved. It may be attractive to discuss this.

There is no difficulty to create a song on YAMAHA keyboards and we will get an identical image of the music we have recorded. But in most cases there are some parts or notes which should be modified. Often we get a slight song, and we would like to increase the volume. There are many other reasons to edit a recorded song.

Another method to create a song is to enter the notes on PC using a software program like XGWorks, Cakewalk or Cubase. In both cases we have to change or insert some events into the file after this, to get an excellent sound on the PSR.

2. Treatment of a keyboard-song

In this chapter the first step is to record a song on the keyboard. We have to choose the melody voices, the style accompaniment - if desired -, the Multi Pad and the effects of the Mixing Console, until we have got the best sound of all parts. I strictly recommend to save the song settings as registration. Use the quick record method; then your songs will get a live character. Save your recorded songs at the hard disk, memory stick or floppy. Often we have to record several versions of the song and decide one to be the best. If you use style accompaniment, repeat recording if you have played a bad chord because it is difficult to repair it later.

Thereafter we copy the MIDI-file onto the Hard Disk of the PC.

Attention: All the following procedures on PC should be done with a copy of the original MIDI file.

3. Optimizing the song at the PC

In order to check all changes you should connect PC and keyboard because we will not get the original sound using a sound generation at a PC soundboard or soundchip. If you use a sound or audio card with a MIDI port use a MIDI cable. Today standard PCs do not have such port and we have to apply the USB MIDI connection with the YAMAHA USB MIDI driver or an external USB MIDI interface.

3.1 First steps with PSRUTI

I recommend first to look into the PSRUTI manual. Then you will unterstand the next actions. After each change play the file to check the result!

3.1.1 Optimize XG

With this step all superfluous MIDI events are removed. Do not be anxious: PSRUTI sometimes deletes more than hundred events. Optimizing sorts all other events in a perfect order. Then it is much easier to apply the sequencer later. XG Optimize does not change the sound.

3.1.2 Extras - Delete short notes

If you have recorded with style accompaniment the keyboard sometimes inserts very short notes in the style channels 11 upto 16. Delete all notes with a length less than 30.

3.1.3 Velocity Compressor: Check the Velocity

With the exception of the drum channels delete all notes with velocities beneath 20 and all values should be between 50 and 115. I recommend these changes, but I can not guarantee a good result with all songs. Check it by playing.

3.1.4 Controller/Effects - Controller - Ctrl. 7 (Main Volume): Correct the volume

Sometimes the velocity results in not optimal volumes. Check these for all channels separately and change the parameters. I recommend to use parameter values between 50 and 90.

3.1.5 Extras - Delete Keyboard Events

Recorded MIDI files often contain MIDI events that influence settings for live play, for example voice parts (Left, R1,...), style and style parts. These events should be removed.

3.1.6 Controller and XG Effects

We should inspect the sound of each channel. We can vary most effects using controller events. The most important are

  • 11 Expression
  • 64 Sustain
  • 65 Portamento
  • 71 Harmonic Content
  • 72 Release Time
  • 73 Attack Time
  • 74 Brightness
  • 84 Portamento Control
  • 91 Reverb Send Level
  • 93 Chorus Send Level
We must have great experience, if we want to edit XG effects. I recommend the freeware program SysEditor from Rainer Martin; look at Good Links - German.

3.1.7 Check the result with PSRUTI - Play

This is the last step before using the sequencer.

3.2 The next step: Applying the Sequencer

3.2.1 Deleting bad notes.

Nobody is perfect, and there is no song without some dissonances. It is a difficult procedure to delete such bugs, but you will get experience with your trials after some time. I look at the notes and shift the bad ones to a better position or delete some of these. If we have to edit the timing, often we get better results by practising the same method carefully instead of quantisation some parts. The latter procedure often changes the character of the song, because our own feeling may be lost; special with melody voices.

3.2.2 Exchange sequences of notes

If the song contains repetitions we sometimes may exchange bad sequences by better ones with the copy/delete/paste functions. Be careful: Do not cut long notes. The best way is to copy whole measures,

Editing notes is a hard job. I often need several hours to get good results.

3.3 The last step: Fine tuning with PSRUTI

After sequencer actions start with "Optimize XG" because sequencers often disturb the order of MIDI events.

PSRUTI offers a lot of functions to create a good appearance of the song file. For example you may insert songtext with so called Fill Lyrics, chords, a songname and copyright information, Look at the PSRUTI manual.

4. Improve songs that are edited by sequencer software

4.1 Entering the notes

There are some reasons to create a song by editing all notes on the PC. Mostly we have got complex note sheets and it is difficult to play and record the song on the keyboard. There is some software available to recognize the notes from a print and save these in a MIDI file. For example you can download a shareware version of "SharpEye Music Reader"with a high quality of recognition. Web site: http://www.visiv.co.uk/

If there are complex notes, you should divide some staves to different tracks. For example this is recommended with classic piano sheets, if one hand-part plays melody and other notes at the same time.

Each track should be assigned to an own channel - in keyboard-recorded songs the track and the channel have got the same number. Use channel 10 only for drums, not for melody or chords.

We have to decide, if we want a GM- or a XG-song with or without some internal voices of our keyboard.

If you want to get a XG file you should use PSRUTI to optimize the MIDI file, to define the voices with one of the revoicing functions and to edit the controller. Look at the actions of the last chapters.

GM songs are the best for playing with the synthesizers of usual PC-soundboards. GM does not need the definition of voice banks by controller 0 and 32. With GM MIDI files, we can decide for one of the formats MIDI0 or MIDI1; both formats can be played with soundboards. MIDI1 allows to assign a name (or short description of the content) to each track; this cannot be done with MIDI0.

4.2 Inserting initial events with PSRUTI

We have to skip this step if we want to have a GM MIDI-file because PSRUTI converts the song to XG.

Now you have to follow the instructions of chapter 3 above. Look and change the controllers carefully: We will get a good sound with good data values only.