aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/panning.c
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2016-03-22 17:52:20 -0700
committerChris Robinson <[email protected]>2016-03-22 17:52:20 -0700
commit713ac9e6790ac5bb9491a893c9b2ee0a693878b7 (patch)
treedfba2a437adab49ddea4125e936f5866511e4baa /Alc/panning.c
parent0a03596af11570f5dba473c93c67c59d285d7bc2 (diff)
Add a specific output for first-order sources
Diffstat (limited to 'Alc/panning.c')
-rw-r--r--Alc/panning.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/Alc/panning.c b/Alc/panning.c
index 16c84b6d..401d29d6 100644
--- a/Alc/panning.c
+++ b/Alc/panning.c
@@ -646,6 +646,16 @@ ALvoid aluInitPanning(ALCdevice *device)
TRACE("Enabling %s-band ambisonic decoder\n", (conf.FreqBands==1)?"single":"dual");
bformatdec_reset(device->AmbiDecoder, &conf, count, device->Frequency, speakermap);
ambdec_deinit(&conf);
+
+ if(bformatdec_getOrder(device->AmbiDecoder) >= 2)
+ {
+ memset(device->FOAOut.AmbiCoeffs, 0, sizeof(device->FOAOut.AmbiCoeffs));
+ device->FOAOut.AmbiCoeffs[0][0] = 1.0f;
+ device->FOAOut.AmbiCoeffs[1][1] = 1.0f;
+ device->FOAOut.AmbiCoeffs[2][2] = 1.0f;
+ device->FOAOut.AmbiCoeffs[3][3] = 1.0f;
+ }
+
return;
ambi_fail: