lsws: duplicate ff_log2_tab
[ffmpeg.git] / libswresample / audioconvert.h
index 6909a05..2e983df 100644 (file)
 
 #include "swresample_internal.h"
 #include "libavutil/cpu.h"
-#include "libavutil/audioconvert.h"
 
-struct AVAudioConvert;
-typedef struct AVAudioConvert AVAudioConvert;
+
+typedef void (conv_func_type)(uint8_t *po, const uint8_t *pi, int is, int os, uint8_t *end);
+typedef void (simd_func_type)(uint8_t **dst, const uint8_t **src, int len);
+
+typedef struct AudioConvert {
+    int channels;
+    int  in_simd_align_mask;
+    int out_simd_align_mask;
+    conv_func_type *conv_f;
+    simd_func_type *simd_f;
+    const int *ch_map;
+    uint8_t silence[8]; ///< silence input sample
+}AudioConvert;
 
 /**
  * Create an audio sample format converter context
@@ -46,16 +56,16 @@ typedef struct AVAudioConvert AVAudioConvert;
  *               if all channels must be selected
  * @return NULL on error
  */
-AVAudioConvert *swr_audio_convert_alloc(enum AVSampleFormat out_fmt,
-                                        enum AVSampleFormat in_fmt,
-                                        int channels, const int *ch_map,
-                                        int flags);
+AudioConvert *swri_audio_convert_alloc(enum AVSampleFormat out_fmt,
+                                       enum AVSampleFormat in_fmt,
+                                       int channels, const int *ch_map,
+                                       int flags);
 
 /**
  * Free audio sample format converter context.
  * and set the pointer to NULL
  */
-void swr_audio_convert_free(AVAudioConvert **ctx);
+void swri_audio_convert_free(AudioConvert **ctx);
 
 /**
  * Convert between audio sample formats
@@ -63,6 +73,6 @@ void swr_audio_convert_free(AVAudioConvert **ctx);
  * @param[in] in array of input buffers for each channel
  * @param len length of audio frame size (measured in samples)
  */
-int swr_audio_convert(AVAudioConvert *ctx, AudioData *out, AudioData *in, int len);
+int swri_audio_convert(AudioConvert *ctx, AudioData *out, AudioData *in, int len);
 
 #endif /* AUDIOCONVERT_H */