How Surround Sound for Headphones Works (2014)
hajo.me
hajo.me
(but I moved on to speech recognition a few years ago)
We improved the algorithm to allow for more customization and real time repositioning of the virtual speakers by mathematically decomposing the measured impulse data into components. Also, you need higher order approximations to get great bass, but the usual sources (e.g. my website and Wikipedia) only talk about IRs which are linear multiplications in frequency space.
But the most expensive part needed to turn it into a proper professional product was knowing people and paying for access to Hollywood monitoring studios. Because you want cinema sound, not a realistic approximation of your living room ;)
Aureal A3D appears to be a method for determinig acoustic reflection, filtering and delay parameters based on in-game geometry. That means they necessarily enforce a mathematical model of how the sound is to be modified or else there wouldn't be fixed parameters to determine. They then apply that to in-game sound sources. So kind of like when you tell Unreal Engine to add reverb to a large room before streaming the data to real physical speakers.
This is about accurately simulating a 3D speaker array, so the source audio channels already contain potentially multiple objects with all the reflections, filtering and delays baked in. So kind of like converting real speakers to virtual ones.
Oh, (2014). That was a different time -- alsoft had just added HRTF and the technique was less known by then.
Prism Launcher's MC 1.12.2 lwjgl-platform-2.9.4-nightly-20150209 has OpenAL DLLs with metadata dates of 2013/04/07.
Do you think simply repacking the DLLs in this jar and adding an `alsoft.ini` with `hrtf = true` would work? I'll try soon.
Edit: Looks like MC uses a paulscode OpenAL implementation dated 2010/08/24. Doesn't look trivial to replace.
Ultimately I want a 3D environment where I can place a dummy head (the listener), and manipulate sound sources as objects while making them follow programmed trajectories. The best solution I've found so far seems to be Unreal Engine with some plugins, but progress quickly stalls as I'm overwhelmed by all of the technologies.
Honestly, considering how freaking cool this spatial audio can be, I'm amazed that simple creation tools aren't more widely available.
I enjoy listening to 3D ASMR recordings on YouTube but after a while most creators get a bit same-y. It feels like you could generate much more immersive spatial audio experiences, but only a small handful of channels are doing it.
Or combined with a DAW like Cubase/Reaper/Logic, you can record object paths as automation tracks with your mouse using this: https://www.newaudiotechnology.com/products/spatial-audio-de...
https://www.youtube.com/watch?v=WZ0aHFwuCRo
Older versions used the more technically precise term "HRTF":
https://infosys.beckhoff.com/content/1033/cx1020_cx1030_hw/I...
You can think of the AC97 IIR filters like a cut off tailor series expansion of the actually measured causal FIR filter.
Maybe by interpolating on a lot of dynamically recorded impulse responses, that can be done better.