Resotek Virtual Wave
Atari ST Software
Using your sampler as a synthesiser is wonderful in theory but frustrating in practice - until Virtual Wave, that is. Vic Lennard waves hello to Resotek's ST software.
As more musicians choose a computer and sampler as the basis of their music system, the need for a computer program capable of synthesising sounds grows. Enter Virtual Wave.
LUSH SYNTH BRASS, warm string pad, percussive bell tine; what do they all have in common? Well, they're all created from a mixture of waveforms. If you've worked with, or even just listened to, an analogue synth, you'll be aware of the various waveforms and their uses.
On its own, a sine wave has a rather pure, characterless timbre. However, by combining waveforms, complex sounds can be created from simple waves. Usually, this is carried out on a synth which has wave generators built in. The resulting sounds are manipulated by envelopes, which alter levels according to time (commonly, the Attack time, Decay level, Sustain level and Release time) and filters, which change the tone of the sound over a period of time. Digitally-created sounds employ a variety of systems including FM (Yamaha) and LA (Roland) synthesis.
One neglected area of synthesis is that of waveform manipulation on samplers. While most samplers offer basic envelope and filter options, it's difficult to create complex waves. Various pieces of computer software have appeared - Samplemaker, to name one - which let you construct a waveform and download it to a sampler, but these tend to be very difficult to use unless you have a good working knowledge of synthesis.
Virtual Wave (VW) is a sample creation and synthesis program for the Atari ST; you create a sample by defining up to eight waveforms which occur at a moment in time, and the time taken to smoothly move between these waves. The sample is then synthesised from these and transmitted to a sampler for playback and further manipulation. Because the final waveform of the sample is not the synthesised sound, the ST disk space taken up by the waveform data is small; consequently, even though the actual sample is, perhaps, three seconds long, you will still be able to fit 15 or 20 waveforms on a single ST disk.
As up to eight different waveforms can be used, there may be up to seven smooth transitions from one waveform to the next. You can control the level and pitch changes that occur in these transition periods and control the editing of the basic waveforms used.
Virtual wave is not copy-protected. Instead, the serial number of the disk is indelibly printed within the program, which means that pirate copies can be easily traced back to the purchaser.
Practically all menu options have keyboard equivalents and comments appear in the top right-hand corner of the screen to tell you what page you're on or what procedure is currently being carried out.
On booting up, you meet the Wave Page. This has eight windows (each of a basic 3.82ms duration) for the eight different waveforms; the overall sound is referred to as a Patch. Beneath the waveform windows are eight numbered boxes which are used for selecting a particular window but as you can select a window by simply clicking on it, the necessity of this pad is dubious. At the bottom of the screen are six menu buttons which access the various editing functions.
The basic building block for each waveform is kept in the Library. From here, you select between Sawtooth, Triangle, Square, Sine, Exponential and Pulse 1-3 waves, Noise and Silence. The three pulse waves differ in that the first is positive going, the second alternatively positive and negative going, and the third is a bipolar positive and negative-going pulse; you enter the pulse width that you want.
Once you've selected the basic wave, you then Modify it. Reverse reflects the waveform about an imaginary vertical axis in the centre of the wave window, while Invert reflects about a similar horizontal axis. While these have little effect on the sound of the basic waves, they are important tools when carrying out further modifications. Phase Adjust moves the wave along the time axis; this can be used to great effect when waves are added to or subtracted from each other. Amplitude Scale adjusts the level of all points on the wave to make the overall amplitude larger or smaller. If waveforms are to be combined, reducing the individual amplitudes will prevent clipping. Frequency Multiply changes the period of the wave. Consequently, it changes the fundamental frequency. Finally, Normalise Amplitude increases the amplitude of the highest point of the wave to a point just before clipping, and increases all other points proportionately. This can be used after functions which excessively increase the amplitude of a wave.
The above are common functions to carry out on a wave. Under the Special menu are others which have more specific uses. Amplitude Ramp Up/Down changes the level of a wave according to a scaling factor. For instance, a Ramp Up of 50% will scale the amplitude of the wave down to 50% at its starting point. Frequency Ramp Up lets you decide how many wavelengths are squeezed into the original wavelength, with each new wavelength being a fraction of the previous one. This creates resonant peaks in the sound. Taking a sine wave and using a Ramp factor of five creates an oboe-like timbre.
Smooth does what it purports to - it affects sharply-changing parts of the wave by a degree which you control via the percentage factor. Smoothing the above oboe-like timbre removes much of the resonance. The higher the Ramp factor, the longer the time taken to carry out the operation. One hundred percent smoothing takes a little short of ten minutes; consequently, there's an Abort button which restores the original wave.
The final option here is Splice, which lets you take two different waves and join them one after the other. Each wave is then reduced to half of its wavelength, which makes it sound an octave higher.
One gripe I have is that there's no Undo function - you have to copy a wave to another of the eight boxes before carrying out any modification otherwise it is lost. Copy is one of the functions offered in the Move menu and lets you select any current wave and copy it to another window, while Swap makes the obvious exchange of waves. Add lets you select two waves, add together multiples of each sample point in a ratio (which you select) and then place the result in another window. A ratio of 1:1 adds two waves in equal amounts. Subtract inverts the first waveform and then follows the same procedure as Add.
As the ST Monitor resolution is far less than the resolution of the samples being created, Zoom In allows you to see a wave enlarged by a factor of three. You can also flip between the different windows without having to exit from the zoom screen.
"After three days working with Virtual Wave, I have to admit to being very impressed - I spent three weeks with Samplemaker and got nowhere."
By adding waves, it should be possible to create practically any waveform. Virtual Wave allows you to combine any of the current eight waves and, while this particular facility is probably the most powerful available, it's also the most difficult to control.
Clicking on Select Fundamental brings up a dialogue box giving you the option to use a sine wave or waves 1-8 as the basic building block. Having selected a wave, Starting Harmonic lets you select the lowest harmonic to be used. Using 1.0 will keep the root frequency of the original wave. Maximum Harmonic gives the upper limit of the harmonic range used; working with a sample whose starting frequency is, say, 100Hz, the first harmonic would be 200Hz, the second 400Hz and so on. Using an audio range of about 20kHz, harmonics beyond the 200th would be inaudible. More to the point, the antialiasing filters in the sampler would remove them.
Also, the higher the number of harmonics, the longer the time taken to create the wave. Harmonic Step then lets you set which harmonics are to be used for calculation; selecting a figure of 3.0 would give the 1st, 4th, 7th and so on. For non-linear steps, there is a Step Increase function. Other setup functions include Starting Phase, Phase Step Offset and Scale Amplitude. Most parameters deal in integral values, but the program gives you the option of using fractional values for interesting effects.
Finally, you have to select the Harmonic Divisor. This sets up the way in which the amplitude changes from one harmonic to the next; effectively, the amplitude is divided by a number over which you have control. Six options are offered: Harmonic, Harmonic Squared, Root of Harmonic, Step Count, Random and None. For instance, selecting Harmonic Squared will mean that the 2nd harmonic will have its amplitude decreased by a factor of X while the 3rd harmonic will have an amplitude of X of the original. Consequently, the character of the sound will be less bright as the higher harmonics diminish. Alternatively, Root of Harmonic decreases the divisor, giving an increase in the amplitude of higher harmonics and a brighter sound.
Once the settings are complete, OK makes the Create Additive Synthesis Monitor pop up. This uses a horizontal meter, marked in percentage points, to show you how far through the creation process you currently are. The result is then displayed in the current window and you can continue to modify as you wish.
Although individual waves are only the foundations of the final sample, chances are that you'll wish to hear them as you go along. The Setup menu lets you select which sampler is connected to the other end of the MIDI cables (current options are Sample Dump Standard 12/16-bit, Akai S900/950 and Ensoniq EPS range) and to set any parameters which the selected sampler requires. You can then choose a number of times to loop the wave; this is essential, as the wave only has a basic length of less than 4ms. Such a dump takes very little time, and a similar meter to the one in the Create process is used to visually show you the progress.
Once in the sampler, the wave can be looped and you can hear its character. Doing this with the S900, setting the loop points to the entire length of the sample produced a perfect replay.
Having created the individual waves, the Patch Page lets you dictate the pitch and level for each wave. The transition from one wave to the next will then smoothly move between the values you set.
On entering the page, the top of the screen shows a linear chain giving the relative pitch of each wave and the time taken to move between one wave and the next. Below this is a Pitch/Time graph showing the same data visually with the central, horizontal dine bearing the root MIDI note and associated frequency. Pitch is changed in terms of semitones and cents rather than just numbers; a good idea. Clicking on the word "pitch" in any of the eight boxes makes the pitch boxes change to level boxes where you can set the percentage level for each wave. The graph changes to Level/Time. For both modes, the total duration of the sample is shown at the bottom of the graph. Unfortunately, you can't edit the values by just pulling about the points on the graph; this would be a useful feature because often it is easier to set parameters visually rather than deal in actual numbers. Data is displayed sensibly on these two graphs. On the Pitch graph, the vertical limits are set according to the maximum change of pitch, giving the best vertical resolution.
Resotek use a neat method to change parameters. Point at the digit you wish to change and a two way vertical arrow appears; move upwards and this changes to an upward arrow and the digit increases in value. Decrementing is done similarly. Neat though this is, it takes a bit of getting used to and I'd prefer the option to type in the value as well.
You can decide on the number of waves in the line at any time; clicking on a wave number turns off all waves after this point.
Before transferring the Patch to the sampler, you can see how the waveform changes over to time on the Preview Page. This shows seven graphs, each the width of the screen and relating to one of the transitions. They are either a white trace on a black background if the wave is in use, or vice versa if the wave has been turned off. Buttons along the bottom of the screen let you choose to view all transitions, or to view just one, spread over the seven graphs. You can select a transition and hit the Do button to see its graph, and then select another transition and see that.
Pitch isn't displayed; all you see is the smooth (or otherwise) transition from one wave to the next. This makes it easy to see what is happening to the amplitude of the sound - it's an important factor, because if you're moving from one wave to another which is basically the inverse of the first, at one point the waves will phase cancel giving a signal of very low amplitude. With these graphs, you will see if this is happening. You can also set how many cycles are shown across the graph; using a small number of cycles will show the waveform clearly, but may not let you see any amplitude problems occurring. For this, a higher number of cycles is useful.
"The Effect Stage gave great results - previously, I have resorted to using a digital delay or even two samplers to re-record a sample with effects."
Samplers have finite polyphony; in the case of Akai's S900/950, this is eight voices. Consequently, to fatten a sound by using two samples, with one detuned, halves the polyphony to a not-very-useful four notes.
To get around this, Virtual Wave has an Effects Stage where the final sample can be duplicated up to five times and each replica can be changed in pitch and level. The duplicates can then be mixed together, creating some of the effects which would otherwise "cost" polyphony.
Imagine that you want to add a detuned version to a sample. Clicking on Source 2 makes it active so that you can alter the pitch by a number of cents. If you want, you can also reduce the level, given as a percentage of the final sample. Alternatively, you might wish to create an octave brass sound, in which case Source 2 will have its pitch set to +12 semitones. You may even want to send a completed chord across to the sampler; the intervals can be set for two, three or four of the sources. It's a shame that a delay facility isn't offered as well, but you can't have everything.
Needless to say, more complexity directly equates to time required to send the Patch to the sampler. You have been warned.
Having created the sample (and saved it to disk), you need to transfer it to your sampler. The chances are that you've already transferred individual waves to your sampler to hear them. If so, the transfer parameters for your sampler will already have been set. These include whether or not you wish to use handshaking, which is a two-way MIDI connection between the ST and the sampler. Some samplers only work in handshake mode, transmitting an Acknowledgment message (ACK) after each block of data. Some samplers don't care. The point of using handshaking is that the dump tends to be more reliable; if an error does occur, the faulty block of data is usually re-transmitted.
Non-handshaking often gives faster transmission rates because there's no waiting for ACK messages. However, this is only useful when data is being sent as fast as MIDI can handle it, which is not the case with VW. The sample is being synthesised as the data is sent, which means that something less than 15% of the available MIDI bandwidth is actually used. So, it seems to be best to leave handshaking on all of the time.
On dumping the data, the horizontal percentage meter tells you how far through the data dump is - it would be more helpful to be given an estimate of the actual time, as large samples can take in excess of ten minutes, but with samplers using the MIDI Sample Dump Standard this would be impractical. This is because the time taken for the ACK to be transmitted is variable from one sampler to another.
One variable you can set is the Sample Rate. This should be the same as the playback rate on the sampler if the pitch of the created sample is to be played back correctly. This is often only critical if the sampling rate has, say, only one or two values. In the case of the Akai S900 the maximum sampling rate is 40kHz due to the anti-aliasing filters on the input, but this doesn't apply to data transferred via MIDI - you can set the rate to 48kHz and get better quality audio as a result. You really do need to know your sampler. Details are usually given at the rear of the manual.
The only other gripe I have is the inability to set loops within Virtual Wave. I appreciate that samplers supporting Sample Dump Standard may treat looping in different ways, and that some samplers support multiple loops while others don't, but it would be useful to be able to set a sustain loop of a particular transition. On supported samplers such as the Akais and Ensoniqs, such a looping facility should not be impossible.
You don't need to have a keyboard connected to hear the sound once it's downloaded to your sampler; Virtual Keyboard gives you an onscreen, seven-octave keyboard which can be played via the mouse. There's also a Print Screen option which is effectively the same as pressing the Alternate + Help buttons on the ST (Epson nine-pin job). Finally, there's an onboard help file which dedicates a page to each of the most common functions.
The manual is written in a non-technical manner and includes 16 pages of hints and tips for wave creation/editing and downloading to specific samplers. Bearing in mind the complexity of wave creating and sound synthesis, Resotek have done a very good job in this area. It also gives a good indication as to whom VW is aimed at.
After spending three days doing practically nothing but working with VW, I have to admit to being very impressed (I spent three weeks with Samplemaker and got nowhere). The results with an S900 were very good, including setting up multisamples across the keyboard by simply changing the root note of a sample before transfer to the sampler. Looping on the S900 was also fine as long as the final level was set flat, and was of sufficient length to be "loopable".
The Effect Stage gave great results; the saving on polyphony is well worth the bother. Previously, I have resorted to using a digital delay or even two samplers to re-record a sample with effects to prevent this reduction in polyphony. Either way, the sound was compromised. Not with VW.
Since a sample is synthesised as it's being transferred, transmission is slow. It's also because the sample needs to be synthesised that an audition feature within the program is impractical - you'd still have to wait even without transfer to a sampler. Other gripes include the lack of an "expert" mode (all screen exit options favour the cautious choice) and the lack of being able to set a hard drive path (VW always looks at drive A for waves and patches). These and the other small points brought up in the review apart, VW is a well-written, user-friendly program which gives good results without a great deal of head-scratching.
Virtual Wave deserves to do well. If you enjoy creating your own sounds and have a sampler as the mainstay of your system - as is becoming increasingly the case - check it out.
Price £99.95 including VAT and p&p.
More from Resotek, (Contact Details).
Review by Vic Lennard
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!