APod

From Spheriki

Jump to: navigation, search

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

Master tab (resolution: 640 * 480 * 32)
Enlarge
Master tab (resolution: 640 * 480 * 32)

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

Osc tab (resolution: 640 * 480 * 32)
Enlarge
Osc tab (resolution: 640 * 480 * 32)

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

EG tab (resolution: 640 * 480 * 32)
Enlarge
EG tab (resolution: 640 * 480 * 32)

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

FX tab (resolution: 640 * 480 * 32)
Enlarge
FX tab (resolution: 640 * 480 * 32)

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
Personal tools