Real-Time VST Effects Processor By: Henry Chen, Derrick Louie, Terri Huang Advisor: Dr. Sophocles J. Orfanidis

Project Background DSP Block Diagram Graphical User Interface -Address the demands of traveling musicians

(guitarists) by giving them near-studio recording experience through user-friendly guitar effects

--Ensure device compatibility on any Windows device (32-bit or 64-bit) without utilizing 32-bit ADC external signal processing devices 44100Hz VST 448 Sample Buffer -Develop optimization skills and minimize memory-allocation problems faced in the industry Buffer -Accumulate C++ and Matlab/Simullink JUCE Gain/Equalizer programming experience Plug-In (Master Volume) Wrapper Design Abstract Guitar Effect(s) Frequency Responses

Fuzz Distortion Fuzz Distortion Frequency Response By utilizing the VST-Host, we can interact 0 with the soundcard by establishing a signal Saturates Input -Non-Linear Effect(s) -10 sampling rate and an audio buffer size. For •Fuzz- Saturates input signal before -20 the accuracy purpose of our project, we going through an amplifier. For ease -30 -40 utilized the smallest sampling rate possible of control and usage, this method was (dB) at 44100Hz. After undergoing testing, we selected over other distortion effects. -50 had concluded that the buffer size of 448 -60

-70 samples worked best with most computers. - Effect(s) Processed Signal Original Signal -80 The bulk of the Discrete –Time Signal Echo •Echo- Copies original buffer, delays 0 10 20 30 40 50 60 70 80 90 100 (Hz)

Processing is carried out by JUCE wrapper, Flanger Frequency Response by a variable, and output with the -22 in which we programmed our guitar effects original buffer -24 and Audio GUI. The guitar effects loop is -26 then put together as a “VST plug-in” or •Reverb- Utilizes four separate pointers on the delay buffer, each delayed by at -28 signal block (.dll file) with the VST Plug-in -30 most 100ms, and output with the (dB) host, which connects the computer input Reverb -32 original buffer to create wall-echo (Guitar) to the effects, and from the effects -34 to the output (Speakers). effect -36 Processed Signal Original Signal -38 -Modulation Effect(s) 0 5 10 15 20 25 30 (Hz) Tremolo Frequency Response Future Development •Tremolo- Continuous Input -60 Flanger Amplitude Modulation, producing To further improve the flexibility of the effects, a -65 vibrato sound parametric equalizer is needed to filter out and cancel out specific sound frequencies. This can DAC •Flanger- Continuous Phase -70 allow the inclusion of other distortion effects Modulation on delay buffer, (dB) -75 such as Overdrive, which requires a pre-amp to producing jet-stream sound effect boost specific frequencies. Furthermore to •ETC- Custom Phase Modulation -80 improve memory usage, the delay-based effects Processed Signal Original Signal will be combined as one effect, exclusively Effect based on Flanger and Reverb, -85 0 1 2 3 4 5 6 using pointers to carry out the different sounds. producing bagpipe sound (Hz)

VST is a trademark of Steinberg GmbH