In reply to @bostonboston "Is each output represented": Wdym? The output module calls synthesize() in Amplifier Amplifier calls synthesize() in Mixer Mixer calls synthesize() in the first oscillator, the first oscillator returns the result Mixer calls synthesize() in the second oscillator. the second oscillator returns the result Mixer adds those 2 numbers together and returns the result Amplifier multiplies the result by a given number to make it bigger or smaller and returns the result Output just returns the result to the wave buffer?