Skip to content

Instantly share code, notes, and snippets.

@Hiradur
Hiradur / setup_ambisonics_on_gpu.sh
Last active May 29, 2022 17:12
Guide for setting up an Ambisonics playback system on GNU/Linux using consumer equipment such as a GPU and an AV-receiver
#!/bin/sh
# Setting up an Ambisonics listening rig using consumer hardware
# This guide was tested on Ubuntu Linux using an Nvidia GPU, a consumer-grade 5.1 av-receiver and audio transmission via HDMI.
# install necessary software
sudo apt install qjackctl ambdec mpv
# launch Qjackctl and start JACK on a sound card that is not the GPU
qjackctl
@Hiradur
Hiradur / ambisonics_setup_guide_for_games.md
Last active February 20, 2024 17:52
Guide for achieving speaker-based immersive (3D) audio in hundreds of PC games using OpenAL Soft and Ambisonics

Speaker-based immersive (3D) audio in hundreds of PC games via Ambisonics using OpenAL Soft

Introduction

It's possible to achieve speaker-based immersive (3D) audio in many PC games that don't seem to be supported by current proprietary object-based audio technologies using some tinkering and a technology called Ambisonics. Since Ambisonics seems to have gone largely unnoticed in the consumer-space so far, I will first explain what it is, what its benefits are, what content is available right now, and how to set it up on a PC for gaming.

Theoretical Background

What is Ambisonics?

Many should be familiar with multi-channel audio based on discrete speaker feeds or the more recent object-based audio. Ambisonics uses neither of these approaches. Instead, it describes a continous full-sphere sound field around a single point in space. A so called Ambisonics decoder uses this information in combination with a decoding matrix, which is specific to a given speaker layout, to reproduce this sound field a