diff --git a/libavresample/resample.c b/libavresample/resample.c
index 5fd6b90052311d02e9a3f00ff6a0d633f1f2fe93..d0585ff16d4e07bdb59189d7ab8e2f5d591e2a35 100644
--- a/libavresample/resample.c
+++ b/libavresample/resample.c
@@ -26,35 +26,6 @@
 #include "resample.h"
 #include "audio_data.h"
 
-struct ResampleContext {
-    AVAudioResampleContext *avr;
-    AudioData *buffer;
-    uint8_t *filter_bank;
-    int filter_length;
-    int ideal_dst_incr;
-    int dst_incr;
-    unsigned int index;
-    int frac;
-    int src_incr;
-    int compensation_distance;
-    int phase_shift;
-    int phase_mask;
-    int linear;
-    enum AVResampleFilterType filter_type;
-    int kaiser_beta;
-    void (*set_filter)(void *filter, double *tab, int phase, int tap_count);
-    void (*resample_one)(struct ResampleContext *c, void *dst0,
-                         int dst_index, const void *src0,
-                         unsigned int index, int frac);
-    void (*resample_nearest)(void *dst0, int dst_index,
-                             const void *src0, unsigned int index);
-    int padding_size;
-    int initial_padding_filled;
-    int initial_padding_samples;
-    int final_padding_filled;
-    int final_padding_samples;
-};
-
 
 /* double template */
 #define CONFIG_RESAMPLE_DBL
diff --git a/libavresample/resample.h b/libavresample/resample.h
index 4544dab92f1855a50ea320ddb416835e448a751e..7e02cb1285d087991c3758506a63b3828029ef1b 100644
--- a/libavresample/resample.h
+++ b/libavresample/resample.h
@@ -25,6 +25,35 @@
 #include "internal.h"
 #include "audio_data.h"
 
+struct ResampleContext {
+    AVAudioResampleContext *avr;
+    AudioData *buffer;
+    uint8_t *filter_bank;
+    int filter_length;
+    int ideal_dst_incr;
+    int dst_incr;
+    unsigned int index;
+    int frac;
+    int src_incr;
+    int compensation_distance;
+    int phase_shift;
+    int phase_mask;
+    int linear;
+    enum AVResampleFilterType filter_type;
+    int kaiser_beta;
+    void (*set_filter)(void *filter, double *tab, int phase, int tap_count);
+    void (*resample_one)(struct ResampleContext *c, void *dst0,
+                         int dst_index, const void *src0,
+                         unsigned int index, int frac);
+    void (*resample_nearest)(void *dst0, int dst_index,
+                             const void *src0, unsigned int index);
+    int padding_size;
+    int initial_padding_filled;
+    int initial_padding_samples;
+    int final_padding_filled;
+    int final_padding_samples;
+};
+
 /**
  * Allocate and initialize a ResampleContext.
  *