Previous: Exercise_01_HOA_b_format
Next: Exercise_03_HOA_decoding_for_monitoring
In order to correctly reconstruct a sound field from the channels of the B-format, it is important to know about standard normalisation methods for the spherical harmonic components, as well as channel ordering conventions. Two main channel ordering conventions exist:
- FuMa
- The original Furse-Malham higher-order format, an extension of traditional second order B-format up to third order (16 channels). See: https://en.wikipedia.org/wiki/Ambisonic_data_exchange_formats#Furse-Malham. FuMa channel ordering comes with maxN normalization. See: https://en.wikipedia.org/wiki/Ambisonic_data_exchange_formats#maxN. The FuMa format has been widely used and is still in use but is increasingly replaced by:
- ACN
- The Ambisonic Channel Number (ACN) ordering has reached wide consensus for future higher-order systems. See: https://en.wikipedia.org/wiki/Ambisonic_data_exchange_formats#ACN, and compare with the image from Exercise_01_HOA_b_format.
Channel numbers and names up to order 3:
order | ACN channel # | FuMa as ACN channel # | FuMa name |
0 | 0 | 0 | W |
| | | |
1 | 1 | 2 | Y |
1 | 2 | 3 | Z |
1 | 3 | 1 | X |
| | | |
2 | 4 | 8 | V |
2 | 5 | 6 | T |
2 | 6 | 4 | R |
2 | 7 | 5 | S |
2 | 8 | 7 | U |
| | | |
3 | 9 | 15 | Q |
3 | 10 | 13 | O |
3 | 11 | 11 | M |
3 | 12 | 9 | K |
3 | 13 | 10 | L |
3 | 14 | 12 | N |
3 | 15 | 14 | P |
B-formats above order 3 typically follow the ACN convention.
The normalization options for ACN are:
- N3D
- In the full three-D normalisation, all signals are orthonormal. This has advantages for transformations of the B-format, which rely on its orthonormality (XYZ rotations, beamforming, etc. ). See: https://en.wikipedia.org/wiki/Ambisonic_data_exchange_formats#N3D.
- SN3D
- The Schmidt semi-normalisation has the advantage that none of the higher order signals exceeds the level of the W channel (ACN 0), which is useful when monitoring levels in recording situations. See: https://en.wikipedia.org/wiki/Ambisonic_data_exchange_formats#SN3D.
NOTE: This library uses internally the ACN channel ordering with N3D normalization. In order to transform and reconstruct an ambisonics soundfield correctly, you need to know what convention you are working with. The HOAConvert class is versatile and mostly meant to convert b-format recordings into ACN N3D for b-format transformations of this library and to convert back to other conventions when rendering and saving sounds for other production contexts.
The examples below show the difference of the three b-format conventions with respect to channel ordering and normalization the supported combinations are:
In case you have not done so yet: let's start the sound server, which we configure first to get more audio buses and 36 output channels.
Start the oscilloscope showing all the channels for the selected order of the b-format.
Let's use a proxy for the creation of a B-format signal:
Change between normalization within ACN and compare the amplitudes of the channels in the oscilloscope.
Previous: Exercise_01_HOA_b_format
Next: Exercise_03_HOA_decoding_for_monitoring