This tutorial will take you through the creation of the example synth that ships with SynthMaker (shown below). It also provides an overview of key concepts and some basics of sound synthesis which makes it an fitting introduction to the software. If you’re looking for a hands on quick start guide then this tutorial is ideal.
Starting The Software
The example synth will load up automatically when you run the software for the first time. It’s a very simple two oscillator synth with one filter and one delay effect. First have a fiddle around to see how it works and try some of the presets to hear how it sounds.
Before we begin, let’s run through some of the basics. First the user interface. You’ll see that the application window is split into four distinct panes. The largest of these is the Schematic Window. This is the canvass upon which you build your creations. Above the Schematic Window is the Navigator. SynthMaker takes a hierarchical approach to building and so the Navigator is provided to help you to see where you are.
To the left of the Schematic Window are the Toolbox and Filter bar. The Toolbox contains all the components that are available to you. The filter bar provides some nice ways of finding what you want. More on this as we go along.
Ok so let’s get going. From the File menu select New. You now have a completely new document, called a Schematic, in which to build your creation.
The basic premise of the software is that you drag components from the toolbox to the schematic window. Each component performs a particular function. You then link components together to create different kinds of behaviour.
We’ll start by dragging 3 components in from the toolbox. We’re creating a synth which we want to play via MIDI so we need components for receiving MIDI messages at one end and for sending audio out at the other end. In between is our synth. So go to the toolbox and drag in a MIDI In component and then a Direct Sound Out component. To drag a component first click on it. Then, with the mouse button held down, drag it to the schematic window and release the mouse button to drop it in place.
The third component we need is the synth itself. We’ll start with a pre-made VSTi shell. To find this, go to the pane to the left of the toolbox. This is the Filter Bar and it allows you to filter the components shown in the toolbox based on certain characteristics. The large buttons represent categories or groups of components. Click on Audio then use the navigation buttons at the top of the toolbox to scroll through the components in this category. Look for the VSTi component and drag this into the schematic.
Using the filter bar and toolbox navigation is ideal for browsing but the if you know what you're looking for then the easiest way to get it is to type in the search box at the top of the toolbox. Type VSTi and the component should appear.
It’s best to arrange these components horizontally with the VSTi in the middle and the MIDI In on the left, Direct Sound Out on the right because next we're going to link them together.
You’ll see that the components have circular symbols on their left and/or right sides. These are called Connectors. The symbols on the left are input connectors and the symbols on the right are output connectors. You can link connectors together to allow information to pass between them.
There are many different types of connector. Each type has a unique symbol. In general you should link connectors of the same type and data flows from the output connector of one component to the input connector of another but this is not always a hard and fast rule.
Going back to the schematic you’ll see that there are two types of connector so far. The red connector represents MIDI messages and the Blue connectors represent Mono data (single channel audio streams). You can create links from output connectors to input connectors but not the other way round. Let’s link the MIDI In to the VSTi so that MIDI messages can be used to play our synth. Simply click on the MIDI output connector, hold the mouse button down and move towards the MIDI input connector. The input connector will be highlighted when a link can be established – at this point release the mouse button and a link is created.
Go ahead and link up the Mono outputs of the VSTi to the Left and Right channel inputs for the Direct Sound Out.
Before you can make some noise you need to select the MIDI In device and the Direct Sound Out device you want to use. The components will show a list of available options. Just click on the devices you want to use. If you don’t have a MIDI keyboard you can select your PC keyboard.
Now go ahead and play some notes.
Some More Background
Before we start you'll need to know some more background info about the software.
The VSTi component is a special kind of component that we call a module. A module is different in that it’s definition is defined by other components. Any component that is not a module is called a Primitive.
A module can be recognised by it’s lighter grey border/background and by the fact that you can go inside it and see the schematic that defines the module.
If you click on the VSTi module you will see that it becomes highlighted. This shows that it is selected. You will also see a line of symbols below the selection rectangle. This is called the Action Panel.
The action panel shows you what actions you can perform on the selection. Each button executes a particular operation. If you hover your mouse over each one in turn you’ll see a small description pop up. A longer description will appear in the status bar at the bottom of the application window.
For modules that you can go inside the Move Into Module button will be shown. This is represented by a Triangle with it’s apex pointing down. If you click this button you’ll move into the VSTi module. There are many other ways to move into a module. You can double-click on the module or you can right-click on it and select Move Into Module. If the module is selected you can use the PGDN key too.
Once inside a module the schematic window will change to show the schematic for that module. You’ll also see a change in the panel above the Schematic Window. This is called the Navigator. The navigator provides an easy way to see where you are in your schematic. Because modules can be built from other modules you can easily build a module hierarchy that is many levels deep. The Navigator becomes very handy in these situations.
There are two other features of the navigator that are worth mentioning. First you can click on a pane to move to the module represented by that pane, this makes jumping between parts of your schematic very easy. For the selected pane you’ll see a sub-rectangle. This is the view rectangle and it shows which part of your schematic is visible in the schematic window. You can drag this rectangle around with the mouse to scroll to different parts of your schematic.
The VSTi Schematic
So back to our schematic. Go inside the VSTi module. This is currently just a sine wave oscillator providing the basic sound and this is passed through an ADSR to change the sound volume over time.
On the far left and far right of the schematic you’ll see some small rectangular components. The one on the left has a MIDI output connector. This is a Module Input component and it defines the MIDI connector that we saw on the VSTi module. The two components on the right are Module Output components and these define the mono output connectors on the VSTi module. Module Input and Output components allow you to pass data in and out of a module.
The MIDI data feeds into a MIDI to Poly module. This module transforms MIDI notes into independent voices. The Poly connector (white with a tilde in the centre) represents these voices. The first output on the MIDI to Poly component represents the frequencies of the notes that are playing (one signal for each voice in Hz). These are passed into an oscillator which generates sound signals based on the frequency (again, one for each voice) and these are passed through the envelope which modifies the volume level of each signal over time.
The output from the envelope passes into a Combiner module and this adds all the voices together into one mono signal which can then be sent to the audio device.
The Stereo Clip module provides protection against distortion by clipping the output signal so that it’s absolute value never exceeds 1.
Adding A Filter
Ok let’s make some changes. Go to the filter bar and click DSP. Drag in an Amp component. Go back to the filter bar and in the same DSP group find and drag in a State Variable Filter. Connect the Amp after the Multi Osc and then connect the filter to that. Next route the output from the filter through the envelope. Also, the filter needs pitch information so we need to link from the Pitch output of the MIDI to Poly to the filter’s pitch input. Finally we’ll change the oscillator to a Sawtooth as it provides a more interesting sound to work with.
If you need to move a link from one input connector to another just click on the connector, hold the mouse button down and drag. You’ll pick up the link and can then attach to another connector as before. To delete a link right-click on it and select delete from the pop-up menu or you can hold CTRL and click on the link.
Note that all editing operations are undoable in the usual way (Edit menu, Undo or CTRL+Z) so if you make a mistake don’t worry.
Try playing some notes. Adjust the filter cutoff as you do so to get a more interesting sound.
Adding Another Oscillator & Detuning
This is still very basic. The example synth that we're aiming for has two oscillators which allows for richer sound possibilities. Instead of dragging in new modules we can just copy and paste the ones we have. Select the Multi Osc and the Amp. You can do this by drag selecting or by holding SHIFT and clicking on the components one by one.
Now go to the Edit menu and select Copy. Go to the Edit menu again and select Paste. You now have two oscillators with independent volume controls. Go to the Filter bar and click DSP. Drag in two Detuner components. We want one for each oscillator. These will allow us to use different frequencies for each oscillator but relative to the frequency of the note that is played. Connect the components as shown in the picture below.
Play a few notes and you’ll see that the sound is a little bit thicker but there isn’t much difference. To get a nice effect, go to the detuner for one of the oscillators and turn the Fine tuning knob about 30 degrees clockwise. Now you should get a richer sound as the two sawtooth waves play slightly out of sync with one another.
A nice way to add interest to a sound is to change it over time. We already have an envelope controlling the volume of the sound as the note plays. Another commonly used technique is to place the filter cutoff under the control of an envelope.
Go to the Filter bar again and select the Audio group. Drag in an ADSR component. Link the output of the ADSR to the Cutoff input of the State Variable Filter. Note that because the Cutoff input is intended for use as a modulation source the input expects a value in the range 0-1.
If you adjust the shape of the envelope you can now produce some much more interesting sounds as the cutoff varies over time.
Effects and Master Control
To complete the sound parts we need to add the delay effect and a master volume control. Locate and drag in a Ping-Pong Delay from the toolbox. Link this up after the Combiner module. Go to the DSP group and drag in a Stereo Amp. Link this up in between the delay and the audio outputs.
One final change we need to make is to the ADSR controlling the volume of the sound. This has an Amount knob which we don't really need (now that we have the master volume ) so we'll get rid of it.
Double-click on the ADSR module controlling the volume. You’ll see the Amount knob. This is linked to a De-zipper and then into a VCA.
Select the three modules together with the Envelope module output component (hold SHIFT and click on each in turn). Then press the delete key on your keyboard. Now link the ADSR to the remaining VCA (as shown below).
You can now go back up to the parent module by right-clicking and selecting Move to Parent (or double-click on an empty part of schematic, click on the Navigator or press PGUP). You’ll see that the amount knob has gone. You can resize the modified ADSR module if you like by dragging the bottom-right corner of the module.
That's the audio parts of the synth complete. We now have everything we need to make the same sounds as the example synth.
We’re now going to add preset handling. Go to the Audio group and drag in a Preset Manager. This is all we need to add preset capabilities to the synth.
In order to set the number of presets we need to access the module’s properties. If a module has properties then in the bottom right-hand corner of the module you’ll see a circular button with a ‘P’ in it. Click on this to open the properties panel, this shows all the parameters that define the behaviour of the module.
Click in the Total field and type in the number of programs you require. You can cycle through the programs by clicking the + and – buttons. Each program is given a default name. To change a name just click in the box. There’s an option for locking the presets. If this box is checked any changes made to preset parameters will be lost when you change program or when you save your schematic. Under these circumstances You can commit changes by clicking the Save button. We’ll leave the Lock box unchecked.
Having set up the programs you can now go and edit the knobs and settings for each program in turn to build up a collection of presets.
The Front Panel
Having dealt with the sound we’re now going to look at the GUI. Move back up to the Top level. Any module can have a GUI or Front Panel. For VST/VSTi modules this front panel will be the interface you see when you export to a standalone plugin. The VSTi module already had its front panel enabled, this was originally done by clicking the ‘G’ button on the action panel.
We want to resize the module to make the panel bigger. This is done by dragging the bottom-right corner of the selection rectangle around the module.
You’ll see the panels for the modules below all stacked up in the top-left corner. We want to arrange these in a nice layout. To do this, make sure the module is selected and click on the padlock button. This will unlock the front panel so that you can edit the layout. You can now drag the module panels around.
Use the cursor keys to nudge the panels around. If you need finer control hold CTRL as you nudge one pixel at a time. You can also resize module panels when the front panel is unlocked. Click on the bottom-right corner and drag in the usual way.
The GUI looks a bit uninspiring with just the controls so we’ll add a background image and some other graphical features. Go back inside the VSTi module. To keep things tidy we’ll create a new module that will contain the graphical elements we are about to add. To do this go to the filter bar and click on the Element group. Drag in a Module component (you can also add a module by pressing M on the keyboard). We can set the name of the module so that we know what’s inside. Click on the module then click the ‘N’ button on the action panel. An edit box will appear across the top of the module. Type in Adornments then hit return or click away.
Go inside the new module. We’ll add a background image first. Go to the GUI filter bar group. Drag in an image component. The Image component has it’s properties pinned open by default (this is done by holding CTRL when you click the properties button). Click the load button. Find the image you want to use, this can be a bmp, png, jpeg or gif file. Click ok when you have selected your image. This will be displayed as a thumbnail in the Image component’s properties panel.
Go back up to the Top level and you’ll see the image automatically appears in the VSTi module’s front panel. You may have to resize the module panel for the image in order to see it in full.
To segment the controls from one another we’ll add some Group Adornments. Go back to the Adornments module where you created the background image. On the filter bar select GUI. You should see a module called Group Adornment. We’ll need 5 of these in total.
We could go and grab all 5 at once. There’s an easy way to do this. First click on the Group Adornment module then keep clicking until the counter in the bottom-right corner shows x5. You would then just click and drag as usual.
Because we’re going to change the colours we’ll take a different approach. Right-click on the Group Adornment to decrease the component count until you just have one again then drag that across.
Once again we’ll use the properties of the module to customise it to our requirements. Click the properties button for the Group Adornment module. In the name box at the top type in OSC1. To make the adornment fit nicely with the background image we’ll change the colours. Click on the Outline colour and set this to grey, go for an RGB of (128,128,128). To set the RGB, on the Colour dialog you’ need to click Define Custom Colours.
Set the tab to black. The background is semi-transparent, set the base colour for this to light grey (RGB = 192,192,192). The label colour can stay as white.
To create the other 4 group adornments simply copy and paste the one you have already. This way you don’t need to go setting the colours for each module. All you need to do now is change the text for the label. The other labels are: OSC2, FILTER, DELAY, AMP ENV.
To arrange the adornments, go back up to the front panel for the synth. You may not be able to see the adornments as they could be hidden behind the background image. If this is the case right-click on the background image and select Send to Back. This will make everything draw on top of the background image.
Now you can just drag and resize your adornments as before to get a nice layout. If the adornments appear on top of the controls you can use the right-click method to control the ordering.
Sometimes it helps to hide the background image while you are editing the front panel. To do this, double-click on the background image in the front panel. This will take you to the corresponding module. Click on the Toggle Show in Parent button (shaped like an eye). Go back up to the front panel and you’ll see the result
We’ll now add a few more graphical touches to finish things off. First off we’ll add the black bar that runs across the top of the synth. This is just a rectangle component. You’ll find this in the GUI group in the toolbox. Drag one in and resize it to 60 x 9 grid squares wide. If you look on the status bar you’ll see the size of the module panel is shown in pixels. At default zoom there are 8 pixels per grid square so this will be 480 x 72 pixels.
Now open the properties and set Line (outline) to None. Check the Reflect box so that we get a nice reflective effect. Go back to the front panel and position the rectangle. You may have to move it to the back so that the volume button and Preset Manager show through.
Next we’ll add the SynthMaker logo. To do this we’ll add another image component into the adornments module. The logo image has been specially prepared in an image editing application so that it has a transparent background that fits well with the image we are using underneath.
Simply load the image into the module and position it in the front panel. We could have put the logo directly onto the background image but having a separate image allows us to move it around.
We’ll add one final image around the Volume button just to liven things up.
That's it, we're all done now. You now have your own example synth!