aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/bformatdec.c
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2018-02-13 03:03:26 -0800
committerChris Robinson <[email protected]>2018-02-13 03:03:26 -0800
commit59768674f1764706a2e59c4c314f80eca3b5de9d (patch)
treebdff2f2d959bfe6e1de6f6b625748997e7f8d42d /Alc/bformatdec.c
parent2cb49e51a0d270f2a650d0969a5370ac50125c3f (diff)
Use an alternate ambisonic HRTF decode layout
Similar to the previous, but includes the top and bottom HRTF responses. The higher-order decode (for the "basic" HRTF output) also now uses 2H1P mixed- order instead of 2H1V, which seems more stable.
Diffstat (limited to 'Alc/bformatdec.c')
-rw-r--r--Alc/bformatdec.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/Alc/bformatdec.c b/Alc/bformatdec.c
index bfd40b14..03ea865c 100644
--- a/Alc/bformatdec.c
+++ b/Alc/bformatdec.c
@@ -518,7 +518,7 @@ void ambiup_free(struct AmbiUpsampler **ambiup)
}
}
-void ambiup_reset(struct AmbiUpsampler *ambiup, const ALCdevice *device)
+void ambiup_reset(struct AmbiUpsampler *ambiup, const ALCdevice *device, ALfloat w_scale, ALfloat xyz_scale)
{
ALfloat ratio;
ALsizei i;
@@ -560,11 +560,6 @@ void ambiup_reset(struct AmbiUpsampler *ambiup, const ALCdevice *device)
}
else
{
- /* Assumes full 3D/periphonic on the input and output mixes! */
- ALfloat w_scale = (device->Dry.NumChannels > 9) ? W_SCALE_3H3P :
- (device->Dry.NumChannels > 4) ? W_SCALE_2H2P : 1.0f;
- ALfloat xyz_scale = (device->Dry.NumChannels > 9) ? XYZ_SCALE_3H3P :
- (device->Dry.NumChannels > 4) ? XYZ_SCALE_2H2P : 1.0f;
for(i = 0;i < 4;i++)
{
ALsizei index = GetChannelForACN(device->Dry, i);