Home -> Magazines -> Issues -> Articles in this issue -> View
Dumping Grounds (Part 2) | |
Article from Music Technology, June 1987 |
The industrious Chris Meyer again, with the latest news on MIDI Sample Dump Standard. What exactly is the value of transferring a sample from one machine to another?
In a change to the scheduled programme, we look at how MIDI's Sample Dump Standard can give wavetable synthesisers new sound sources - from samplers. Is it worth the hassle?
THE THING THAT makes "wavetable" synthesisers tend to sound more interesting than older analogue synths is that they have a wider variety of waveforms with more harmonic complexity than the traditional sawtooth/triangle/square assortment. True, older synths tended to have more complex ways of manipulating these waves - pulse-width modulation and FM are unseen on this new breed of synth, and not all have oscillator sync - but I'll stick to my first statement.
It is a very short jump of logic to look to waveforms that are similar or identical to those of existing instruments, both as a way of imitating those instruments and as a starting-off point for new sounds.
There are some problems, though. At the very least, an amplitude envelope must be re-imposed upon the sound - done easily enough with the synth's VCA or DCA. More difficult to produce are the timbral changes which occur over the length of the sound, and which vary depending on how vigorously notes are played. Enveloped filters help cover the simpler cases, such as sounds which get duller as they sustain, or brighter if they are played harder.
Many natural instruments have more than one "oscillator" - the multiple strings on a piano or harpsichord - that tend to be detuned from each other, but this too can be synthesised by dedicating more oscillators to each voice, and detuning them slightly. But virtually impossible to emulate is the occasional devilish reality of the harmonics of a single sustained sound being detuned against themselves, creating ongoing amplitude shifts and phase cancellations - just listen to a bass or fuzz guitar note sustained for any length of time. Now we're talking about one oscillator per harmonic, or group of harmonics, subtly detuned against other oscillators to recreate the effect.
Anyone who has spent time making their own samples can quickly attest to the fact that one cycle does not faithfully represent a whole sound. This most quickly comes up when trying to loop a sample - one of the first types of loops most novices go for is the one-cycle loop, because it doesn't click or wah like a longer loop. And indeed, it doesn't click - but it buzzes, it howls, it doesn't tune properly, it makes the sound appear to "freeze", and all sorts of little gremlins, and sidebands in general, occur... and all because of the problems mentioned above.
Anyone who has done some programming on a wavetable synth has probably opened up one oscillator all the way with no filtering or envelope - and will agree that, just as novice loopers find in their initial efforts, all the waves seem to be just metallic buzzes of slightly different colours. Yet against all odds, many wavetable programs sound quite good. Even if they don't sound like a sample of the "real thing" themselves, they come damn close, or present other possibilities.
With many musicians already owning both a sampler and a wavetable synth (and even more in the future, due to the inevitable competition and price drops), users are starting to look into creating their own waves. The PPG Wave, Kawai K3, and Sequential Prophet VS already store at least one of their waves in modifiable RAM; and it is only a matter of time before most wave-based synths do the same - Kawai's K5 and Keytek's CTS2000 are pointers to what lies ahead in this area. The Prophet VS is the first (but no doubt, not the last) to use our friend the Sample Dump Standard (SDS) as a way of moving these waves around. In this article, we'll try our hand at creating our own waves for the VS (or future machines like it), complete with pointing out the sort of pitfalls we may encounter along the way.
THEORETICALLY, ANY SAMPLE in our library would be fair game to become a "wave" for a synthesiser. In reality, we have to take the aforementioned limitations into account if we are to select candidates that are going to end up sounding anything like the originals once they have been through the SDS transfer.
Drums are immediately out. Try looping a snare drum or a cymbal sample - there is no steady harmonic state to hang on to, so there is no wave to get out of it that will resemble the original. As a matter of fact, the harmonic series of a vibrating membrane (such as a drum head) is so heavily "out of tune" that you wouldn't see two identical waves for thousands of cycles. The only drum that comes close is a tom, since the shell quickly overcomes the rest of the harmonics - though this tone closely resembles a sine wave, which isn't very interesting.
Tuned percussion fares much better - gamelans and xylophones in particular, since they tend to develop quickly into a pure, sustained tone. The "tynes" of electric pianos also fall into this category.
The easiest instruments to loop are brass and woodwinds. They have only one "oscillator" - their body. Their harmonics tend not to beat. After their initial "blip" or attack (which isn't too hard to fake, particularly with the more complex envelopes now commonly available), they put out a very steady tone. And since the factory patches on many wavetable synths lean towards the tuned-percussion variety (particularly electric pianos and tubular bells), they are a good target for waves to add to our arsenal.
Some sounds are deceptive. In early How To Synthesise-style texts, the flute was always given as an example as one of the easiest natural instruments to mimic - just use a single sine wave or filtered triangle-wave oscillator. However, flute samples tend to have a lot of breath noise - something that doesn't loop so well.
Violins have a lot of "hidden" vibrato in the string catching and releasing very quickly on the horsehair bow - something not terribly obvious until you try to loop just one cycle of it.
Sneakiest of all of the apparently "steady" sounds are vocals - the different vocal cords vibrating against each other, the wind noise of the breath rushing up the throat and out of the mouth, and the filter formants of the mouth and head cavity all make a sound that cannot be represented in one wave. All in all, it's amazing that wavetable synths replicate vocal sounds so well, particularly when you realise that if you listen to a vocal program in detail, the waves sound quite metallic when heard on their own. It is the vibrato and beating induced by multiple oscillators, and some good LFO work on the pitch, filtering, and amplitude that pulls it off - which just goes to show that, with wavetable synthesisers (and, as some would have you believe, with sex), it's the motion that really counts.
Ahem. Back to more serious matters - like sounds that take more than one wave to represent. Pianos and plucked string instruments in general have a large harmonic change from the initial attack to the sustain portion. Therefore, it would seem advantageous to take a few waves ("snapshots" of the sample) to chart its progression and fade between these (a simplified form of Roland's SAS, or Structured Adaptive Synthesis). This is something that some wavetable synths such as the Prophet VS, the new Keytek, and to some degree the Ensoniq ESQ1 let you do.
After selecting a few disks from our library, the next step is acquiring some single-cycle versions of these waves. This means getting those dreaded one-cycle loops mentioned earlier. To get an idea of how our wave is actually going to sound in our synth, we need to isolate that wave on our sampler.
It's here that you can first become discouraged - all of the buzzing, honking, and screaming sidebands make their presence known. Most discouraging for me was taking my prize Fairlight vocal disk (one that sounds like a cross between a male "ooooh" and a bottle being blown), and getting a single cycle out of that - it didn't sound anything like the original.
Regardless, this is typical of what you'll get. Keep playing with the loop points until you find something with as few sidebands (harmonics that don't seem to appear in the original sample, or are out of tune with the loop) and nasties in general as possible.
For my experiments, I decided to try two different trumpets, an oboe, a French horn, a sax, a violin, the aforementioned Fairlight vocals, "attack" and "sustain" samples of a harpsichord, muted electric piano, fretless bass, and three samples of a Bosendorfer grand piano.
THE NEXT TRICK is getting copies of our waves that are the exact length that our wavetable synth is expecting. Factory-supplied samples are usually taken at any of a number of sample rates and original pitches, and have been transposed to be in tune with the rest of the world. You don't have to have this luxury with wavetable synths - they make very specific assumptions about the length of the wave. The Prophet VS, for example, expects each wave to be 128 samples long.
We need to translate the length of the wave back into a sample rate and pitch, so that we can see what we're aiming for. Assuming you know which sample rate you'll be using, the equation looks like this: Sampling rate = original pitch X samples per wave. I own a Prophet 2002, with a main sampling rate of 31.25kHz. This works out to: 31,250 samples/sec = 244.1406Hz (cycles/second) X 128 samples/cycle. To find out which pitch this means, use the table below:
C2 | = 130.8128Hz |
F#2 | = 184.9972Hz |
C#2 | = 138.5913Hz |
G2 | = 195.9971Hz |
D2 | = 146.8324Hz |
G#2 | = 207.6523Hz |
D#2 | = 155.5635Hz |
A2 | = 220.0000Hz |
E2 | = 164.8138Hz |
A#2 | = 233.0819Hz |
F2 | = 174.6141Hz |
B2 | = 246.9417Hz |
To find the other octaves, multiply by two for each octave higher; divide by two for each octave lower.
In our case, we want the original pitch of the sample to be a B2, perhaps a little flat to be a better match. Any other pitch (other than octaves) will give a cycle not consisting of exactly 128 samples in length, which will lead to serious distortions in that sound.
How many samples in your library were sampled at exactly the correct pitch? Well, none of the samples in mine were taken at B2. How many samplers can change the pitch (and therefore, the actual length) of the sample by some arbitrary amount, such as, say, minus four semitones? None that have been through my hands lately. Are we stumped? No way.
What we need is a copy of that sample taken at the correct pitch with our chosen sample rate. How? Very simple - record the sample transposed to desired pitch on tape, and resample it back off tape. We do not have our normal worry of losing a generation of sound quality by going into analogue and back again - the degradation of a steady signal will be unnoticeable by the time it ends up in a program on our wavetable synth (it's the attack transients that lose the most by going to tape, and they're not a problem at this stage). Remember that it's fair game to process the sample on its way to tape - such as closing down the filter a bit to get rid of some of the high-frequency buzzing. What I did was create a tape as I went along with a few seconds of each of my looped waves, hoping one of these would be transposed just flat enough of B2 to do the job.
Important question - is the wave cycle you obtained this way the correct length? If you were very, very careful, yes. I was not very careful at first, and got all sorts of crap when I transferred my waves over to the VS. Since the primitive 2½-digit LED display of the Prophet 2002 does not show precisely which sample the loop points are on (unlike the Emax, Studio 440, and so forth), I had no way of knowing if I was really on the mark or not. As it turns out, I was out by several samples in almost every case. One sample was a whole semitone off. My biggest mistakes came with electric piano and fretless bass - I had sampled a note an octave too low, giving me a wave roughly 256 samples long, so when cut in half, they sounded nothing like the original.
It was time for corrective action. Now, I have the unusual luxury of owning two samplers. So rather than take the time to reload the original disks and re-record to tape, I retuned the samples the best I could by ear to be just flat on an A440 tone on one sampler, transposed them down 10 semitones to B2, played them into another sampler, and then transferred the samples over to the VS (that is precisely why I like having two samplers around - so that I can play back one sample, treated or transposed, directly into another). Without this foolish luxury, you could simply be more careful than me, and tune the samples before recording to tape - or use a varispeed tape deck to do exactly what I was doing with two samplers.
The results were much better this time (the trumpets in particular sounding like the original waves, if not like the original trumpet itself), but many still sounded slightly brighter or buzzier once in the VS, indicating that I was still out by one or two samples.
The significance of having waves of precisely the correct length was finally being fully impressed upon me (and, I hope, upon you). There are two ways of assuring this. One is to use an oscilloscope to check precisely how long the wave being recorded to tape or transferred from sampler to sampler is (take the desired pitch in cycles per second, and invert it to see how much time one cycle should take on the scope). I didn't have a 'scope around, but I did have a visual wave-editing package (Sound Designer). I transferred the waves to the package to make sure they were precisely 128 samples in length, and that their beginnings and ends joined properly at that boundary. The ones that were far off, I resampled; the ones that were close, I crossfade-looped to make their transitions smooth. True, this modifies their harmonic content slightly (usually in the form of undertones, as opposed to buzzes), since we are adding or taking away samples by smoothing them out - but I was angry and frustrated enough with myself to give it a try, and they ended up close enough. The 'scope is cheaper, but they were the tools I had around, and it left no doubt...
THERE ARE A couple of other notes to make about actually transferring waves over into a wavetable synth. First, the synth will take the first 128 (or whatever) samples of the wave you send across. So, be careful to remove everything from the front of the sample before the looped wave to make sure the synth is receiving what you think you're sending. Since your sample at this point probably consists of just this wave sustained (repeated many times), you can get by without looping the sound again. As always, though, it remains good practice to make the start of the sample a zero crossing.
Second, make sure the type of loop you used (forwards only or forward-backward) to get the wave is the same as the type the synth uses for playback. Most wavetable synths play the wave unidirectionally - so use a unidirectional (forwards only) loop. However, I would not be surprised if some synths in the future use bi-directional loops (forward-backward loops on half-cycles of a wave to save on memory - read your manual to make sure).
Third is a problem specific to the Prophet VS. For some reason, my 2002 was aborting the transmission before the VS had received the whole wave - this left the 2002 thinking it was done, and the VS waiting for more data. I finally traced it down to the VS telling the 2002 something or other it didn't want to hear right at the start of the dump - perhaps the modulation or pitch wheel was jittering and sending out data over MIDI. Anyway, I disconnected the MIDI cable leading from the VS back to the 2002, thus making it an open-loop system (of which the Sample Dump Standard is designed to be tolerant). It added just a couple of seconds to the transfer time per wave, and I had no more errors.
Well - how did it sound? To be honest, I wasn't too optimistic. The loops I derived from the samples didn't sound too much like the orignal sounds themselves, and they incurred some distortion on the way over to the synth (through carelessness of mine, true). But I started programming anyway, just to see what would come out.
I started with the trumpets. First, I started adjusting the filter cutoff manually to remove some of the buzziness, and was surprised to get a classic "wah" effect immediately. Thus encouraged, I tried a wah-type envelope on a muted trumpet. The effect did not sound like a trumpet, but more like a cross between a synth and a member of the horn family. Not fully happy, I then tried a classic "horn blip" envelope (start at zero, quickly go to full-scale, almost as quickly go down to about 1/3- to 1/2-scale, and then rise back up to 1/2- to 2/3-scale moderately quickly and sustain there) on a harmonic mute trumpet. Once I'd also added this envelope to pitch, I got a good horn-like sound - not like the original and not like a realistic trumpet, but some cross between a synth sound and the real thing.
Much to my surprise, this is how it went for all of the samples. I was expecting to have to give a blow-by-blow account of how each case turned out, but they all ended up suggesting a strange hybrid between the parent sample and some other new sound. Crossfading between the Bosendorfer waves ended up nothing like a grand piano, but gave a wonderful mix between a steel drum, a Clavinet, and... something else. Particularly when I started applying synth programming techniques, like raising the "strike" oscillator to some octave plus an interval above the fundamental.
No bragging intended, but with my new waves I was getting sounds I had not got out of the machine before - and I speak as somebody who had a hand in programming the factory patches.
Then I started cheating. I began inserting my own waves in place of ones used in similarly-named factory programs. I was shocked with how well it worked out. My prized Fairlight vocal fitted right into the factory 'Choir 1' and 'Vocal 1', and sounded much more "churchy". The oboe, sax, and especially the French horn went very well into the factory Woodwind program (odd for the French horn, since it's really a brass instrument).
Placing new waves in existing programs to give them a new or different flavour ended up being an equally valid application as using the waves to create new programs from scratch (and I hear murder weapons being sharpened by the diehard programmers out there, as the easy-way-outers and the don't-have-the-timers throw up a cheer mingled with a sigh of relief).
AS I SAT battling howling loops that sounded nothing like their original samples, waves buzzing because they weren't 128 samples long, and the VS being silly and aborting dumps from the 2002 late into the Sunday night, I was getting quite depressed about the whole endeavour.
But when I actually started making patches on Monday morning, I made a complete turnaround - using samples as waves for synths via the Sample Dump Standard doesn't give you copies of the samples in return, but it does give a colourful, valid set of new possibilities.
Worth the sweat.
This is the last part in this series. The first article in this series is:
Dumping Grounds
(MT Apr 87)
All parts in this series:
Part 1 | Part 2 (Viewing)
BeeBMIDI Monitor (Part 1) |
Talking MIDI (Part 1) |
MIDI By Example - Cabling a MIDI system (Part 1) |
MIDI and the Micro |
Sample Shop |
Signal Processors... Meet MIDI |
Technically Speaking |
MIDI 2.0 Is Here! |
Retro-Sampling - Sampling Classic Electro Sounds |
Hands On - Emu Emax II |
Hands On: Roland S750 |
MIDI Product Guide |
Browse by Topic:
Feature by Chris Meyer
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!
New issues that have been donated or scanned for us this month.
All donations and support are gratefully appreciated - thank you.
Do you have any of these magazine issues?
If so, and you can donate, lend or scan them to help complete our archive, please get in touch via the Contribute page - thanks!