39 typedef struct SRC_STATE_tag SRC_STATE ;
    43 {       
float   *data_in, *data_out ;
    45         long    input_frames, output_frames ;
    46         long    input_frames_used, output_frames_gen ;
    68 typedef long (*src_callback_t) (
void *cb_data, 
float **data) ;
    76 SRC_STATE* src_new (
int converter_type, 
int channels, 
int *error) ;
    86 SRC_STATE* src_callback_new (src_callback_t func, 
int converter_type, 
int channels,
    87                                 int *error, 
void* cb_data) ;
    94 SRC_STATE* src_delete (SRC_STATE *state) ;
   101 int src_process (SRC_STATE *state, 
SRC_DATA *data) ;
   107 long src_callback_read (SRC_STATE *state, 
double src_ratio, 
long frames, 
float *data) ;
   116 int src_simple (
SRC_DATA *data, 
int converter_type, 
int channels) ;
   127 const char *src_get_name (
int converter_type) ;
   128 const char *src_get_description (
int converter_type) ;
   129 const char *src_get_version (
void) ;
   137 int src_set_ratio (SRC_STATE *state, 
double new_ratio) ;
   146 int src_reset (SRC_STATE *state) ;
   153 int src_is_valid_ratio (
double ratio) ;
   159 int src_error (SRC_STATE *state) ;
   164 const char* src_strerror (
int error) ;
   173         SRC_SINC_BEST_QUALITY           = 0,
   174         SRC_SINC_MEDIUM_QUALITY         = 1,
   175         SRC_SINC_FASTEST                        = 2,
   176         SRC_ZERO_ORDER_HOLD                     = 3,
   185 void src_short_to_float_array (
const short *in, 
float *out, 
int len) ;
   186 void src_float_to_short_array (
const float *in, 
short *out, 
int len) ;
   188 void src_int_to_float_array (
const int *in, 
float *out, 
int len) ;
   189 void src_float_to_int_array (
const float *in, 
int *out, 
int len) ;