Effect Synthesizer Component

Made by: Alex Kambeitz

Functions

The effects component of our Synthie project is designed to add a layer of processing to
each audio stream being produces. Every instrument had an associated instance of the effects
component linked to it , and by passing each generated sample through the effects layer as it
is being generated, the sound can be modified while the music is streaming out of the program.

The effects working currently are the Chorus effect and the Flange effect, both built to
add a small delay of different amounts to produce varying levels of echo that give the sounds
created more depth than a simple tone produced by a machine, as well the sinusoidal ring
effect which modifies the amplidtude of the output sounds according to a sine wave pattern,
giving the note a faint ringing as it is produced.

Within the XML document, each individual note for every instrument can be optionally
extended with two new attributes: send and wet. The send attribiute takes a value between 0 and 4,
indicative of which effect to apply (None, Chorus, Flange, None/Under Construction, and Ring).
Multiple sends can be applied at once, appearing as '123' or '24' to add all listed effects over
top of one another. The wet attribute denotes what percentage of the sound created by the instrument
with a value between 0 and 1. A wet value of 0 produces a dry sound with no effects applied,
while a value of 1 is fully applied. A wet value of 0.7, for example, would mix 70% of an effected
sample with 30% of the original sound, to produce varying levels of effects per instrument, all
while streaming live from the Synthie program at run-time.

Download the Effects score