25#ifndef RUBBERBAND_C_API_H
26#define RUBBERBAND_C_API_H
32#define RUBBERBAND_VERSION "3.3.0"
33#define RUBBERBAND_API_MAJOR_VERSION 2
34#define RUBBERBAND_API_MINOR_VERSION 8
38#define RB_EXTERN extern __declspec(dllexport)
40#define RB_EXTERN extern
102struct RubberBandState_;
106 unsigned int channels,
108 double initialTimeRatio,
109 double initialPitchScale);
RubberBandOption
This is a C-linkage interface to the Rubber Band time stretcher.
@ RubberBandOptionChannelsTogether
@ RubberBandOptionThreadingAuto
@ RubberBandOptionThreadingNever
@ RubberBandOptionPitchHighConsistency
@ RubberBandOptionWindowStandard
@ RubberBandOptionDetectorSoft
@ RubberBandOptionPitchHighSpeed
@ RubberBandOptionDetectorPercussive
@ RubberBandOptionPitchHighQuality
@ RubberBandOptionEngineFaster
@ RubberBandOptionProcessRealTime
@ RubberBandOptionFormantPreserved
@ RubberBandOptionStretchPrecise
@ RubberBandOptionFormantShifted
@ RubberBandOptionDetectorCompound
@ RubberBandOptionSmoothingOn
@ RubberBandOptionPhaseLaminar
@ RubberBandOptionPhaseIndependent
@ RubberBandOptionWindowLong
@ RubberBandOptionSmoothingOff
@ RubberBandOptionProcessOffline
@ RubberBandOptionStretchElastic
@ RubberBandOptionThreadingAlways
@ RubberBandOptionTransientsCrisp
@ RubberBandOptionTransientsMixed
@ RubberBandOptionWindowShort
@ RubberBandOptionEngineFiner
@ RubberBandOptionChannelsApart
@ RubberBandOptionTransientsSmooth
struct RubberBandState_ * RubberBandState
RB_EXTERN unsigned int rubberband_get_preferred_start_pad(const RubberBandState)
RB_EXTERN void rubberband_reset(RubberBandState)
RB_EXTERN void rubberband_set_pitch_option(RubberBandState, RubberBandOptions options)
RB_EXTERN double rubberband_get_pitch_scale(const RubberBandState)
RB_EXTERN void rubberband_study(RubberBandState, const float *const *input, unsigned int samples, int final)
RB_EXTERN void rubberband_set_transients_option(RubberBandState, RubberBandOptions options)
RB_EXTERN void rubberband_set_expected_input_duration(RubberBandState, unsigned int samples)
RB_EXTERN unsigned int rubberband_get_latency(const RubberBandState)
RB_EXTERN int rubberband_available(const RubberBandState)
RB_EXTERN double rubberband_get_formant_scale(const RubberBandState)
RB_EXTERN void rubberband_set_default_debug_level(int level)
RB_EXTERN double rubberband_get_time_ratio(const RubberBandState)
RB_EXTERN unsigned int rubberband_get_process_size_limit(RubberBandState)
RB_EXTERN void rubberband_set_phase_option(RubberBandState, RubberBandOptions options)
RB_EXTERN void rubberband_set_formant_option(RubberBandState, RubberBandOptions options)
RB_EXTERN void rubberband_set_formant_scale(RubberBandState, double scale)
RB_EXTERN void rubberband_set_debug_level(RubberBandState, int level)
RB_EXTERN RubberBandState rubberband_new(unsigned int sampleRate, unsigned int channels, RubberBandOptions options, double initialTimeRatio, double initialPitchScale)
RB_EXTERN void rubberband_delete(RubberBandState)
RB_EXTERN void rubberband_calculate_stretch(RubberBandState)
RB_EXTERN void rubberband_set_max_process_size(RubberBandState, unsigned int samples)
RB_EXTERN void rubberband_set_time_ratio(RubberBandState, double ratio)
RB_EXTERN void rubberband_set_detector_option(RubberBandState, RubberBandOptions options)
RB_EXTERN void rubberband_set_key_frame_map(RubberBandState, unsigned int keyframecount, unsigned int *from, unsigned int *to)
RB_EXTERN unsigned int rubberband_get_start_delay(const RubberBandState)
RB_EXTERN void rubberband_process(RubberBandState, const float *const *input, unsigned int samples, int final)
RB_EXTERN unsigned int rubberband_retrieve(const RubberBandState, float *const *output, unsigned int samples)
RB_EXTERN int rubberband_get_engine_version(RubberBandState)
RB_EXTERN unsigned int rubberband_get_channel_count(const RubberBandState)
RB_EXTERN unsigned int rubberband_get_samples_required(const RubberBandState)
RB_EXTERN void rubberband_set_pitch_scale(RubberBandState, double scale)