20 #ifndef __JackResampler__
21 #define __JackResampler__
25 #include "JackError.h"
30 #define DEFAULT_RB_SIZE 32768
31 #define DEFAULT_ADAPTATIVE_SIZE 2048
33 inline float Range(
float min,
float max,
float val)
35 return (val < min) ? min : ((val > max) ? max : val);
49 unsigned int fRingBufferSize;
56 virtual void Reset(
unsigned int new_size);
58 virtual unsigned int ReadResample(jack_default_audio_sample_t* buffer,
unsigned int frames);
59 virtual unsigned int WriteResample(jack_default_audio_sample_t* buffer,
unsigned int frames);
61 virtual unsigned int Read(jack_default_audio_sample_t* buffer,
unsigned int frames);
62 virtual unsigned int Write(jack_default_audio_sample_t* buffer,
unsigned int frames);
64 virtual unsigned int Read(
void* buffer,
unsigned int bytes);
65 virtual unsigned int Write(
void* buffer,
unsigned int bytes);
67 virtual unsigned int ReadSpace();
68 virtual unsigned int WriteSpace();
70 unsigned int GetError()
75 void SetRatio(
double ratio)
77 fRatio = Range(0.25, 4.0, ratio);