Practically MIDI (Part 4)
What is a MIDI Merger and why do you need one if you use a computer-based MIDI sequencer? Martin Russ helps BT's funding by receiving long telephone calls from frantic MIDIphiles.
Merging: Problems and Solutions. Martin Russ helps BT's funding by receiving long telephone calls from frantic MIDIphiles.
Apart from the Stock Exchange, merging is an unusual activity in real life. In the initial rush of enthusiasm over MIDI many people said that it would be the death-knell for interfacing problems. Luckily for the equipment manufacturers, rather than remove the problems, MIDI has instead altered them and introduced some fiendishly awkward new ones. Most people have probably had some experience of the problems with MIDI clocks, drum machines, and trying to drive the drum machine from an external MIDI keyboard, but the need for merging only seems to become important when you try and do clever things with computers, as I mentioned above. So let's cover the drum machine problem first and then return to merging with a solution tucked under our belts.
Figure 1 shows the typical scene at a MIDI drum machine disaster. A drum machine is being driven from an external clock so that it is in sync with a sequencer (or recorded click-track, etc) and the user wants to add in a few extra drums played from a velocity sensitive keyboard to 'humanise' the drumming. The trouble is, how do you derive a clock from one MIDI source, while obtaining the note information from another?
The obvious and simple solution is to use a MIDI switch to choose the MIDI source (clock or note information) but there is a problem: as soon as you switch from the clock source to the MIDI note information source, you lose your clock and the drum machine stops! At this point most people think for a couple of minutes, and then connect it as shown in Figure 2.
Now the MIDI note source is connected to the drum machine directly, and the clock source is connected via the MIDI note source's MIDI In. Unfortunately, the drum machine still doesn't go but the notes do play the drums. With a flash of inspiration the MIDI lead is moved from the note source's Out to the Thru. Now the drum machine bursts into life, but the notes played on the source refuse to drive the drum machine's drum sounds. No matter which way you connect the Ins, Outs and Thrus, you can't get it to work. Unless you use a MIDI Merge Box.
The reason why feeding the MIDI information through (Thru) the note source does not work is connected with the difference between the MIDI Out and Thru sockets. A synthesizer's Out socket only produces MIDI codes for any notes played on the keyboard, and a drum machine's Out socket produces just the MIDI codes representing the drums in its pattern, whereas the Thru socket always reproduces the information at the In socket, and nothing else. This is shown in Figure 3.
It really is an either/or situation, for you can have only one supplier of MIDI information into a MIDI In socket. What a Merge Box does is add together two sets of MIDI information into one, so that you can drive a MIDI In from two different sources. Figure 4 shows the idea in practice. The drum machine is now receiving its MIDI clock from the sync source, and can be driven at the same time from the MIDI keyboard. The Merge Box is doing all the hard work of squeezing two MIDI Ins into a single Out.
Notice the use of the words 'add together' and 'squeeze together' above - they give a hint to a possible problem.
Suppose you have a really busy sequencer track and you try and merge it with some notes played with lots of artistic pitch bend - what happens is that the amount of information the Merge Box is trying to fit into a single MIDI connection is too much for it to handle. Merging has been compared to joining a motorway via a slip road: everything is OK while the traffic on the motorway has gaps in it, but when you have an M25 type nose-to-tail situation on the motorway, you can't get any cars in from the slip road easily and so you get congestion and accidents. If we apply this to the case of a MIDI Merge Box, then you get an overflow error, which results in notes which won't go off and drum machines which miss beats, etc.
Having said that, you will find that in the real world you need a lot of notes happening very fast to upset Merge Boxes, and in most cases you will not have any problems. The case of the non-syncing drum machine is usually OK since the MIDI In supplying the clock is not very busy, and adding a few paradiddles here and there won't overtax the other MIDI In. But beware of over-excited pitch bending when playing keyboards into mergers - they use data like it was going out of fashion!
OK, fresh from our success with drum machines, let's return to the computer problem mentioned earlier. In this case, we need to send editing information to the FM expander, and then send note pitch on and offs to try out the edited sound. As Figure 5 shows, you could use a MIDI switch here, but it is not only tedious, it is also very easy to forget to switch over each time you want to send an edit and thereby miss out on a change. The end result of this can be a computer which thinks it has edited a voice when, in fact, the data has only been sent to the end of an unconnected MIDI cable.
The clever computer programmer steps in at this point and writes a simple program which takes the information at the MIDI In and loops it to the Out, unless it is sending any editing information, thereby replacing the switch with some software to give Figure 6. Problem solved? No - there is now a new problem.
Look again at Figure 6 and compare it with Figure 5. How are you going to connect the expander output to the computer so that we can transfer voice data to the computer, for example? The input to the computer is now used for inputting note information, so we can't connect the expander Out to it. What we need here is a Merge Box, despite the fact that we have already implemented a merge inside the computer's MIDI interface! We seem to have come up against a problem; unless your computer's MIDI interface has two MIDI In sockets, then you are going to need a Merge Box when editing expander voices, and no amount of machine code, Ultra Fast Basic or Amiga type 32-bit programming power is going to help.
The above problem is well known amongst MIDI software programmers, and some have implemented a very simple way around the need for a Merge Box - you are restricted from playing any notes on an external keyboard! This is OK when editing a DX7, say, because it has an integral keyboard anyway and you can play the edited sounds and hear them, but for a TX7, FB01 or other expander, then all you're given is the option of hearing something like Middle C when you press the spacebar on the computer's keyboard.
I am a great believer in user feedback, and so not being able to hear the effect of velocity, or not being able to interact with the sound by playing it, seems a very poor solution. Some more upmarket programs let you record a sequence of your own which is output when you press the spacebar on the computer, this is a better idea but still not as good as a real merge.
I really would recommend that if you want to use a computer for editing the sounds in an expander, then you should look for a computer MIDI interface which has two MIDI In sockets, as well as a couple of Thrus and Outs. You can find them - most MIDI interfaces for the Macintosh, for example, have two inputs. Perhaps you now know why!
Well, that about wraps it up from the MIDI Doctor this month. MIDI Merge Boxes vary in price from about £100 for the basic but very usable Yamaha YMM2, up to £500 and more for sophisticated devices like the J L Cooper MSB-P, which is a merger and patcher spliced together into a rackmounting 1U box. Shop around, once you have a Merge Box you will keep finding uses for it. (Have you heard the one about the muso who put the Merge Box at the bottom of a bucket so that when it overflowed it wouldn't go all over the polished wood studio floor?)
Feature by Martin Russ
mu:zines is the result of thousands of hours of effort, and will require many thousands more going forward to reach our goals of getting all this content online.
If you value this resource, you can support this project - it really helps!