GENERAL MIDI EXPORTING

Audio Plugin Hosts and other audio software applications discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

Hi, I'm a Reaper user, and when I create a midi file, it appears with no sound (obviously) and I have to insert it with VSTs as FX. But, when I export it to a midi file it just renders as a piano file, wich I can understand because I didn't configure it as any GM instrument.

But, that is the question. How can I export it as a general midi file with general midi instruments?

I mean, custom GM instruments, not only the piano. The furthest I know about this is that in FL studio, whenever I imported a midi file, it automatically adds some VSTs, Fruiti LSD and Midi Out, but I don't know how do they work and what (preferably free) alternatives to this plugins are.

Excuse my english and thanks in advance.

Post

You need to insert program change events. (edit: If I understood correctly what you want to do. Play the exported MIDI on a GM compatible synth with other sounds than piano ?)

https://en.wikipedia.org/wiki/General_MIDI

Oh and welcome to KVR. :)

Post

AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
No_Use wrote:You need to insert program change events. (edit: If I understood correctly what you want to do. Play the exported MIDI on a GM compatible synth with other sounds than piano ?)

https://en.wikipedia.org/wiki/General_MIDI (https://en.wikipedia.org/wiki/General_MIDI)

Oh and welcome to KVR. :)

Yeah, my default midi player is microsoft gs wavetable synth (integrated with windows) and it can play midi files. The problem is in the rendering, because the only thing I do is write midi notes and export as midi. I know i must do something more to select an instrument, it won' t do it alone. But could you give me a more detailed explanation of what "program change events" are and what is their use? I' ve been looking up some things about that on the internet and I still confused... :shrug:

Also thanks for answering!

Post

You might need some background info...

Midi files contain midi notes. Each note is sent to a specific channel of which there are 16. Apart from the note events the midi stream can also contain other control messages such as the pitch and modulation wheel movements. So these notes and other control info is meant to be sent to a synth that plays the notes.

Through midi you also need to be able to specify what patch the synth needs to be switched to. Midi can handle 128 patches. Since that's not enough you can also select a bank of patches. So through midi the synth can switch to a patch number with a midi command called Program Change. In the first midi specs that was it. There was no way of telling what patch 1 or patch 68 would sound like. Each synth had its own patch memory and each user could rearrange the sounds at will. So midi files could not be played on any random synth and still sound roughly the same.

General midi solves this problem. For instance it dictates that the drum track uses channel 10, and patch #1 is "acoustic grand piano". That is what you hear: no program changes has been sent, so your MS Wavetable Synth is still set default.

How to insert program changes on your tracks in Reaper? I googled that for you:
http://forum.cockos.com/archive/index.php/t-135327.html

How do you know what patch sounds like what in General Midi? Here's a list:
https://www.midi.org/specifications/ite ... -sound-set
We are the KVR collective. Resistance is futile. You will be assimilated. Image
My MusicCalc is served over https!!

Post

AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
BertKoor wrote:You might need some background info...

Midi files contain midi notes. Each note is sent to a specific channel of which there are 16. Apart from the note events the midi stream can also contain other control messages such as the pitch and modulation wheel movements. So these notes and other control info is meant to be sent to a synth that plays the notes.

Through midi you also need to be able to specify what patch the synth needs to be switched to. Midi can handle 128 patches. Since that's not enough you can also select a bank of patches. So through midi the synth can switch to a patch number with a midi command called Program Change. In the first midi specs that was it. There was no way of telling what patch 1 or patch 68 would sound like. Each synth had its own patch memory and each user could rearrange the sounds at will. So midi files could not be played on any random synth and still sound roughly the same.

General midi solves this problem. For instance it dictates that the drum track uses channel 10, and patch #1 is "acoustic grand piano". That is what you hear: no program changes has been sent, so your MS Wavetable Synth is still set default.

How to insert program changes on your tracks in Reaper? I googled that for you:
http://forum.cockos.com/archive/index.php/t-135327.html (http://forum.cockos.com/archive/index.php/t-135327.html)

How do you know what patch sounds like what in General Midi? Here's a list:
https://www.midi.org/specifications/ite ... -sound-set (https://www.midi.org/specifications/item/gm-level-1-sound-set)

I love you, thanks a lot, you saved my life!

Post Reply

Return to “Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)”