SoundTouch is a port of the SoundTouch sound processing library. The library allows real-time processing of audio in Flash 10. It includes filters that perform time compression/expansion and rate transposition. In tandem, these filters can perform pitch-shifting.
The original C++ library includes several features that have not yet been implemented in the port, including a FIR filter, which can be used to prevent aliasing during rate transposition.
var source:Sound = …; var output:Sound = new Sound(); var soundTouch:SoundTouch = new SoundTouch(); soundTouch.pitchSemitones = -6; var filter:SimpleFilter = new SimpleFilter(sound, soundTouch); output.addEventListener(SampleDataEvent.SAMPLE_DATA, filter.handleSampleData); output.play();