From 7580069deaf0455b9dc0fe4a576b5ad5cbd8120b Mon Sep 17 00:00:00 2001 From: Adam Moss Date: Wed, 7 Jan 2015 11:58:02 +0000 Subject: [PATCH] Audio: Fuller subwoofer processing for software 5.1 decode Code was only using front-left and front-right to calculate bass, but HRTF code - which this was once based on - uses all five channels and this sounds fuller. --- Source/Core/AudioCommon/DPL2Decoder.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Core/AudioCommon/DPL2Decoder.cpp b/Source/Core/AudioCommon/DPL2Decoder.cpp index df1bb76fd5..93a041d136 100644 --- a/Source/Core/AudioCommon/DPL2Decoder.cpp +++ b/Source/Core/AudioCommon/DPL2Decoder.cpp @@ -361,7 +361,7 @@ void DPL2Decode(float *samples, int numsamples, float *out) out[cur + 0] = lf[k]; out[cur + 1] = rf[k]; out[cur + 2] = cf[k]; - LFE_buf[lfe_pos] = (out[cur + 0] + out[cur + 1]) / 2; + LFE_buf[lfe_pos] = (lf[k] + rf[k] + 2.0 * cf[k] + lr[k] + rr[k]) / 2.0; out[cur + 3] = FIRFilter(LFE_buf, lfe_pos, len125, len125, filter_coefs_lfe); lfe_pos++; if (lfe_pos == len125)