Echo VST Plugin
By John Orth
Implementation
This plugin
was written using Visual Studio 2005 and the Steinberg 2.4 SDK. It relies heavily on the AGapper
example by Rick Strom and the aGain example provided
with the SDK.
The plugin
uses 2 circular buffers, left and right channels, to implement an echo effect. The actual size of the buffer is (sample
rate), but only the first (delay) positions will be used. Example below is for single channel only.
1.
First, the program
calculates the number of samples to delay.
This is (sample rate) * (delay in milliseconds) / 1000.
2.
Read input into
x.
3.
Read echo from
buffer into y.
4.
Add echo to input
(x + y) and send to output.
5.
Store output
times feedback, the new echo, into the buffer.
6.
Increment the
pointers into the buffer, unless they equal delay, then
set them to zero.
User Manual
Install
the dll file (Echo.dll) into Ableton
or whatever audio editing program you are using. I found a good free (this is always
important) audio editor to be Wavosaur. It is VST compliant, but will not provide a
GUI for non GUI VST’s like Ableton
will. If you are using Wavosaur just copy the dll to the
plugins folder, then scan the VST’s. This link http://sonictransfer.com/using-vst-plug-ins-in-ableton-live.shtml
explains how to add plugins to Ableton.
To
use the echo VST, just set the sliders to the feedback percent and delay time
in milliseconds you wish. Be aware that
choosing a feedback value too high can cause clipping. Less than 50% is best. Even at this level the output is doubled ( 1 + ½ + ¼ …)
If
using Ableton, playing the selected file once the VST
has been selected should include the echo effect. If you are using Wavosaur
click ‘apply’ and the VST will be applied to the selected sound file. Playing will then demonstrate the echo.
Echo VST
Downloads
An example of the echo can be found by comparing thundersticks.wav and thundersticksecho.wav.
The first file is a short clip of me banging thundersticks
together at about two second intervals. Thundersticksecho.wav is the same file with echo
added using feedback 50% and delay 200 milliseconds. The dll
can be downloaded by clicking on Echo.dll.