Beyond first order, what do the ambix converter, Spatial_Audio_Framework (SPARTA) and IEM Plug-in Suite code define for FuMa support, N3D/SN3D gains and channel order?
Tools disagree on how far FuMa goes, so a higher-order FuMa file converts differently depending on the tool. The ambix converter has real FuMa-to-SN3D gains through 3rd order (W x sqrt 2; 2nd-order 0.866 except the centre 1.0; 3rd-order 0.791/0.745/0.843/1.0). Its table continues to 10th order, but every entry above 3rd order is 1.0 (placeholders, not FuMa definitions). The Spatial Audio Framework (used by SPARTA) supports FuMa at first order only and zeroes higher channels. IEM's plug-in header has only SN3D<->N3D factors (sqrt 3, sqrt 5, ... per order) and no FuMa. ambix converters older than v0.2.6 (April 2016) used a different FuMa W scaling.
Tools disagree on how far FuMa goes, so a higher-order FuMa file converts differently depending on the tool. The ambix converter has real FuMa-to-SN3D gains through 3rd order (W x sqrt 2; 2nd-order 0.866 except the centre 1.0; 3rd-order 0.791/0.745/0.843/1.0). Its table continues to 10th order, but every entry above 3rd order is 1.0 (placeholders, not FuMa definitions). The Spatial Audio Framework (used by SPARTA) supports FuMa at first order only and zeroes higher channels. IEM's plug-in header has only SN3D<->N3D factors (sqrt 3, sqrt 5, ... per order) and no FuMa. ambix converters older than v0.2.6 (April 2016) used a different FuMa W scaling.
Curator qualifications: Code read 2026-10-22; nothing converted or run. Whether any FuMa definition beyond 3rd order exists was not researched; the unity entries are a code observation.
Limitations: Code read 2026-10-22; nothing converted or run.
Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
Structured fields
{
"citations": [
{
"url": "https://github.com/kronihias/ambix/blob/24d2875f2c930b201ae379c9081fafdb5a9f7c44/common/SphericalHarmonic/normalization.h",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/kronihias/ambix/blob/24d2875f2c930b201ae379c9081fafdb5a9f7c44/doc/conversion_schemes.txt",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/leomccormack/Spatial_Audio_Framework/blob/18fd5aba46e20787b51f28f7197a68506c965c07/framework/modules/saf_hoa/saf_hoa.h",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/leomccormack/Spatial_Audio_Framework/blob/18fd5aba46e20787b51f28f7197a68506c965c07/framework/modules/saf_hoa/saf_hoa.c",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/leomccormack/Spatial_Audio_Framework/blob/18fd5aba46e20787b51f28f7197a68506c965c07/examples/include/_common.h",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/kronihias/IEMPluginSuite/blob/39de1dd5883f1bd8d65fe1662487f2470a1d7b55/resources/ambisonicTools.h",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/kronihias/IEMPluginSuite/blob/39de1dd5883f1bd8d65fe1662487f2470a1d7b55/ChangeLog.md",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
},
{
"url": "https://github.com/kronihias/ambix/blob/24d2875f2c930b201ae379c9081fafdb5a9f7c44/README.md",
"note": "ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08)"
}
]
}Evidence claims
- [sourced_fact] Tools disagree on how far FuMa goes, so a higher-order FuMa file converts differently depending on the tool. The ambix converter has real FuMa-to-SN3D gains through 3rd order (W x sqrt 2; 2nd-order 0.866 except the centre 1.0; 3rd-order 0.791/0.745/0.843/1.0). Its table continues to 10th order, but every entry above 3rd order is 1.0 (placeholders, not FuMa definitions). The Spatial Audio Framework (used by SPARTA) supports FuMa at first order only and zeroes higher channels. IEM's plug-in header has only SN3D<->N3D factors (sqrt 3, sqrt 5, ... per order) and no FuMa. ambix converters older than v0.2.6 (April 2016) used a different FuMa W scaling. · locator: ambix common/SphericalHarmonic/normalization.h conv_norm_fuma_sn3d[121]; SAF saf_hoa.h L179-249; SAF saf_hoa.c convertHOANormConvention L90; SAF examples/include/_common.h L61, L75; IEM resources/ambisonicTools.h L93-96; ambix README changelog v0.2.6 (2016-04-08) source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |
Linked records
- cites → https://github.com/kronihias/IEMPluginSuite/blob/39de1dd5883f1bd8d65fe1662487f2470a1d7b55/ChangeLog.md
- cites → https://github.com/kronihias/IEMPluginSuite/blob/39de1dd5883f1bd8d65fe1662487f2470a1d7b55/resources/ambisonicTools.h
- cites → https://github.com/kronihias/ambix/blob/24d2875f2c930b201ae379c9081fafdb5a9f7c44/README.md
- cites → https://github.com/kronihias/ambix/blob/24d2875f2c930b201ae379c9081fafdb5a9f7c44/common/SphericalHarmonic/normalization.h
- cites → https://github.com/kronihias/ambix/blob/24d2875f2c930b201ae379c9081fafdb5a9f7c44/doc/conversion_schemes.txt
- cites → https://github.com/leomccormack/Spatial_Audio_Framework/blob/18fd5aba46e20787b51f28f7197a68506c965c07/examples/include/_common.h
- cites → https://github.com/leomccormack/Spatial_Audio_Framework/blob/18fd5aba46e20787b51f28f7197a68506c965c07/framework/modules/saf_hoa/saf_hoa.c
- cites → https://github.com/leomccormack/Spatial_Audio_Framework/blob/18fd5aba46e20787b51f28f7197a68506c965c07/framework/modules/saf_hoa/saf_hoa.h