Tuesday, February 21, 2012

Status (Feb 2012)

I started this project in 2004, but haven’t worked on it since 2006… let’s see if I can find the time to continue it!

First step is to study the synth sound and how the patch parameters affect it. Second step is to simulate it in software. If this is ever completed, the final step is to package it in something usable (e.g. a VST instrument), add the UI and optimize the code.

Each of the Matrix 1000 voices is generated by the CEM 3396 analog chip, while the sound parameters, envelopes, MIDI and matrix modulation are controlled digitally by the synth’s CPU.

For the core voice emulation, here are some of the things that need to happen before the simulation is complete (green means I completed this part, yellow that I’ve started working on it, red means I haven’t tackled it, yet):

Analog part:

  • VCA (volume): characterize amplitude (“characterize” := study how measured quantity depends on inputs and parameters)
  • DCO (oscillator): alias-free simplified implementation
  • DCO: characterize square waveform timbre
  • DCO: characterize sawtooth / triangle waveform timbre
  • DCO: characterize noise
  • DCO: oscillator sync
  • DCO: click
  • VCF (filter): characterize filter frequency
  • VCF: characterize resonance
  • VCF: model non-linearities
  • VCF: self-oscillation and variability
  • VCF: study filter modulation
  • Study voice variability

Digital part:

  • Characterize envelopes
  • Characterize ramps
  • Characterize “tracking” control
  • Measure LFO frequencies
  • Study “random” LFO
  • Characterize matrix modulation (all permutations, there’s a LOT of different cases!)
  • Characterize portamento
  • Characterize global parameters like vibrato

Hmmm, more red than I’d like…

I can probably get a first set of useable basic sounds after I complete the square wave and filter resonance (including non-linearities). The rest can be added later.

No comments:

Post a Comment