]> code.delx.au - pulseaudio/blobdiff - src/pulsecore/resampler.h
core: make sure win32 sockets remain blocking
[pulseaudio] / src / pulsecore / resampler.h
index 742de6aff6abfbaa0238bd96a89b91d8eb94d80b..058a8002b19d304b91d60ac7d099583d0871b954 100644 (file)
 #include <pulsecore/memchunk.h>
 
 typedef struct pa_resampler pa_resampler;
+typedef struct pa_resampler_impl pa_resampler_impl;
+
+struct pa_resampler_impl {
+    void (*free)(pa_resampler *r);
+    void (*update_rates)(pa_resampler *r);
+
+    /* Returns the number of leftover frames in the input buffer. */
+    unsigned (*resample)(pa_resampler *r, const pa_memchunk *in, unsigned in_n_frames, pa_memchunk *out, unsigned *out_n_frames);
+
+    void (*reset)(pa_resampler *r);
+    void *data;
+};
 
 typedef enum pa_resample_method {
     PA_RESAMPLER_INVALID                 = -1,