APod
From Spheriki
aPod is an audio system experiment in Sphere by NeoLogiX.
Contents |
Introduction
This will chronicle the development of the aPod audio system, first on Sphere, then as a VSTi. aPod will be my modular synthesis development process. The primary advantage of modular synthesis over other forms of audio synthesis is the ability to dynamically change the sound over time instead of hard-coding a particular synthesis formula.
Theory
In modular synthesis, sound is created by connecting audio modules in certain configurations (known as "patches"). Modules are usually categorized as either a sound generator (or simply "generator") or an effect generator (or simply "effect"). Patch changing happens by either adding a connection between two modules (known as "chaining") or removing a connection (or "unchaining"). Another advantage of modular synthesis is if properly programmed, chaining/unchaining can happen on-the-fly (though I doubt I'll be attempting that anytime soon), making for some really unique sounds and timbres.
The aPod Interface
Here will be screenshots of the interface for defining an aPod patch. The Sphere interface is defined as follows:
- The interface is tabbed
- There are four tabbed panels: Master, Oscillators (Osc), Envelope Generators (EGs), and Effects (FX)
Master Panel
This is where you manage your connections and modules.
You can add and remove modules, chain two modules (provided the source output type matches the destination input type), and remove an existing connection.
I have yet to implement dragging module positions in this screen, as well as scrolling the module subpanel.
Oscillators Panel
This is where you edit the properties of the available oscillators. Editable properties include:
- Fundamental pitch detune
- Oscillator shape
There will be a few methods to edit the oscillator's fundamental shape. You'll be able to choose the base waveform shape based on the wavetables available. Wavetables will include:
- Sine
- Cosine
- Triangle
- Square
- Ramp up
- Ramp down
- Noise (an option to allow for dynamically generated random noise)
You will also be able to edit the waveform directly, including:
- Changing duty cycle
- Reversing the wave
- Inverting the wave
Envelopes Panel
This is where you edit the properties of the available envelope generators. It will display the envelopes and allow you to drag the nodes to change the envelopes' values. The values you can edit will be as follows:
- Attack rate
- Decay rate
- Sustain level
- Release rate
Effects Panel
This is where you edit the properties and types of available effects. The effects that will be available will be as follows:
- Delay-based effects
- Chorus
- Reverb
- Echo
- Resonance filters
- Low-pass
- High-pass
- Band-pass
- Volume effects
- Normalize
- Amplify (with clipping)
- Sum (with normalizing)
- Multiply (with normalizing)
History
Version 1.00s
(current version)
- Initial Sphere release

