summaryrefslogtreecommitdiff
path: root/libavresample/audio_mix.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavresample/audio_mix.c')
-rw-r--r--libavresample/audio_mix.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/libavresample/audio_mix.c b/libavresample/audio_mix.c
index 2c2a356844..e8ab2e3ee7 100644
--- a/libavresample/audio_mix.c
+++ b/libavresample/audio_mix.c
@@ -314,7 +314,15 @@ int ff_audio_mix_init(AVAudioResampleContext *avr)
}
/* build matrix if the user did not already set one */
- if (!avr->am->matrix) {
+ if (avr->am->matrix) {
+ if (avr->am->coeff_type != avr->mix_coeff_type ||
+ avr->am->in_layout != avr->in_channel_layout ||
+ avr->am->out_layout != avr->out_channel_layout) {
+ av_log(avr, AV_LOG_ERROR,
+ "Custom matrix does not match current parameters\n");
+ return AVERROR(EINVAL);
+ }
+ } else {
int i, j;
char in_layout_name[128];
char out_layout_name[128];