This is the last in a series of three articles road-testing SynthEdit, a Windows shareware program that has become very popular for creating virtual instruments and effects. (Mac users may want to try Max/MSP or Sonic Birth.) With SynthEdit, you build your own software synth by connecting modules onscreen; the program then exports the instrument in the VST plug-in format. Here’s the story so far:

SynthEdit Logo You can use the open-source SynthEdit logo to brand your synths and SynthEdit-related websites. Download higher-resolution and vector-format versions here.
  • Part 1 introduced SynthEdit and VST. It also provided numerous links to sounds and to commercial and free instruments made with SynthEdit.
  • Part 2 introduced the basic categories of synthesizers and explained the basic design of the mighty Ricko-3A, a virtual synthesizer I made with SynthEdit. The Ricko-3A emulates and expands on Roland’s 1974 analog monosynth, the SH-3A, which was my first synth as a teenager.
  • Part 3—this article—reinforces the construction process with a step-by-step example. It also delves into the details of the Ricko-3A’s construction, including how I implemented MIDI automation.

Walkthrough: Your First Synth

Let’s jump straight into making a micro-synth.

  1. Download and install SynthEdit.
  2. Download the example file OReillyEG.se1 (8KB zip file) and save it into a convenient directory, such as TEMP. (SynthEdit synths use the .se1 extension.)
  3. Launch SynthEdit.
  4. Select the File>Open menu item and open OReillyEG.se1.

You should see a window like Figure 1.

Top Window Figure 1. Typical top-level window (click to enlarge).

Figure 1 shows a typical top-level window on a SynthEdit project.

  • The virtual keyboard lets you try out the synth as you build it.
  • The VU meters at the top right help you adjust your synth’s volume.
  • The Sound Out module at the right connects the synth to your PC’s audio output.
  • The guts of the synth are inside the container object called OReillyEG in the middle. When you save the synth as a VST, it is this container that gets converted into the VST, not the other top-level items.

Now right-click on the OReillyEG container; a pop-up menu will appear. SynthEdit developers use this menu constantly. Let’s look at each of the major sections in it—Properties, Panel Edit, Structure, and Automation—and make a micro-synth.

Properties

From the top window, right-click on the OReillyEG container and select Properties. The window in Figure 2 will appear.

Figure 2: Properties Figure 2. SynthEdit Property windows let you adjust global parameters for each module.

All containers and modules have Property windows. These let you set parameters such as the title and various input settings of modules. Starting from the bottom:

  • The Skin selector lets you change the skin (appearance) your synth will use.
  • The CPU indicator shows how much “grunt” the module requires. (This gauge is really useful for checking whether modules are going dormant when not in use, which good performance requires.)
  • The Polyphony selector sets the maximum number of voices available. Running more voices takes more CPU cycles.
  • The various boxes marked MIDI Out, Left Out, and Right Out are the names of the input and output pins (ports) on the OReillyEG container. You can rename them to make it easier to remember their functions.

Panel Edit

From the top window, now right-click on the OReillyEG container and select Panel Edit. The window in Figure 3 will appear.

Figure 3. Panel Edit Figure 3. Panel Edit window (click to enlarge).

Our micro-synth can be monophonic or polyphonic, lets us select the waveform and (for square waves) the pulse width, and has controls for ADSR (Attack, Decay, Sustain, Release), level, and panning. None of these knobs is connected yet; that will be your job!

SynthEdit provides many different kinds of knobs, sliders, switches, buttons, and text displays. And you can customize and animate them using tools such as POVRay or Adobe Illustrator to make completely different kinds of skins—translucent sliders that glow as you change them, knobs with the inspiring faces of the Staple Singers, level meters that track Michael Jackson’s noses...whatever strikes your fancy.

Structure

From the top window, right-click on the OReillyEG container and select Structure. The window in Figure 4 will appear. This is a our basic synthesizer, but the various knob and list selectors are not yet attached.

Figure 4. Structure Figure 4. The Structure window (click to enlarge.)

Starting from the left side of the diagram, the incoming MIDI signal goes to a “MIDI to CV” module. (CV is short for control voltage, the type of signal used to change parameters in real time on analog synths. The signals here are digital, of course, but the concept is the same.) This module provides the gate signal for the ADSR generator and the pitch signal for the oscillator. The oscillator output signal goes to a VCA (virtual voltage controlled amplifier) which shapes the level of the signal, then to a stereo Pan module, and finally to the output.

Every synth you make will probably include the MIDI Automation and Patch Select modules; these enable what their names suggest. They are only needed in the container for your synth.

Notice that we have used two I/O Mod modules. That permits a nice right-to-left flow, which is vital as your synth grows to scores of connections.

If you right-click in the whitespace in the Structure window, you’ll see a pop-up menu showing all the components loaded in your system. (Many more components are available, as we’ll see in a moment.) You add extra oscillators, filters, and so on by selecting these components. 

Try right-clicking on the Oscillator module (in the center) and selecting Properties. You’ll notice that you can set values for all the unconnected pins, and also that there are some minor options available that do not correspond to pins. Try choosing a different waveform from the list, and then play the virtual keyboard to hear the new sound.

Dem Bones

Now we’ll hook up the knobs and list controls to the appropriate modules’ inputs.

Click on an Output pin. Then, with the mouse button still held down, move the cursor to the corresponding input pin and release the button. (There are various types of pins, indicated by color; SynthEdit will not let you connect inputs and outputs of different types.) The window should now look like Figure 5.

Figure 5. Knob Connection Figure 5. The knob bone’s connected to the Osc bone....

Now you’re ready to be Herbie Hancock:

  1. Go to the top-level window, “SynthEdit.” The Window menu can be useful for this.
  2. Right-click on the OReillyEG container and open the Properties window. Select the “Show Controls on Module” option.
  3. The OReillyEG container will now be showing the controls, but the window layout will be messed up. So resize the top-level window by dragging the bottom right corner downwards, and move the now-large OReillyEG container around so that the virtual keyboard and the controls are on different parts of the screen.
  4. Play the virtual keyboard and adjust the controls to hear the sound change. (Tip: at the far left of the virtual keyboard is a little “T” button. Press that and the next notes you play will hold until you press the T button again or press the red “stop” button in SynthEdit’s toolbar.)

Pages: 1, 2

Next Pagearrow