21#ifndef AUBIO_TIMESTRETCH_H
22#define AUBIO_TIMESTRETCH_H
struct _aubio_timestretch_t aubio_timestretch_t
time stretching object
aubio_timestretch_t * new_aubio_timestretch(const char_t *method, smpl_t stretch, uint_t hop_size, uint_t samplerate)
creation of the time stretching object
sint_t aubio_timestretch_push(aubio_timestretch_t *o, fvec_t *in, uint_t length)
push length samples from in to time stretching object
sint_t aubio_timestretch_get_available(aubio_timestretch_t *o)
get number of currently available samples from time stretching object
uint_t aubio_timestretch_get_samplerate(aubio_timestretch_t *o)
get the samplerate of the time stretching object
uint_t aubio_timestretch_reset(aubio_timestretch_t *o)
reset the time stretching object
uint_t aubio_timestretch_set_transpose(aubio_timestretch_t *o, smpl_t transpose)
set the transposition of the time stretching object, in semitones
void aubio_timestretch_do(aubio_timestretch_t *o, fvec_t *out, uint_t *read)
execute time stretching on an input signal frame
uint_t aubio_timestretch_get_latency(aubio_timestretch_t *o)
get the latency of the time stretching object, in samples
smpl_t aubio_timestretch_get_stretch(aubio_timestretch_t *o)
get the transposition of the time stretching object, in semitones
smpl_t aubio_timestretch_get_pitchscale(aubio_timestretch_t *o)
get the pitchscale of the time stretching object
smpl_t aubio_timestretch_get_transpose(aubio_timestretch_t *o)
get the transposition of the time stretching object, in semitones
uint_t aubio_timestretch_set_pitchscale(aubio_timestretch_t *o, smpl_t pitchscale)
set the pitch scale of the time stretching object
uint_t aubio_timestretch_set_stretch(aubio_timestretch_t *o, smpl_t stretch)
set the stretching ratio of the time stretching object
void del_aubio_timestretch(aubio_timestretch_t *o)
deletion of the time stretching object
unsigned int uint_t
unsigned integer
float smpl_t
short sample format (32 or 64 bits)