summaryrefslogtreecommitdiff
path: root/libavresample/audio_mix.c
diff options
context:
space:
mode:
authorJustin Ruggles <justin.ruggles@gmail.com>2012-12-13 21:18:15 -0500
committerJustin Ruggles <justin.ruggles@gmail.com>2012-12-15 12:26:15 -0500
commit230acdde264e694086a05cd439dc02445b9ad26a (patch)
tree3df45a0565e9c5de4439429f2c6e2125c5347cc4 /libavresample/audio_mix.c
parentf33b5ba63eee96c9d1c7f0e568169cb0c3694238 (diff)
downloadffmpeg-230acdde264e694086a05cd439dc02445b9ad26a.tar.gz
lavr: move AudioMix struct definition to audio_mix.c
Diffstat (limited to 'libavresample/audio_mix.c')
-rw-r--r--libavresample/audio_mix.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/libavresample/audio_mix.c b/libavresample/audio_mix.c
index 3b39ceeca5..62f8bd6c6d 100644
--- a/libavresample/audio_mix.c
+++ b/libavresample/audio_mix.c
@@ -30,6 +30,29 @@
static const char *coeff_type_names[] = { "q8", "q15", "flt" };
+struct AudioMix {
+ AVAudioResampleContext *avr;
+ enum AVSampleFormat fmt;
+ enum AVMixCoeffType coeff_type;
+ uint64_t in_layout;
+ uint64_t out_layout;
+ int in_channels;
+ int out_channels;
+
+ int ptr_align;
+ int samples_align;
+ int has_optimized_func;
+ const char *func_descr;
+ const char *func_descr_generic;
+ mix_func *mix;
+ mix_func *mix_generic;
+
+ int16_t *matrix_q8[AVRESAMPLE_MAX_CHANNELS];
+ int32_t *matrix_q15[AVRESAMPLE_MAX_CHANNELS];
+ float *matrix_flt[AVRESAMPLE_MAX_CHANNELS];
+ void **matrix;
+};
+
void ff_audio_mix_set_func(AudioMix *am, enum AVSampleFormat fmt,
enum AVMixCoeffType coeff_type, int in_channels,
int out_channels, int ptr_align, int samples_align,