Cheap And Cheerful Sample Creation On The Atari ST
Low-cost software packages like Resotek's Virtual Wave and AVR's Replay 16, combined with a synth with sample RAM, let you create and process waveforms for a source of unique sounds. Martin Russ explains.
The Atari Falcon. Direct-to-Disk Recording. Multimedia. Sample CDs. The music business rushes on, but it is often well worth remembering that there is also life behind the cutting edge of technology. Something that seems to-have been ignored recently is sample editing — the cheap, dirty, do-it-yourself kind. I have been looking at a couple of the lower cost alternatives to the expensive professional packages, and it's been quite a surprise; I also discovered some interesting and useful tricks, which may help you too.
Now I know that the Falcon has all sorts of sample support built in (like the analogue-to-digital converters, DSP chip, and the digital audio I/O sockets) but there are bound to be lots of ST users who will not have the money to upgrade. We shouldn't write the ST off quite yet...
The various versions of ST audio samplers seem to get wonderful reviews in computer magazines, but more cautious reception in music magazines. Until recently, the problem has been the compromises inherent in producing products with wide appeal — the computer amateur may think that an 8-bit sampler is superb, but your average musician can't help but compare it with a 16-bit professional sampler. Over the last few years, Audio Video Research (AVR), the brains behind the Replay series of samplers, have gradually refined their products, from the original 8-bit, via the 12-bit, and now to 16-bit versions. The combination of 16 bits and sample rates like 44.1 kHz (and more) changes things — noisy, muffled 'toys' suddenly become serious contenders!
Derek Johnson's review of Replay 16 in the June 1993 issue of Sound On Sound concentrated on using the cartridge for sampling audio into an ST, and only briefly mentioned the wider applications of features like the MIDI Sample Dump Standard compatibility (SDS). The ability to use SDS-format samples means that you can use Replay 16 to edit samples from samplers, or make your own samples, and send them back to the sampler - or sample RAM-equipped synth - for playing. This opens up all kinds of possibilities.
Resotek's Virtual Wave got rave reviews when it was launched, but I suspect that many readers will find it difficult to remember — I reviewed it in the December 1991 issue of SOS. Virtual Wave is a sound generator — but it makes samples in SDS format, not audio signals. It offers several very powerful techniques for creating anything from single cycle waveforms to complete samples. Because of the way it works, it can produce samples which are much larger than the ST's own memory, which means that if you really want a complex evolving sound with loads of chorus effect, lasting minutes, then you can have it — although you will need lost of sample memory, of course.
This raises an interesting point. By using your synth's sample RAM as your main storage device, and moving samples into the ST for editing, you maximise the sample playback times, but minimise the cost of the ST. Putting 4MB of memory in your ST may be essential for other sample editing and creation techniques, but for low-cost use, the money is much better spent on putting memory in your sampler (or sample RAM in your synth), not in the computer. The downside is that you become very familiar with the slow transfer rate of the MIDI SDS, but exchanging time for money may suit your current finances.
The equipment I used is as follows:
• Atari STFM with 1MB RAM.
• Replay 16 software & sampling/playback cartridge.
• Virtual Wave software.
• Yamaha SY99 synthesizer.
Cost-wise, the ST plus software should come to less than £450 in total at today's prices (assuming an ST at £200), whilst the SY99 is about £2000 — but you could substitute any other SDS-compatible sample playback device, so the Peavey SP might be a low-cost alternative. Some parts of the text that follows are SY99 specific, but the remainder should be applicable to almost any similar setup. The hugely successful Yamaha SY85 (around £1400) could be an alternative to the SY99, for example.
Because the Atari ST can't cope with sample playback at high sample frequencies, all the monitoring of ST samples is achieved by using the Replay 16 cartridge as the playback source. The SY99 is used for testing the completed samples once they have been transferred using MIDI SDS dumps. I connected the SY99 and ST together using a MIDI patchbay, but you could just connect them together directly, with the MIDI Out of each going to the MIDI In of the other. One of the simple LED MIDI monitor devices is quite useful for visually checking that a transfer has actually happened, although a DIY version with an LED connected across a MIDI Thru is much cheaper than buying one. The diagram shows the basic idea.
Rather than jump straight into editing of existing samples, it is probably best to start with some simple sound generation first, and then work up to editing. Most Sample & Synthesis (S&S) instruments come with a varied collection of raw samples, ready to be processed into finished sounds. Frequently, the emphasis is on long, well looped, rich, realistic sounds, and simpler waveforms seem to be added on almost as an afterthought. Some instruments ignore the 'classic' square, sawtooth and pulse waveshapes entirely! Virtual Wave offers the opportunity to try out these 'analogue' shapes, but also to produce your own shapes.
The best place to start is with single-cycle waveforms, and then move on to more complex sounds. Virtual Wave comes with some 'preset' shapes from its 'Library' dialogue box — which can be quickly called up, and can form the basis of more unusual shapes. Sawtooth, triangle, square, sine, exponential, various pulses, noise and digital silence are all available. Pulses are quite interesting because they have completely different sounds depending on the ratio between the width of the pulse and the time between pulses. A 50% pulse is actually a square wave, whilst a 1% pulse sounds very thin and bright. In between these values a selection of percentages like 5%, 10% and 20% should give some idea of the basic changes in timbre with pulse width.
Generating single cycle waveforms is very quick, and sending them to the SY99 is quick too, although you need to do some setting up first. For use with the SY99:
• Virtual Wave should be set up with Handshaking and Effects turned off
• Select the 16-bit SDS option for the sampler type.
• The sample rate is best set to 48kHz, since for single cycle waveforms there is no need to economise on memory usage! (Notice that Virtual Wave usually sets the default dialogue box setting to 'Cancel', so you can't just press the 'Return' or 'Enter' keys to OK things, as you can in many other ST programs. If you are installing Virtual Wave on a hard disk, then it is a good idea to put it at the top level (C:\) — otherwise a minor bug in the directory handling can get a bit tedious.)
• You should save any existing samples in the SY99's memory to disk, and then initialise the memory (P286). The SY99 looks at the Sample Number that is included in an SDS dump, and if it matches a sample number that is already occupied, then it allocates the incoming sample to the next empty sample location. This means that the easy way to move samples between the ST and SY99 is to ignore the sample numbers and let the SY99 increment through the empty locations.
If you do want to delete a sample so that you can re-transmit it, then you need to go to P827 and DELete it first.
• In order to hear the waveforms you send from Virtual Wave into the SY99, you will need to create a dummy sound. I just edited a single-element AWM2 sound so that there was no filtering, no effects, no pitch envelope and a sustained volume envelope. P257 takes you to the waveform setting page, and from here you can use the 'edit' button to tweak the sample settings.
• The SY99 does not expect to receive a sample dump or a dump request whilst it is in voice edit more, and so you need to make sure that you have set up P257 as a jump location, and then use something like the Sample Directory page (P827) as the page to be on when sending or requesting dumps, and as a way of monitoring if dumps have been successful.
• It's a good idea to set the Edit Confirm parameter to 'off' to save having to confirm all the jumps out of edit mode (P804).
• The Bulk Protect parameter on P804 also prevents you overwriting existing samples, so you should set it to 'off' now — you did save those samples to disk, didn't you?
• Set the Device Number to 1 on P807 to match the 0 set for the Device Channel in Virtual Wave. As a general rule, Yamaha seem to add 1 to everything. This means that sample number 0 from an SDS dump becomes sample number 1 in the SY99!
Once you are all set up, and have generated a few of the basic waveforms, you can check that sample transfer is taking place. Sending just one looped cycle is remarkably rapid — a single cycle at 48kHz takes only 183 samples, and so it takes less time to transfer via MIDI than it takes to 'OK' the Transfer dialogue box, and then 'Cancel' the Transfer OK dialogue. Don't forget to select the wave you want to send by clicking on it on the Virtual Wave screen! The bottom row of the SY99 screen should now show:
MIDI Received ! — 1 Sample No nn
where nn is the next free sample number. With a newly initialised sample memory, this will be sample number 1. If you want to, you can use Virtual Wave's Setup dialogue box to set the Sample Number, but it really is easier to just let the SY99 auto-increment.
With the sample transferred OK, jump to P257 and select the sample (Internal number 1 in this case), then listen to it. Pressing f8 until you get to the Sample Data page (no page number!), you can check that it is actually a 16-bit sample at 48kHz. Virtual Wave sets the looping to Forward, Normal, but you may like to experiment with what happens to the sound if you choose the Alternate playback mode. For most samples that you transfer, you can use the Normal and Alternate modes to provide two samples for the price of one! Alternate mode merely plays the sample forwards and then backwards, instead of just forwards — this means that the two ends of the samples are perfectly joined, but it also changes the timbre of the sound that is produced.
With the sample transferred, you should now name it. Once you have a few samples dumped into the synth sample RAM, try them out. You may notice that they sound strange at the top end of the keyboard range, with extra frequencies appearing. This is called 'aliasing', and is caused by the samples being too mathematically perfect!
Virtual Wave produces samples with high-frequency content which is beyond the SY99's replay capabilities, and the result is that the frequencies are 'folded over' and re-appear as lower frequencies. The overall effect is none too wonderful — although you can use it occasionally as a special effect. The way to prevent it from happening is quite simple: filter the samples before you send them from Virtual Wave. The 'Smooth' option in the 'Special' dialogue box (anything from 5% to 10% smoothing) does the trick. Most S&S synthesizers have filtering, but you can't use this to remove the aliasing, since it is produced by the synth. It is much easier (if a little slower) to remove it at source, in Virtual Wave.
Once you have done some smoothing on the basic 'library' shapes, save the waves to disk on the ST. This makes recalling them much faster later on, since Virtual Wave does not need to redo the calculations — it just reloads the wave data. You can now try adding and subtracting waves and' listening to the results.
Now try some of the more unusual wave modifying options offered by Virtual Wave — the manual gives you a few ideas for things to try. After a while you should have a disk with quite a few interesting waveforms on it, and you will be ready for the next stage: Multi Cycle loops. The basic idea is simple: you define anywhere between two and seven waves and arrange them in order, and then you take the first wave and add it to the end, making either three or eight waves in total.
You now set the Patch (F2) so that the levels are all 100% (maximum volume) and set the times for each segment/wave to something like a quarter or half a second. Any segments/waves that you aren't using should be set to the minimum time (0.001 seconds). You then use the Preview screen (F3) to see what the sample will look like as it changes from one wave to the next. The final wave is the same as the first, so when we loop the result we should be able to get a perfect loop.
When you dump this sort of wave to the SY99 it is going to be lots longer — up to two seconds. This means that it is going to take a minute or two to transfer across — so be patient. To get some idea of how the final thing is going to sound, you should transfer and listen to each of the waves you're using before you send the whole thing.
When you send the final sample and listen to it, you should find that it smoothly changes from each wave to the next, then there will be a slight glitch, and it will stop. The glitch is caused by the final segment of the sample (Virtual Wave is not really designed to do this sort of thing!), and needs to be removed using Replay 16. Loops also begin to use up serious amounts of memory, so keep looking at P820 to see how much room is left.
OK, you now have a library of basic waves on disk and in the memory of the SY99, and there's a few complicated multi-cycle samples waiting to be edited. This is where Replay comes in. You need to set the MIDI Configuration up first. You should choose MIDI Channel 1, MIDI Standard dump and 16 bits. You need to set the Left/Mono Sample Number to the number of the SY99 sample location you want minus 1 (remember!). Create a new sample, and drag the MIDI icon on top of the new sample icon. If you are in sample edit mode, then the 'Loading' bar will get about three-quarters of the way across and stop, and then a dialogue box will complain about the sample header. If this happens, just return to the top of the sample editing pages (P257 will do) and try again. You should see the loop displayed in the Replay Edit window.
Save this sample now! Loading from disk is much faster than MIDI SDS dumps. We now need to loop this sample. Click on the 'Join' icon and you should see the start of the sample on the right-hand side, and the end of the sample on the left-hand side. The last segment generated by Virtual Wave will be at the end of the sample — and all you have to do is nudge the waveform on the left until it has joined the one on the right smoothly, with the same shape. Set Replay 16 so that looping is on, and cut the end of the sample (after the loop marks) off. The SY99 interprets the first two loop points as the ones that it will use, so make sure that you don't have any extra loop markers hanging around. When all is well, save this looped sample to disk, replacing the one you just transferred from the SY99, and then send it back to the SY99 with a MIDI SDS dump (Drag the sample icon to the MIDI icon.).
After the editing, you might expect that all would be well, but Virtual Wave does not put loop points into the sample, and Replay 16 does not turn looping on in the sample header, and so you need to set Forward Looping on the Sample Data page (P257, then Edit/f8...). Your multi-cycle loop is now ready! The first few you make will probably have too much change between waves, which gives a strong sense of a cyclic repeat ('machine-gunning'), and you may also upset the pitch if you get the looping point wrong. After a while you should have acquired the necessary skill and can begin crafting loops which sound really professional.
Complex evolving loops such as these are unusual in most S&S instruments because of the large amounts of memory they use — so you really are getting something that other S&S/sampler users probably don't have! Try them with lots of slow chorus and panning for a big and very expensive sound...
The world is now your oyster! You can try using Virtual Wave to produce complete samples with chorus built in, and then loop them in Replay 16. Or how about pasting together several single-cycle waveforms into one composite wave? Don't forget the Alternate mode for sample playback — it can sometimes rescue a glitchy sound and turn it into something useable. Once you have a disk library on the ST of loops, single cycles and composites, you can begin to paste these together into larger and more interesting samples. One thing to try is putting a composite for the start, then a looped section — this gives the classic 'attack and loop' style sound as used in many S&S instruments from the Roland D50 onwards, but here it is entirely synthetic, and created by you! Not only that, but since both Virtual Wave and Replay 16 are working with the full 16 bits at 48kHz, the technical quality of the samples you are producing should rival the best anywhere.
How you use these computer generated samples is really up to you. With care and time, you should be able to make some high quality and very useful single cycle and looped samples which will extend the range of sounds you can program. Mixing these samples with real samples can also be interesting, because then you get a mix of realism and synthetic textures. The possibilities are almost endless!
Let me know how you get on; I would be especially interested in your favourite creations using Virtual Wave and Replay 16 (or a similar combination of programs).
Feature by Martin Russ
Previous article in this issue:
Next article in this issue:
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!