In the Sample Modules folder in the Voltage Developer Kit, you’ll find several useful demo projects that will show you how to use various aspects of the software.
LFO Demo Module - This simple demo module shows how to use Voltage’s LFO class to generate a square wave and triangle wave LFO signal. The module demonstrates how to light an LED and how to use a knob to change the frequency of an oscillator.
Filter Module - Demonstrates how to use the SaturatedAnalogFilter class to filter audio. Features adjustable cutoff and resonance, and both a lowpass and highpass output. This module also includes a modulation input with modulation amount knob, and demonstrates how to read a CV signal and use it as a modulation source.
Limiter Module - This demo shows how to incorporate additional class files into a Voltage Module project. The audio limiter DSP is contained in a class called SignalLimiter in the file SignalLimiter.java, and has been added to the Addition Java Files list in the module properties. The module features an adjustable limit level and an optional volume boost button.
GUI Update Timer - This less-than-practical example module demonstrates how to use a GUI timer to update graphical elements of a module. An LFO running at 1 Hz is used to generate values from 0 to 1.0. A GUI timer fires every 100 milliseconds and sends a GUI_Update_Timer message to the module’s Notify function. When this message is received, we set all these controls to the LFO’s current value.
VU Meter - A simple demo, illustrating how to use a GUI timer to update an Analog VU Meter. We store the highest amplitude signal that comes into the input and use its value to update the meter when the GUI timer fires.
Oscilloscope - This project demonstrates how to use a Canvas object to draw custom artwork from Java. Waveform data is stored in a buffer, and a GUI timer is used to draw the waveform onto the Canvas control.
Sound File Player - This project demonstrates how to binary embed resources into a module - in this case, an MP3 file - and how to use the VoltageSound class to decode the MP3 to access the raw samples. When the module is switched to On, it will decode the MP3 in a continuous loop. The VoltageSound class ensures the audio is decoded to stereo audio at Voltage’s internal sample rate.