| View previous topic :: View next topic |
| Author |
Message |
quicklyman
Joined: 15 Feb 2010 Posts: 1
|
Posted: Mon Feb 15, 2010 11:58 am Post subject: MIDI Controller codes |
|
|
I am very new to creating MIDI files but have managed to blag my way through CakeWalk.
I believe I should be entering controller codes at the beginning of each track/channel to "reset" my instruments and also to introduce some other info (volume, effects etc...)
Does anyone have a software utility that automatically enters a "standard" set of controllers that usually sounds good?
Alternatively, does anyone have any experience of what combination of controllers works best for different instruments?
Any advice appreciated |
|
| Back to top |
|
 |
SysExJohn Moderator

Joined: 03 Nov 2007 Posts: 146 Location: Betelgeuse
|
Posted: Tue Feb 16, 2010 4:36 am Post subject: |
|
|
A reasonable question!
And a quick answer is that the first MIDI command that should be (IMHO) at the start of every MIDI file is the System Exclusive message GM reset (also called GM System On). It takes the hexadecimal form F0 7E 7F 09 01 F7 but if you're using Cakewalk, you don't say what version, then it is usually available in the main Cakewalk program directory and called "gmsystem.syx". It needs to be inserted at the very start of the file (01:01:000) before any other MIDI messages, then a small timing gap left before bank select and program change messages are inserted. Yamaha recommends a timing gap of 200 milliseconds.
GM system on is the only command that resets all the controllers set up by a previously played MIDI file. You may have come across another called "Reset All Controllers", one of which would need to be inserted for each MIDI channel, but please note that whilst this command does reset some, there are many controllers that it doesn't reset. I can give you a list if you require it, taken from the complete MIDI specification.
Depending what your MIDI file is going to be played with, you may then need to insert one or two "Bank Select" messages. Theyare controllers number 0 and 32 and are known respectively as Bank Select MSB and LSB. They are then followed by the "Program Change" message.
The GM reset sets the channel volume (cc#7) to 100 and the expression controller (cc#11) to 127. You may want to balance the sounds of the different instruments you are using by changing the value of cc#7. The recommendation is that cc#11 is used to change the volume dynamically during the song / tune just as a wind instrument player could vary a note by blowing harder or softer.
The next controller is "Pan" (cc#10) which will be set by default to 64, i.e. in the middle of the stereo sound field. You can vary this from 0 (hard left) to 127 (hard right) and only experimentation will tell you what sounds best for you and the song you're creating.
The next would be "reverb Send" cc#91 to set up the room reverb and, possibly, "Chorus Send" cc#93 if it's needed.
That's just a starter.
Don't forget to space each command a tick or two apart and all the channel setups a reasonable distance from the GM reset.
If this doesn't make sense, and that may be the case if you're just starting with MIDI, then please ask and I'll try to explain more clearly.
HTH?
SysExJohn. |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|