From 6d5bf67f0475a54282b755ae21add252efc640b1 Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Wed, 2 May 2012 00:25:57 +0200 Subject: swr: add lfe_mix_level Signed-off-by: Michael Niedermayer --- libswresample/rematrix.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'libswresample/rematrix.c') diff --git a/libswresample/rematrix.c b/libswresample/rematrix.c index 7728445407..1eeb7173b6 100644 --- a/libswresample/rematrix.c +++ b/libswresample/rematrix.c @@ -216,6 +216,17 @@ static int auto_matrix(SwrContext *s) }else av_assert0(0); } + /* mix LFE into front left/right or center */ + if (unaccounted & AV_CH_LOW_FREQUENCY) { + if (s->out_ch_layout & AV_CH_FRONT_CENTER) { + matrix[FRONT_CENTER][LOW_FREQUENCY] += s->lfe_mix_level; + } else if (s->out_ch_layout & AV_CH_FRONT_LEFT) { + matrix[FRONT_LEFT ][LOW_FREQUENCY] += s->lfe_mix_level * M_SQRT1_2; + matrix[FRONT_RIGHT][LOW_FREQUENCY] += s->lfe_mix_level * M_SQRT1_2; + } else + av_assert0(0); + } + for(out_i=i=0; i<64; i++){ double sum=0; int in_i=0; -- cgit v1.2.3