The Ambisonic Decoder Toolbox: Extensions For Partial Coverage Loudspeaker Arrays
The Ambisonic Decoder Toolbox: Extensions For Partial Coverage Loudspeaker Arrays
The Ambisonic Decoder Toolbox: Extensions For Partial Coverage Loudspeaker Arrays
What is Ambisonics?
Extensible, hierarchical system for representing sound
fields
Says how something should sound, rather than specific speaker
signals.
Capture or creation
Microphone arrays
2-D or 3-D
Natural B-format, Tetrahedral, Spherical arrays
Ambisonic Panners
Reproduction
2-D, horizontal or 3-D with height loudspeaker arrays
Any size or shape array of loudspeakers
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
reproduction layout.
The decoders task is to create the best perceptual
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
Designing Decoders
Decoders for regular polygon and polyhedra loudspeaker
However
Room geometry or visual considerations often limit speaker
placement
3-D HOA requires placing more speakers above and below the
listener
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
A useful compromise
Tradeoffs
Once we deviate from regular geometry
we must trade off localization accuracy for uniform loudness
Directions of rE and rV are not the same
Localization degrades outside the area with a high density
of loudspeakers
Gerzon used nonlinear optimization for this
matrices
Hybrid Ambisonic-VBAP
AllRAD (Zotter and Frank)
well behaved
design a decoder
We use the same criteria for these decoders
But
Apply them only to source directions in the covered part of the sphere
Require them be well behaved in other directions
3rd order Hybrid Ambi-VBAP (AllRAD)
50
50
0.8
0
0.7
-50
0.6
Azimuth HdegreesL
-150 -100
-50
50
100
0.5
150
-6
-4
-2
0246
10
4
-50
Elevation HdegreesL
0.9
Elevation HdegreesL
Elevation HdegreesL
10
-2
50
-4
-6
-50
2
Azimuth HdegreesL
-150 -100
-50
50
100
150
-6
-4
-2
0246
-8
Azimuth HdegreesL
-150 -100
-50
50
100
150
-10
-6
-4
-2
0246
11
five rings
Horizontal ring of 8
loudspeakers
2 rings of 6 loudspeakers,
one 50 below horizontal and
one 40 above
1 loudspeaker at each pole
Array is almost regular
Upper 15 used for
hemispherical dome
Full-sphere decoder
described in our LAC2012
paper
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
12
loudspeakers of
CCRMA Listening
Room, 8-6-1
Imaginary speaker
at bottom
Design procedure
detailed in paper
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
13
AllRAD performance rv
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
14
AllRAD performance rE
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
15
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
16
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
17
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
18
19
3rd order spherical Slepian functions for +90 to -30 dome (first 13 used for decoder)
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
20
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
21
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
22
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
23
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
50
50
0.8
0
0.7
-50
0.6
Azimuth HdegreesL
-150 -100
-50
50
100
4
-50
-2
50
-4
-6
-50
2
Azimuth HdegreesL
-150 -100
0.5
150
10
Elevation HdegreesL
Elevation HdegreesL
0.9
-6
-4
-2
0246
-50
50
100
-8
Azimuth HdegreesL
-150 -100
150
-6
-4
-2
0246
-50
50
100
150
-10
-6
-4
-2
0246
50
0.8
0
0.7
-50
0.6
Azimuth HdegreesL
-150 -100
-50
50
100
0.5
150
-6
-4
-2
0246
10
4
-50
Elevation HdegreesL
0.9
Elevation HdegreesL
Elevation HdegreesL
Elevation HdegreesL
24
50
-2
-4
-6
-50
2
Azimuth HdegreesL
-150 -100
-50
50
100
150
-6
-4
-2
0246
-8
Azimuth HdegreesL
-150 -100
-50
50
100
150
-10
-6
-4
-2
0246
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
25
omni
Dome array using upper 15
speakers in CCRMAs
listening room (8-6-1)
Collected
individual speaker IRs
Ambisonically panned IRs at
10 azimuth, 30 elevation
intervals for each decoder
Analyzed horizontal data
250 Hz ITD (rV)
1 to 4 kHz ILD (rE)
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
26
Observations
The measured ITDs were
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
27
different!)
Compact and directionally accurate localization down to horizon
Faded below horizon
SSF decoder sounded brighter and more detailed than AllRAD
reference decoder
1st-order orchestral recording not reproduced well
Most of orchestra is below the horizon
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
28
Decoding Engine
New decoding engine written in FAUST
No inherent limit on order
Dual band, NFC filters, distance compensation,
Toolbox writes out configuration section, appends
implementation
Compiles to LADSPA, LV2, Pd, Supercollider, VST, AU
Can be used independently of toolbox
Drawback: Configuration baked into plugin
Toolbox also writes out configuration files for
Kronlachners ambiX plugin suite
Adriaensens Ambdec
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
29
Implementation
Toolbox runs in MATLAB and GNU Octave
Implements all known channel ordering and normalization
conventions; both mixed-order conventions (HP and HV)
No inherent limit on Ambisonic order
Actively in use by a few beta testers
Mixed results for graphics output in Octave
Moving graphics output code to Python with MayaVi
Interface to IDHOA optimizer
GNU Affero General Public License
Faust decoder engine BSD 3-Clause License
Git repo at https://bitbucket.org/ambidecodertoolbox/adt
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
30
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
31
Thanks!
Fernando Lopez-Lezcano for helping with the listening
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
32
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
33
34
loudspeakers.
35
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany
36
ITU 5.1 is the dominant domestic standard, rear speakers 120 apart.
Heller, Benjamin, The Ambisonic Decoder Toolbox, Linux Audio Conference 2014, ZKM, Karlsruhe, Germany