Contents
Snippit Synth’s user interface is divided into three distinct sections: the sample window, the synthesis control panels, and across the top of the window, the toolbar. It is here that all of the program’s main functions are accessed.
Open
[control]+[o]
To load a Snippit patch from disk, press the load button. All previous versions
of the Snippit Synth file format are supported in version 1.4, although due
to changes in the user waveform calculations, and improvements in the synthesis
engine, some sounds may vary ever so slightly. You can often compensate for
this by adjusting a couple of parameters once the sound is loaded.
Save
[control]+[s]
All your Snippit patches can be stored as special files on disk for later
retrieval. As of version 1.4, all of the Options settings, including the sampling
rate, are stored in the patch file, so you can carry on editing exactly where
you left off. If the sound uses a wavetable in any of its chunks, this too is
saved alongside the sound’s settings, and so the file will be considerably larger
than normal.
Sounds may also be saved as samples, so that you can use them in other programs
such as direct-to-disk recorders, tracker programs, editors such as Squash it!,
and sequencers like Breakthru 2. Snippit Synth supports eight or 16-bit export,
in AVR, AIFF, or SPL (a sample with no header information) formats. Press [control]+[e]
or choose ‘Export sample...’ from the File menu (you must have a sample in memory
else nothing will happen!), and the ‘Save data as...’ dialogue will appear.
From here it is possible to choose the file format, or optionally save the sound
as a patch file. If you want an eight-bit sample, ensure that the ‘8-bit’ button
is highlighted, else it will be saved in 16-bit format. Press Cancel to quit
without saving.
New
[control]+[n]
To reset Snippit Synth to its default sound status, press the New button.
This function also clears all the sample memory.
MIDI sample transfer
[control]+[m]
As well as saving sounds as samples to disk, Snippit Synth will also you
to send them, via MIDI, to an external sampler. Currently, Snippit Synth’s MIDI
sample dump has drivers for the Akai S900/S950/X7000/S700, and the MIDI Sample
Dump Standard (the latter encompasses all new samplers, and keyboard workstations,
such as the Kurzweil K2000, Yamaha SY99, and Korg T-series).
Before sending a sample, you must first ensure that you have connected your
sampler to the Atari (MIDI out to MIDI in on the sampler, and vice versa). A
closed loop system (where both inputs and outputs are connected) isn’t essential,
but it may help if you are having trouble receiving a sample properly. Next,
in the Sample Dump dialogue box, set the MIDI channel to send on, and the sample
number to send to. The latter setting is very important, since you might not
want to over-write a sound in that location in the sampler’s memory. Finally,
choose the driver best suited to your sampler, and press the send button.
Whilst the sample is being sent, Snippit Synth draws a progress bar, and reports
the number of sample packets transferred. During this time, you may abort the
sample dumping by pressing the [escape] key.
Calculate sound
[control]+[c]
By pressing the calculator button, you are telling Snippit Synth that your
sound is ready to be rendered. Once Snippit has started to create your sound,
a progress bar will appear, to let you know how long it will take. It doesn’t
usually take too long to render a sound, unless of course, it is very complex.
But at any time, you may press the [escape] key to abort the process.
In the event that there is insufficient memory available for the sample, Snippit
Synth will report an out of memory error soon after starting. More memory can
be made available by running the Atari with less desktop accessories and TSR
programs (like NVDI), but if there really isn’t any more RAM, then you’ll have
to make your sound a bit smaller.
Sample draw
[control]+[d]
Most of Snippit Synth’s main window is taken up with a huge window. This
displays the sample currently held in memory as a graphic waveform, and can
be very useful for visualising how grains are dispersed by the different patterns.
There are four different drawing modes (none of them are any quicker to redraw,
it’s just a case of which one suits you better), and the Pencil button toggles
between them.
Play
[p] or [shift]+[p]
When a sample has been successfully rendered, you can then audition it by
pressing the play button, to hear if you need to adjust any parameters. Snippit
Synth will play back the sample at whatever sampling frequency is chosen (or
the nearest available for the hardware), and you can even choose a different
rate to ‘pitch’ up or down the sound (see Sample Rate section below).
Chunk Select
[alternate]+[1]...[4]
Buttons A, B, C, and D correspond to the four sound ‘chunks’ in a Snippit
Synth patch. By selecting a button, you make that chunk available for editing;
all of the on-screen synthesis controls underneath the toolbar automatically
update to display the settings for the selected chunk.
Chunk Copy
[control]+[x]
Getting chunks to mix well, particularly when cross-fading them, is quite
an art. This is because different size chunks often produce different pitches,
and having to go through all the parameters matching their settings can be very
cumbersome. Instead of having to endure this labour, Snippit Synth allows you
to copy the settings from one chunk to another. When you press the Copy button
a dialogue box will appear, asking which chunk, if any, you would like to copy
the current one to. You may choose any of the other three (the currently selected
chunk is disabled, so you can’t copy it onto itself!), or abort the operation.
After copying, Snippit Synth will switch to the destination, so you can edit
the newly copied chunk.
Snippit Synth’s synthesis architecture isn’t at all new. Granular synthesis has been around for more than fifty years, and was conceived by Denis Gabor as an alternative to Fourier’s ‘all sounds are made of sine waves’ theorem. Instead, granular synthesis works on the notion that, like a dot matrix print-out, composite sounds are made from lots of tiny little dots, scattered around the three axes of sound: amplitude, time, and frequency. Since it would take a very long time indeed to set three properties for each dot, or sound grain, Snippit Synth uses a set of pre-defined patterns, giving you a much higher level of control, much like programming in a basic language versus programming in assembler code...
DCO
The first panel is where the grain’s timbral characteristics are set. Snippit
Synth has five different waveforms to choose from: sine, square, sawtooth, triangle,
and custom. The latter allows you to load in any AVR, AIFF or raw sample data
to use as a complex wavetable (by pressing [alternate]+[l]), and can
produce some very odd effects. Once imported, a sample is automatically optimised,
and tidied using amplitude attack and decay curves on its start and end. By
doing this, Snippit Synth ensures that as few clicks, caused by sudden changes
in amplitude, occur as possible. These samples can then be saved as User waveforms
using a selection in the File menu (or by pressing [alternate]+[s]),
and re-used on other sounds later on. To load an existing User wavetable, press
[control]+[w], or choose the option from the File menu.
Up to five hundred grains can be placed in one chunk, and the greater the number,
so the likelihood of them overlapping and modulating each other increases. Other
by-products of increased granular density include more harmonics, a pitch increase,
and greater amplitude. Snippit Synth will never distort a sound, since all of
the sounds are rendered in thirty-two bits, so you can pile on as many grains
as you like!
Time displacement
This section controls the length in sample points of the chunk, up to a
maximum of 100,000 samples. It is worth noting that, depending on the sampling
frequency, this will equate to a different length in seconds. For example, at
25KHz, the maximum length is four seconds; at 50KHz it is only two seconds.
The buttons at the bottom of the panel describe how the grains are to be placed
in the chunk, in order: randomly, with an attraction to the sample’s start,
attraction to the end, or uniform. The latter is more commonly used, though
the other three are very useful for effects and percussive sounds.
By reducing the size of a chunk, you effectively increase the granular density,
since now there are more grains per sample. To explain: imagine a field full
of cows, a field in which the farmer decides that, in half of it he will plant
some crops. The cows then only have half as much space, and so the herd density
is much greater (everyone’s packed more tightly together!), even though there
are still the same number of cows. Equally, by increasing the chunk size, so
the grains will have more space between them.
Frequency dispersion
Changing the granular density is one way of affecting the overall pitch,
but altering the actual frequency of the grains themselves is far more direct.
As with all of the synthesis controls, the frequency affects all grains in the
chunk, but this doesn’t mean that they all have to be the same pitch. Rather,
as well as having a setting for the fundamental frequency (with snap to note
A and C buttons for quick reference), the frequency panel also has a dispersion
value. When this is set to a value greater than zero, Snippit Synth will alter
certain grains’ frequencies from the fundamental by as much as the dispersion
value set. How it does this is dependent on the shape buttons on the bottom
of the panel. In order: randomly, swept down, swept up, mid-peak, and end-peak.
Also, the fundamental frequency can be deviated from in either direction, and
a set of polarity buttons sets this. You can even make it disperse either side
of the fundamental by selecting the plus and minus button.
This may all sound very complicated, but an example should clarify things: if
a sound’s fundamental frequency is 1,000Hz, and its dispersion value is 100Hz,
then setting the shape to sweep upwards, and the polarity to minus would have
the following effect. Grains at the sample’s start would be mostly 1,000Hz,
and as the sound continues, so they would become progressively lower in frequency
until, at the end, the grains are all 900Hz.
Amplitude properties
Now you understand the idea of Snippit Synth’s grain dispersion patterns,
the amplitude properties panel should be perfectly clear (if not, just experiment
a bit, and it soon will be!). Instead of a fundamental frequency, you have a
relative amplitude setting (from 0 - 100%). At the maximum setting, all the
grains will vehemently follow the shape and polarity parameters set in the amplitude
panel, so you can create envelope shapes such as fades. At 0%, all of the grains
will have a uniform amplitude, though this doesn’t necessarily mean that the
entire sound will have a constant volume (this can depend on whether grains
overlap, and if frequency dispersion is used)! Various settings in-between the
two extremities will produce more subtle amplitude fades and shapes.
Multiple chunk mixing
A Snippit Synth patch can comprise up to four separate pieces, or chunks.
In a way, these are just like oscillators in a synthesizer, except of course,
each chunk is actually a whole sound in itself! The idea behind multiple chunks
is to allow you to form more complex sounds by overlaying, modulating, or cross-fading
(just like a wave sequencer!).
The final synthesis panel has four switches, labelled A, B, C, and D, and these
correspond to the four available chunks. Any number of chunks can be used in
a sound, although they must be sequential. For example, A and B, A, B, and C,
are all valid, but not A and C, or B, C, and D. By enabling chunk D, Snippit
Synth will automatically enable chunks A, B, and C. Likewise, if you switch
off chunk A, chunks B, C, and D will also be disabled.
Underneath the switches are four mode buttons, and these are used to determine
how multiple chunks are mixed. If you have only one chunk active, you needn’t
worry about setting these buttons. In order they are: sequential/cross-fading,
ring modulate, amplitude modulate, and mix. The first mode has an additional
control below for setting the length of the fade, from 5% to 50% of the chunk.
Sample Rate
Options
[alternate]+[o]
Various settings pertaining to the operation of Snippit Synth can be set
in the Options dialogue. These include changing the waveform colour (obviously,
this only has affects colour systems), and check boxes for enabling the progress
bar, and various post-synthesis processing effects (explained below). You
can also change User-defined sampling rate here. To alter the value, click upon
the text box with the left or right mouse button to decrease or increase the
frequency. By simultaneously holding down [shift], [shift]+[control], or
[shift]+[control]+[alternate], the value can be changed in steps of 10,
100, and 1,000 Hertz.
Optimise
[control]+[v]
This process increases the amplitude peak to around 100% of the maximum
allowable threshold of a 16-bit sample (96dB), thus giving your sound a better
signal-to-noise ratio.
Crop
[alternate]+[x]
Whilst Snippit Synth usually fills up all of the allotted space with grains,
some sounds, particularly those with granular attraction to sample start or
end, do tend to have blank spaces. Auto-crop is designed as a post-processor,
to ready your newly created sound for exporting as a sample or sending to an
external sampler via MIDI, removing any ‘dead space’ before and after the sound,
saving you the bother of editing it later.
De-clicker
[alternate]+[d]
The De-clicker option is designed to ‘soften’ dramatic transitions in the
amplitude domain (those around 36dB), working a little like a passive low-pass
filter. It won't remove clicks entirely (else all of your square waves would
sound very dull), but will make sounds created with the user waveforms a bit
tidier.
Chorus
[alternate]+[c]
Chorus allows you to ‘thicken’ a sound, thus creating some really fat analogue-style
pad sounds. Although it has no parameters to set, by re-applying Chorus to a
sample, it is possible to gradually detune the sample to the point where the
‘chorused’ part is as loud as the original.
Resonant filter
[control]+[r]
The resonant filter is actually an FIR Comb filter with very tight bands.
In addition, it is pre-programmed with an envelope shape for a really dynamic
sweeping effect. A side effect of using this processor, is the volume of the
waveform tends to be quite low afterwards. Use Optimise to return it to normal.