soundtouch
A safe utility wrapper around the SoundTouch C++ audio library. The API is very similar to the original C++ API. For dynamic and static linking configuration see soundtouch-ffi's linking behavior.
Most of the documentation is copied from the SoundTouch repository.
High Level Example
use ;
let mut soundtouch = new;
soundtouch
.set_channels
.set_sample_rate
.set_tempo
// Recommended setting to speed up processing
.set_setting;
// use actual audio samples here
let samples = vec!;
let output_samples = soundtouch.generate_audio;
// do something with output_samples
Low Level Example
use ;
let mut soundtouch = new;
soundtouch
.set_channels
.set_sample_rate
.set_tempo
// Recommended setting to speed up processing
.set_setting;
// use actual audio samples here
let mut samples = vec!;
const BUF_SIZE: usize = 6720;
let mut new_samples: = ;
let mut output_samples: = Vecwith_capacity;
soundtouch.put_samples;
let mut n_samples = 1;
while n_samples != 0
soundtouch.flush;
// do something with output_samples
Both examples should produce the same output.