summaryrefslogtreecommitdiffstats
path: root/src/multimedia/spatial/qambisonicdecoderdata_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia/spatial/qambisonicdecoderdata_p.h')
-rw-r--r--src/multimedia/spatial/qambisonicdecoderdata_p.h396
1 files changed, 144 insertions, 252 deletions
diff --git a/src/multimedia/spatial/qambisonicdecoderdata_p.h b/src/multimedia/spatial/qambisonicdecoderdata_p.h
index fa7b462f4..1428efb03 100644
--- a/src/multimedia/spatial/qambisonicdecoderdata_p.h
+++ b/src/multimedia/spatial/qambisonicdecoderdata_p.h
@@ -57,364 +57,256 @@
QT_BEGIN_NAMESPACE
-// Decoder matrix for mono, ambisonic level 1
-static constexpr float decoderMatrix_mono_1_lf[1*4] = {
-0.471409f, 0.619827f, 0.000000f, 0.000000f, // C
-};
-
-// Decoder matrix for mono, ambisonic level 1
-static constexpr float decoderMatrix_mono_1_hf[1*4] = {
-0.666673f, 0.506086f, 0.000000f, 0.000000f, // C
-};
-
-// Decoder matrix for mono, ambisonic level 2
-static constexpr float decoderMatrix_mono_2_lf[1*9] = {
-0.471409f, 0.619827f, 0.000000f, 0.000000f, -0.138903f, 0.000000f, 0.000000f, 0.208318f, 0.000000f, // C
-};
-
-// Decoder matrix for mono, ambisonic level 2
-static constexpr float decoderMatrix_mono_2_hf[1*9] = {
-0.745364f, 0.759129f, 0.000000f, 0.000000f, -0.087850f, 0.000000f, 0.000000f, 0.131752f, 0.000000f, // C
-};
-
-// Decoder matrix for mono, ambisonic level 3
-static constexpr float decoderMatrix_mono_3_lf[1*16] = {
-0.471409f, 0.619827f, 0.000000f, 0.000000f, -0.138903f, 0.000000f, 0.000000f, 0.208318f, 0.000000f, 0.000000f, 0.080888f, 0.000000f, 0.000000f, 0.000000f, -0.097901f, 0.000000f, // C
-};
-
-// Decoder matrix for mono, ambisonic level 3
-static constexpr float decoderMatrix_mono_3_hf[1*16] = {
-0.786398f, 0.890402f, 0.000000f, 0.000000f, -0.141888f, 0.000000f, 0.000000f, 0.212793f, 0.000000f, 0.000000f, 0.041121f, 0.000000f, 0.000000f, 0.000000f, -0.049771f, 0.000000f, // C
-};
-
-// Decoder matrix for stereo, ambisonic level 1
-static constexpr float decoderMatrix_stereo_1_lf[2*4] = {
-0.280670f, 0.372187f, 0.240963f, 0.000000f, // L
-0.280656f, 0.372181f, -0.240980f, 0.000000f, // R
-};
-
-// Decoder matrix for stereo, ambisonic level 1
-static constexpr float decoderMatrix_stereo_1_hf[2*4] = {
-0.396928f, 0.303889f, 0.196746f, 0.000000f, // L
-0.396908f, 0.303884f, -0.196759f, 0.000000f, // R
-};
-
-// Decoder matrix for stereo, ambisonic level 2
-static constexpr float decoderMatrix_stereo_2_lf[2*9] = {
-0.280670f, 0.372187f, 0.240963f, 0.000000f, -0.085490f, 0.000000f, 0.000000f, 0.135154f, 0.311013f, // L
-0.280656f, 0.372181f, -0.240980f, 0.000000f, -0.085579f, 0.000000f, 0.000000f, 0.135130f, -0.311015f, // R
-};
-
-// Decoder matrix for stereo, ambisonic level 2
-static constexpr float decoderMatrix_stereo_2_hf[2*9] = {
-0.443779f, 0.455834f, 0.295119f, 0.000000f, -0.054068f, 0.000000f, 0.000000f, 0.085479f, 0.196702f, // L
-0.443757f, 0.455826f, -0.295139f, 0.000000f, -0.054125f, 0.000000f, 0.000000f, 0.085464f, -0.196703f, // R
-};
-
-// Decoder matrix for stereo, ambisonic level 3
-static constexpr float decoderMatrix_stereo_3_lf[2*16] = {
-0.280670f, 0.372187f, 0.240963f, 0.000000f, -0.085490f, 0.000000f, 0.000000f, 0.135154f, 0.311013f, 0.000000f, 0.045437f, 0.021103f, 0.000000f, 0.000000f, -0.035873f, 0.169918f, // L
-0.280656f, 0.372181f, -0.240980f, 0.000000f, -0.085579f, 0.000000f, 0.000000f, 0.135130f, -0.311015f, 0.000000f, 0.045414f, -0.021065f, 0.000000f, 0.000000f, -0.035873f, -0.169892f, // R
-};
-
-// Decoder matrix for stereo, ambisonic level 3
-static constexpr float decoderMatrix_stereo_3_hf[2*16] = {
-0.468210f, 0.534659f, 0.346152f, 0.000000f, -0.087326f, 0.000000f, 0.000000f, 0.138058f, 0.317696f, 0.000000f, 0.023099f, 0.010728f, 0.000000f, 0.000000f, -0.018237f, 0.086382f, // L
-0.468186f, 0.534650f, -0.346176f, 0.000000f, -0.087418f, 0.000000f, 0.000000f, 0.138033f, -0.317697f, 0.000000f, 0.023087f, -0.010709f, 0.000000f, 0.000000f, -0.018237f, -0.086369f, // R
-};
-
-// Decoder matrix for 2dot1, ambisonic level 1
-static constexpr float decoderMatrix_2dot1_1_lf[3*4] = {
-0.280670f, 0.372187f, 0.240963f, 0.000000f, // L
-0.280656f, 0.372181f, -0.240980f, 0.000000f, // R
-0.5f, 0.0f, 0.0f, 0.0f, // LFE
-};
-
-// Decoder matrix for 2dot1, ambisonic level 1
-static constexpr float decoderMatrix_2dot1_1_hf[3*4] = {
-0.396928f, 0.303889f, 0.196746f, 0.000000f, // L
-0.396908f, 0.303884f, -0.196759f, 0.000000f, // R
-0.0f, 0.0f, 0.0f, 0.0f, // LFE
-};
-
-// Decoder matrix for 2dot1, ambisonic level 2
-static constexpr float decoderMatrix_2dot1_2_lf[3*9] = {
-0.280670f, 0.372187f, 0.240963f, 0.000000f, -0.085490f, 0.000000f, 0.000000f, 0.135154f, 0.311013f, // L
-0.280656f, 0.372181f, -0.240980f, 0.000000f, -0.085579f, 0.000000f, 0.000000f, 0.135130f, -0.311015f, // R
-0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-};
-
-// Decoder matrix for 2dot1, ambisonic level 2
-static constexpr float decoderMatrix_2dot1_2_hf[3*9] = {
-0.443779f, 0.455834f, 0.295119f, 0.000000f, -0.054068f, 0.000000f, 0.000000f, 0.085479f, 0.196702f, // L
-0.443757f, 0.455826f, -0.295139f, 0.000000f, -0.054125f, 0.000000f, 0.000000f, 0.085464f, -0.196703f, // R
-0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-};
-
-// Decoder matrix for 2dot1, ambisonic level 3
-static constexpr float decoderMatrix_2dot1_3_lf[3*16] = {
-0.280670f, 0.372187f, 0.240963f, 0.000000f, -0.085490f, 0.000000f, 0.000000f, 0.135154f, 0.311013f, 0.000000f, 0.045437f, 0.021103f, 0.000000f, 0.000000f, -0.035873f, 0.169918f, // L
-0.280656f, 0.372181f, -0.240980f, 0.000000f, -0.085579f, 0.000000f, 0.000000f, 0.135130f, -0.311015f, 0.000000f, 0.045414f, -0.021065f, 0.000000f, 0.000000f, -0.035873f, -0.169892f, // R
-0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-};
-
-// Decoder matrix for 2dot1, ambisonic level 3
-static constexpr float decoderMatrix_2dot1_3_hf[3*16] = {
-0.468210f, 0.534659f, 0.346152f, 0.000000f, -0.087326f, 0.000000f, 0.000000f, 0.138058f, 0.317696f, 0.000000f, 0.023099f, 0.010728f, 0.000000f, 0.000000f, -0.018237f, 0.086382f, // L
-0.468186f, 0.534650f, -0.346176f, 0.000000f, -0.087418f, 0.000000f, 0.000000f, 0.138033f, -0.317697f, 0.000000f, 0.023087f, -0.010709f, 0.000000f, 0.000000f, -0.018237f, -0.086369f, // R
-0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-};
-
// Decoder matrix for 5dot0, ambisonic level 1
static constexpr float decoderMatrix_5dot0_1_lf[5*4] = {
-0.240964f, 0.257639f, 0.287251f, 0.000000f, // L
-0.240957f, 0.257633f, -0.287251f, 0.000000f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, // C
-0.520591f, -0.419052f, 0.415955f, 0.000000f, // Ls
-0.520596f, -0.419047f, -0.415960f, 0.000000f, // Rs
+0.170387f, 0.287251f, 0.000000f, 0.257639f, // L
+0.170382f, -0.287251f, 0.000000f, 0.257633f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, // C
+0.368113f, 0.415955f, 0.000000f, -0.419052f, // Ls
+0.368117f, -0.415960f, 0.000000f, -0.419047f, // Rs
};
// Decoder matrix for 5dot0, ambisonic level 1
static constexpr float decoderMatrix_5dot0_1_hf[5*4] = {
-0.340774f, 0.210361f, 0.234540f, 0.000000f, // L
-0.340764f, 0.210357f, -0.234540f, 0.000000f, // R
-0.180812f, 0.179246f, 0.000000f, 0.000000f, // C
-0.736226f, -0.342155f, 0.339626f, 0.000000f, // Ls
-0.736233f, -0.342151f, -0.339630f, 0.000000f, // Rs
+0.240964f, 0.234540f, 0.000000f, 0.210361f, // L
+0.240957f, -0.234540f, 0.000000f, 0.210357f, // R
+0.127854f, 0.000000f, 0.000000f, 0.179246f, // C
+0.520591f, 0.339626f, 0.000000f, -0.342155f, // Ls
+0.520596f, -0.339630f, 0.000000f, -0.342151f, // Rs
};
// Decoder matrix for 5dot0, ambisonic level 2
static constexpr float decoderMatrix_5dot0_2_lf[5*9] = {
-0.240964f, 0.257639f, 0.287251f, 0.000000f, -0.063536f, 0.000000f, 0.000000f, -0.026015f, 0.315018f, // L
-0.240957f, 0.257633f, -0.287251f, 0.000000f, -0.063562f, 0.000000f, 0.000000f, -0.026018f, -0.315014f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, // C
-0.520591f, -0.419052f, 0.415955f, 0.000000f, -0.092715f, 0.000000f, 0.000000f, -0.061595f, -0.083957f, // Ls
-0.520596f, -0.419047f, -0.415960f, 0.000000f, -0.092693f, 0.000000f, 0.000000f, -0.061591f, 0.083957f, // Rs
+0.170387f, 0.287251f, 0.000000f, 0.257639f, 0.105006f, 0.000000f, -0.063536f, 0.000000f, -0.008672f, // L
+0.170382f, -0.287251f, 0.000000f, 0.257633f, -0.105005f, 0.000000f, -0.063562f, 0.000000f, -0.008673f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, // C
+0.368113f, 0.415955f, 0.000000f, -0.419052f, -0.027986f, 0.000000f, -0.092715f, 0.000000f, -0.020532f, // Ls
+0.368117f, -0.415960f, 0.000000f, -0.419047f, 0.027986f, 0.000000f, -0.092693f, 0.000000f, -0.020530f, // Rs
};
// Decoder matrix for 5dot0, ambisonic level 2
static constexpr float decoderMatrix_5dot0_2_hf[5*9] = {
-0.380997f, 0.315542f, 0.351810f, 0.000000f, -0.040184f, 0.000000f, 0.000000f, -0.016453f, 0.199235f, // L
-0.380986f, 0.315535f, -0.351809f, 0.000000f, -0.040200f, 0.000000f, 0.000000f, -0.016455f, -0.199232f, // R
-0.202154f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.000000f, 0.140418f, 0.000000f, // C
-0.823126f, -0.513232f, 0.509439f, 0.000000f, -0.058638f, 0.000000f, 0.000000f, -0.038956f, -0.053099f, // Ls
-0.823134f, -0.513226f, -0.509444f, 0.000000f, -0.058624f, 0.000000f, 0.000000f, -0.038954f, 0.053099f, // Rs
+0.269405f, 0.351810f, 0.000000f, 0.315542f, 0.066412f, 0.000000f, -0.040184f, 0.000000f, -0.005484f, // L
+0.269398f, -0.351809f, 0.000000f, 0.315535f, -0.066411f, 0.000000f, -0.040200f, 0.000000f, -0.005485f, // R
+0.142945f, 0.000000f, 0.000000f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.046806f, // C
+0.582038f, 0.509439f, 0.000000f, -0.513232f, -0.017700f, 0.000000f, -0.058638f, 0.000000f, -0.012985f, // Ls
+0.582043f, -0.509444f, 0.000000f, -0.513226f, 0.017700f, 0.000000f, -0.058624f, 0.000000f, -0.012985f, // Rs
};
// Decoder matrix for 5dot0, ambisonic level 3
static constexpr float decoderMatrix_5dot0_3_lf[5*16] = {
-0.240964f, 0.257639f, 0.287251f, 0.000000f, -0.063536f, 0.000000f, 0.000000f, -0.026015f, 0.315018f, 0.000000f, 0.035335f, 0.041639f, 0.000000f, 0.000000f, -0.142145f, 0.134220f, // L
-0.240957f, 0.257633f, -0.287251f, 0.000000f, -0.063562f, 0.000000f, 0.000000f, -0.026018f, -0.315014f, 0.000000f, 0.035320f, -0.041624f, 0.000000f, 0.000000f, -0.142141f, -0.134218f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, 0.000000f, 0.026162f, 0.000000f, 0.000000f, 0.000000f, 0.204779f, 0.000000f, // C
-0.520591f, -0.419052f, 0.415955f, 0.000000f, -0.092715f, 0.000000f, 0.000000f, -0.061595f, -0.083957f, 0.000000f, -0.101526f, 0.068569f, 0.000000f, 0.000000f, -0.017680f, -0.126417f, // Ls
-0.520596f, -0.419047f, -0.415960f, 0.000000f, -0.092693f, 0.000000f, 0.000000f, -0.061591f, 0.083957f, 0.000000f, -0.101519f, -0.068568f, 0.000000f, 0.000000f, -0.017687f, 0.126417f, // Rs
+0.170387f, 0.287251f, 0.000000f, 0.257639f, 0.105006f, 0.000000f, -0.063536f, 0.000000f, -0.008672f, 0.008948f, 0.000000f, 0.020158f, 0.000000f, 0.017107f, 0.000000f, -0.009476f, // L
+0.170382f, -0.287251f, 0.000000f, 0.257633f, -0.105005f, 0.000000f, -0.063562f, 0.000000f, -0.008673f, -0.008948f, 0.000000f, -0.020151f, 0.000000f, 0.017099f, 0.000000f, -0.009476f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.012666f, 0.000000f, 0.013652f, // C
+0.368113f, 0.415955f, 0.000000f, -0.419052f, -0.027986f, 0.000000f, -0.092715f, 0.000000f, -0.020532f, -0.008428f, 0.000000f, 0.033196f, 0.000000f, -0.049151f, 0.000000f, -0.001179f, // Ls
+0.368117f, -0.415960f, 0.000000f, -0.419047f, 0.027986f, 0.000000f, -0.092693f, 0.000000f, -0.020530f, 0.008428f, 0.000000f, -0.033195f, 0.000000f, -0.049148f, 0.000000f, -0.001179f, // Rs
};
// Decoder matrix for 5dot0, ambisonic level 3
static constexpr float decoderMatrix_5dot0_3_hf[5*16] = {
-0.401972f, 0.370107f, 0.412646f, 0.000000f, -0.064901f, 0.000000f, 0.000000f, -0.026574f, 0.321786f, 0.000000f, 0.017964f, 0.021168f, 0.000000f, 0.000000f, -0.072263f, 0.068234f, // L
-0.401960f, 0.370099f, -0.412646f, 0.000000f, -0.064928f, 0.000000f, 0.000000f, -0.026577f, -0.321782f, 0.000000f, 0.017956f, -0.021161f, 0.000000f, 0.000000f, -0.072261f, -0.068233f, // R
-0.213283f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.000000f, 0.226791f, 0.000000f, 0.000000f, 0.013300f, 0.000000f, 0.000000f, 0.000000f, 0.104104f, 0.000000f, // C
-0.868441f, -0.601983f, 0.597533f, 0.000000f, -0.094707f, 0.000000f, 0.000000f, -0.062919f, -0.085760f, 0.000000f, -0.051613f, 0.034859f, 0.000000f, 0.000000f, -0.008988f, -0.064267f, // Ls
-0.868449f, -0.601975f, -0.597540f, 0.000000f, -0.094684f, 0.000000f, 0.000000f, -0.062915f, 0.085761f, 0.000000f, -0.051609f, -0.034858f, 0.000000f, 0.000000f, -0.008992f, 0.064267f, // Rs
+0.284237f, 0.412646f, 0.000000f, 0.370107f, 0.107262f, 0.000000f, -0.064901f, 0.000000f, -0.008858f, 0.004549f, 0.000000f, 0.010248f, 0.000000f, 0.008697f, 0.000000f, -0.004818f, // L
+0.284229f, -0.412646f, 0.000000f, 0.370099f, -0.107261f, 0.000000f, -0.064928f, 0.000000f, -0.008859f, -0.004549f, 0.000000f, -0.010244f, 0.000000f, 0.008693f, 0.000000f, -0.004817f, // R
+0.150814f, 0.000000f, 0.000000f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.075597f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.006439f, 0.000000f, 0.006940f, // C
+0.614081f, 0.597533f, 0.000000f, -0.601983f, -0.028587f, 0.000000f, -0.094707f, 0.000000f, -0.020973f, -0.004284f, 0.000000f, 0.016876f, 0.000000f, -0.024987f, 0.000000f, -0.000599f, // Ls
+0.614086f, -0.597540f, 0.000000f, -0.601975f, 0.028587f, 0.000000f, -0.094684f, 0.000000f, -0.020972f, 0.004284f, 0.000000f, -0.016876f, 0.000000f, -0.024985f, 0.000000f, -0.000599f, // Rs
};
// Decoder matrix for 5dot1, ambisonic level 1
static constexpr float decoderMatrix_5dot1_1_lf[6*4] = {
-0.240964f, 0.257639f, 0.287251f, 0.000000f, // L
-0.240957f, 0.257633f, -0.287251f, 0.000000f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, // C
+0.170387f, 0.287251f, 0.000000f, 0.257639f, // L
+0.170382f, -0.287251f, 0.000000f, 0.257633f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, // C
0.5f, 0.0f, 0.0f, 0.0f, // LFE
-0.520591f, -0.419052f, 0.415955f, 0.000000f, // Ls
-0.520596f, -0.419047f, -0.415960f, 0.000000f, // Rs
+0.368113f, 0.415955f, 0.000000f, -0.419052f, // Ls
+0.368117f, -0.415960f, 0.000000f, -0.419047f, // Rs
};
// Decoder matrix for 5dot1, ambisonic level 1
static constexpr float decoderMatrix_5dot1_1_hf[6*4] = {
-0.340774f, 0.210361f, 0.234540f, 0.000000f, // L
-0.340764f, 0.210357f, -0.234540f, 0.000000f, // R
-0.180812f, 0.179246f, 0.000000f, 0.000000f, // C
+0.240964f, 0.234540f, 0.000000f, 0.210361f, // L
+0.240957f, -0.234540f, 0.000000f, 0.210357f, // R
+0.127854f, 0.000000f, 0.000000f, 0.179246f, // C
0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.736226f, -0.342155f, 0.339626f, 0.000000f, // Ls
-0.736233f, -0.342151f, -0.339630f, 0.000000f, // Rs
+0.520591f, 0.339626f, 0.000000f, -0.342155f, // Ls
+0.520596f, -0.339630f, 0.000000f, -0.342151f, // Rs
};
// Decoder matrix for 5dot1, ambisonic level 2
static constexpr float decoderMatrix_5dot1_2_lf[6*9] = {
-0.240964f, 0.257639f, 0.287251f, 0.000000f, -0.063536f, 0.000000f, 0.000000f, -0.026015f, 0.315018f, // L
-0.240957f, 0.257633f, -0.287251f, 0.000000f, -0.063562f, 0.000000f, 0.000000f, -0.026018f, -0.315014f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, // C
+0.170387f, 0.287251f, 0.000000f, 0.257639f, 0.105006f, 0.000000f, -0.063536f, 0.000000f, -0.008672f, // L
+0.170382f, -0.287251f, 0.000000f, 0.257633f, -0.105005f, 0.000000f, -0.063562f, 0.000000f, -0.008673f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, // C
0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.520591f, -0.419052f, 0.415955f, 0.000000f, -0.092715f, 0.000000f, 0.000000f, -0.061595f, -0.083957f, // Ls
-0.520596f, -0.419047f, -0.415960f, 0.000000f, -0.092693f, 0.000000f, 0.000000f, -0.061591f, 0.083957f, // Rs
+0.368113f, 0.415955f, 0.000000f, -0.419052f, -0.027986f, 0.000000f, -0.092715f, 0.000000f, -0.020532f, // Ls
+0.368117f, -0.415960f, 0.000000f, -0.419047f, 0.027986f, 0.000000f, -0.092693f, 0.000000f, -0.020530f, // Rs
};
// Decoder matrix for 5dot1, ambisonic level 2
static constexpr float decoderMatrix_5dot1_2_hf[6*9] = {
-0.380997f, 0.315542f, 0.351810f, 0.000000f, -0.040184f, 0.000000f, 0.000000f, -0.016453f, 0.199235f, // L
-0.380986f, 0.315535f, -0.351809f, 0.000000f, -0.040200f, 0.000000f, 0.000000f, -0.016455f, -0.199232f, // R
-0.202154f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.000000f, 0.140418f, 0.000000f, // C
+0.269405f, 0.351810f, 0.000000f, 0.315542f, 0.066412f, 0.000000f, -0.040184f, 0.000000f, -0.005484f, // L
+0.269398f, -0.351809f, 0.000000f, 0.315535f, -0.066411f, 0.000000f, -0.040200f, 0.000000f, -0.005485f, // R
+0.142945f, 0.000000f, 0.000000f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.046806f, // C
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.823126f, -0.513232f, 0.509439f, 0.000000f, -0.058638f, 0.000000f, 0.000000f, -0.038956f, -0.053099f, // Ls
-0.823134f, -0.513226f, -0.509444f, 0.000000f, -0.058624f, 0.000000f, 0.000000f, -0.038954f, 0.053099f, // Rs
+0.582038f, 0.509439f, 0.000000f, -0.513232f, -0.017700f, 0.000000f, -0.058638f, 0.000000f, -0.012985f, // Ls
+0.582043f, -0.509444f, 0.000000f, -0.513226f, 0.017700f, 0.000000f, -0.058624f, 0.000000f, -0.012985f, // Rs
};
// Decoder matrix for 5dot1, ambisonic level 3
static constexpr float decoderMatrix_5dot1_3_lf[6*16] = {
-0.240964f, 0.257639f, 0.287251f, 0.000000f, -0.063536f, 0.000000f, 0.000000f, -0.026015f, 0.315018f, 0.000000f, 0.035335f, 0.041639f, 0.000000f, 0.000000f, -0.142145f, 0.134220f, // L
-0.240957f, 0.257633f, -0.287251f, 0.000000f, -0.063562f, 0.000000f, 0.000000f, -0.026018f, -0.315014f, 0.000000f, 0.035320f, -0.041624f, 0.000000f, 0.000000f, -0.142141f, -0.134218f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, 0.000000f, 0.026162f, 0.000000f, 0.000000f, 0.000000f, 0.204779f, 0.000000f, // C
+0.170387f, 0.287251f, 0.000000f, 0.257639f, 0.105006f, 0.000000f, -0.063536f, 0.000000f, -0.008672f, 0.008948f, 0.000000f, 0.020158f, 0.000000f, 0.017107f, 0.000000f, -0.009476f, // L
+0.170382f, -0.287251f, 0.000000f, 0.257633f, -0.105005f, 0.000000f, -0.063562f, 0.000000f, -0.008673f, -0.008948f, 0.000000f, -0.020151f, 0.000000f, 0.017099f, 0.000000f, -0.009476f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.012666f, 0.000000f, 0.013652f, // C
0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.520591f, -0.419052f, 0.415955f, 0.000000f, -0.092715f, 0.000000f, 0.000000f, -0.061595f, -0.083957f, 0.000000f, -0.101526f, 0.068569f, 0.000000f, 0.000000f, -0.017680f, -0.126417f, // Ls
-0.520596f, -0.419047f, -0.415960f, 0.000000f, -0.092693f, 0.000000f, 0.000000f, -0.061591f, 0.083957f, 0.000000f, -0.101519f, -0.068568f, 0.000000f, 0.000000f, -0.017687f, 0.126417f, // Rs
+0.368113f, 0.415955f, 0.000000f, -0.419052f, -0.027986f, 0.000000f, -0.092715f, 0.000000f, -0.020532f, -0.008428f, 0.000000f, 0.033196f, 0.000000f, -0.049151f, 0.000000f, -0.001179f, // Ls
+0.368117f, -0.415960f, 0.000000f, -0.419047f, 0.027986f, 0.000000f, -0.092693f, 0.000000f, -0.020530f, 0.008428f, 0.000000f, -0.033195f, 0.000000f, -0.049148f, 0.000000f, -0.001179f, // Rs
};
// Decoder matrix for 5dot1, ambisonic level 3
static constexpr float decoderMatrix_5dot1_3_hf[6*16] = {
-0.401972f, 0.370107f, 0.412646f, 0.000000f, -0.064901f, 0.000000f, 0.000000f, -0.026574f, 0.321786f, 0.000000f, 0.017964f, 0.021168f, 0.000000f, 0.000000f, -0.072263f, 0.068234f, // L
-0.401960f, 0.370099f, -0.412646f, 0.000000f, -0.064928f, 0.000000f, 0.000000f, -0.026577f, -0.321782f, 0.000000f, 0.017956f, -0.021161f, 0.000000f, 0.000000f, -0.072261f, -0.068233f, // R
-0.213283f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.000000f, 0.226791f, 0.000000f, 0.000000f, 0.013300f, 0.000000f, 0.000000f, 0.000000f, 0.104104f, 0.000000f, // C
+0.284237f, 0.412646f, 0.000000f, 0.370107f, 0.107262f, 0.000000f, -0.064901f, 0.000000f, -0.008858f, 0.004549f, 0.000000f, 0.010248f, 0.000000f, 0.008697f, 0.000000f, -0.004818f, // L
+0.284229f, -0.412646f, 0.000000f, 0.370099f, -0.107261f, 0.000000f, -0.064928f, 0.000000f, -0.008859f, -0.004549f, 0.000000f, -0.010244f, 0.000000f, 0.008693f, 0.000000f, -0.004817f, // R
+0.150814f, 0.000000f, 0.000000f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.075597f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.006439f, 0.000000f, 0.006940f, // C
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.868441f, -0.601983f, 0.597533f, 0.000000f, -0.094707f, 0.000000f, 0.000000f, -0.062919f, -0.085760f, 0.000000f, -0.051613f, 0.034859f, 0.000000f, 0.000000f, -0.008988f, -0.064267f, // Ls
-0.868449f, -0.601975f, -0.597540f, 0.000000f, -0.094684f, 0.000000f, 0.000000f, -0.062915f, 0.085761f, 0.000000f, -0.051609f, -0.034858f, 0.000000f, 0.000000f, -0.008992f, 0.064267f, // Rs
+0.614081f, 0.597533f, 0.000000f, -0.601983f, -0.028587f, 0.000000f, -0.094707f, 0.000000f, -0.020973f, -0.004284f, 0.000000f, 0.016876f, 0.000000f, -0.024987f, 0.000000f, -0.000599f, // Ls
+0.614086f, -0.597540f, 0.000000f, -0.601975f, 0.028587f, 0.000000f, -0.094684f, 0.000000f, -0.020972f, 0.004284f, 0.000000f, -0.016876f, 0.000000f, -0.024985f, 0.000000f, -0.000599f, // Rs
};
// Decoder matrix for 7dot0, ambisonic level 1
static constexpr float decoderMatrix_7dot0_1_lf[7*4] = {
-0.194124f, 0.244088f, 0.209910f, 0.000000f, // L
-0.194108f, 0.244084f, -0.209914f, 0.000000f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, // C
-0.260404f, 0.000000f, 0.413172f, 0.000000f, // Ls
-0.260430f, 0.000000f, -0.413179f, 0.000000f, // Rs
-0.260425f, -0.357822f, 0.206589f, 0.000000f, // Lb
-0.260400f, -0.357815f, -0.206595f, 0.000000f, // Rb
+0.137267f, 0.209910f, 0.000000f, 0.244088f, // L
+0.137255f, -0.209914f, 0.000000f, 0.244084f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, // C
+0.184133f, 0.413172f, 0.000000f, 0.000000f, // Ls
+0.184152f, -0.413179f, 0.000000f, 0.000000f, // Rs
+0.184148f, 0.206589f, 0.000000f, -0.357822f, // Lb
+0.184131f, -0.206595f, 0.000000f, -0.357815f, // Rb
};
// Decoder matrix for 7dot0, ambisonic level 1
static constexpr float decoderMatrix_7dot0_1_hf[7*4] = {
-0.274533f, 0.199297f, 0.171391f, 0.000000f, // L
-0.274510f, 0.199294f, -0.171394f, 0.000000f, // R
-0.180812f, 0.179246f, 0.000000f, 0.000000f, // C
-0.368266f, 0.000000f, 0.337353f, 0.000000f, // Ls
-0.368304f, 0.000000f, -0.337359f, 0.000000f, // Rs
-0.368297f, -0.292160f, 0.168680f, 0.000000f, // Lb
-0.368261f, -0.292155f, -0.168684f, 0.000000f, // Rb
+0.194124f, 0.171391f, 0.000000f, 0.199297f, // L
+0.194108f, -0.171394f, 0.000000f, 0.199294f, // R
+0.127854f, 0.000000f, 0.000000f, 0.179246f, // C
+0.260404f, 0.337353f, 0.000000f, 0.000000f, // Ls
+0.260430f, -0.337359f, 0.000000f, 0.000000f, // Rs
+0.260425f, 0.168680f, 0.000000f, -0.292160f, // Lb
+0.260400f, -0.168684f, 0.000000f, -0.292155f, // Rb
};
// Decoder matrix for 7dot0, ambisonic level 2
static constexpr float decoderMatrix_7dot0_2_lf[7*9] = {
-0.194124f, 0.244088f, 0.209910f, 0.000000f, -0.054359f, 0.000000f, 0.000000f, 0.046706f, 0.289736f, // L
-0.194108f, 0.244084f, -0.209914f, 0.000000f, -0.054434f, 0.000000f, 0.000000f, 0.046694f, -0.289734f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, // C
-0.260404f, 0.000000f, 0.413172f, 0.000000f, -0.071326f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, // Ls
-0.260430f, 0.000000f, -0.413179f, 0.000000f, -0.071237f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, // Rs
-0.260425f, -0.357822f, 0.206589f, 0.000000f, -0.071249f, 0.000000f, 0.000000f, 0.163267f, -0.282791f, // Lb
-0.260400f, -0.357815f, -0.206595f, 0.000000f, -0.071359f, 0.000000f, 0.000000f, 0.163256f, 0.282788f, // Rb
+0.137267f, 0.209910f, 0.000000f, 0.244088f, 0.096579f, 0.000000f, -0.054359f, 0.000000f, 0.015569f, // L
+0.137255f, -0.209914f, 0.000000f, 0.244084f, -0.096578f, 0.000000f, -0.054434f, 0.000000f, 0.015565f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, // C
+0.184133f, 0.413172f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071326f, 0.000000f, -0.108845f, // Ls
+0.184152f, -0.413179f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071237f, 0.000000f, -0.108845f, // Rs
+0.184148f, 0.206589f, 0.000000f, -0.357822f, -0.094264f, 0.000000f, -0.071249f, 0.000000f, 0.054422f, // Lb
+0.184131f, -0.206595f, 0.000000f, -0.357815f, 0.094263f, 0.000000f, -0.071359f, 0.000000f, 0.054419f, // Rb
};
// Decoder matrix for 7dot0, ambisonic level 2
static constexpr float decoderMatrix_7dot0_2_hf[7*9] = {
-0.306937f, 0.298946f, 0.257087f, 0.000000f, -0.034380f, 0.000000f, 0.000000f, 0.029540f, 0.183245f, // L
-0.306912f, 0.298940f, -0.257091f, 0.000000f, -0.034427f, 0.000000f, 0.000000f, 0.029532f, -0.183244f, // R
-0.202154f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.000000f, 0.140418f, 0.000000f, // C
-0.411734f, 0.000000f, 0.506030f, 0.000000f, -0.045111f, 0.000000f, 0.000000f, -0.206518f, 0.000000f, // Ls
-0.411776f, 0.000000f, -0.506039f, 0.000000f, -0.045054f, 0.000000f, 0.000000f, -0.206518f, 0.000000f, // Rs
-0.411768f, -0.438240f, 0.253019f, 0.000000f, -0.045062f, 0.000000f, 0.000000f, 0.103259f, -0.178853f, // Lb
-0.411728f, -0.438232f, -0.253026f, 0.000000f, -0.045131f, 0.000000f, 0.000000f, 0.103252f, 0.178851f, // Rb
+0.217038f, 0.257087f, 0.000000f, 0.298946f, 0.061082f, 0.000000f, -0.034380f, 0.000000f, 0.009847f, // L
+0.217019f, -0.257091f, 0.000000f, 0.298940f, -0.061081f, 0.000000f, -0.034427f, 0.000000f, 0.009844f, // R
+0.142945f, 0.000000f, 0.000000f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.046806f, // C
+0.291140f, 0.506030f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.045111f, 0.000000f, -0.068839f, // Ls
+0.291170f, -0.506039f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.045054f, 0.000000f, -0.068839f, // Rs
+0.291164f, 0.253019f, 0.000000f, -0.438240f, -0.059618f, 0.000000f, -0.045062f, 0.000000f, 0.034420f, // Lb
+0.291136f, -0.253026f, 0.000000f, -0.438232f, 0.059617f, 0.000000f, -0.045131f, 0.000000f, 0.034417f, // Rb
};
// Decoder matrix for 7dot0, ambisonic level 3
static constexpr float decoderMatrix_7dot0_3_lf[7*16] = {
-0.194124f, 0.244088f, 0.209910f, 0.000000f, -0.054359f, 0.000000f, 0.000000f, 0.046706f, 0.289736f, 0.000000f, 0.031236f, 0.027345f, 0.000000f, 0.000000f, -0.110659f, 0.194894f, // L
-0.194108f, 0.244084f, -0.209914f, 0.000000f, -0.054434f, 0.000000f, 0.000000f, 0.046694f, -0.289734f, 0.000000f, 0.031217f, -0.027307f, 0.000000f, 0.000000f, -0.110659f, -0.194879f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, 0.000000f, 0.026162f, 0.000000f, 0.000000f, 0.000000f, 0.204779f, 0.000000f, // C
-0.260404f, 0.000000f, 0.413172f, 0.000000f, -0.071326f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, 0.000000f, 0.000000f, 0.055313f, 0.000000f, 0.000000f, 0.000000f, -0.185006f, // Ls
-0.260430f, 0.000000f, -0.413179f, 0.000000f, -0.071237f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, 0.000000f, 0.000000f, -0.055349f, 0.000000f, 0.000000f, 0.000000f, 0.185008f, // Rs
-0.260425f, -0.357822f, 0.206589f, 0.000000f, -0.071249f, 0.000000f, 0.000000f, 0.163267f, -0.282791f, 0.000000f, -0.047935f, 0.027670f, 0.000000f, 0.000000f, 0.000000f, 0.185014f, // Lb
-0.260400f, -0.357815f, -0.206595f, 0.000000f, -0.071359f, 0.000000f, 0.000000f, 0.163256f, 0.282788f, 0.000000f, -0.047893f, -0.027649f, 0.000000f, 0.000000f, 0.000000f, -0.184996f, // Rb
+0.137267f, 0.209910f, 0.000000f, 0.244088f, 0.096579f, 0.000000f, -0.054359f, 0.000000f, 0.015569f, 0.012993f, 0.000000f, 0.013238f, 0.000000f, 0.015122f, 0.000000f, -0.007377f, // L
+0.137255f, -0.209914f, 0.000000f, 0.244084f, -0.096578f, 0.000000f, -0.054434f, 0.000000f, 0.015565f, -0.012992f, 0.000000f, -0.013220f, 0.000000f, 0.015113f, 0.000000f, -0.007377f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.012666f, 0.000000f, 0.013652f, // C
+0.184133f, 0.413172f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071326f, 0.000000f, -0.108845f, -0.012334f, 0.000000f, 0.026779f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Ls
+0.184152f, -0.413179f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071237f, 0.000000f, -0.108845f, 0.012334f, 0.000000f, -0.026796f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Rs
+0.184148f, 0.206589f, 0.000000f, -0.357822f, -0.094264f, 0.000000f, -0.071249f, 0.000000f, 0.054422f, 0.012334f, 0.000000f, 0.013396f, 0.000000f, -0.023206f, 0.000000f, 0.000000f, // Lb
+0.184131f, -0.206595f, 0.000000f, -0.357815f, 0.094263f, 0.000000f, -0.071359f, 0.000000f, 0.054419f, -0.012333f, 0.000000f, -0.013386f, 0.000000f, -0.023186f, 0.000000f, 0.000000f, // Rb
};
// Decoder matrix for 7dot0, ambisonic level 3
static constexpr float decoderMatrix_7dot0_3_hf[7*16] = {
-0.323835f, 0.350641f, 0.301543f, 0.000000f, -0.055527f, 0.000000f, 0.000000f, 0.047710f, 0.295961f, 0.000000f, 0.015880f, 0.013901f, 0.000000f, 0.000000f, -0.056256f, 0.099079f, // L
-0.323808f, 0.350635f, -0.301549f, 0.000000f, -0.055604f, 0.000000f, 0.000000f, 0.047697f, -0.295959f, 0.000000f, 0.015870f, -0.013882f, 0.000000f, 0.000000f, -0.056256f, -0.099072f, // R
-0.213283f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.000000f, 0.226791f, 0.000000f, 0.000000f, 0.013300f, 0.000000f, 0.000000f, 0.000000f, 0.104104f, 0.000000f, // C
-0.434401f, 0.000000f, 0.593535f, 0.000000f, -0.072859f, 0.000000f, 0.000000f, -0.333550f, 0.000000f, 0.000000f, 0.000000f, 0.028120f, 0.000000f, 0.000000f, 0.000000f, -0.094052f, // Ls
-0.434446f, 0.000000f, -0.593546f, 0.000000f, -0.072768f, 0.000000f, 0.000000f, -0.333550f, 0.000000f, 0.000000f, 0.000000f, -0.028138f, 0.000000f, 0.000000f, 0.000000f, 0.094053f, // Rs
-0.434437f, -0.514023f, 0.296773f, 0.000000f, -0.072780f, 0.000000f, 0.000000f, 0.166775f, -0.288867f, 0.000000f, -0.024369f, 0.014067f, 0.000000f, 0.000000f, 0.000000f, 0.094056f, // Lb
-0.434395f, -0.514014f, -0.296781f, 0.000000f, -0.072892f, 0.000000f, 0.000000f, 0.166764f, 0.288864f, 0.000000f, -0.024348f, -0.014056f, 0.000000f, 0.000000f, 0.000000f, -0.094047f, // Rb
+0.228986f, 0.301543f, 0.000000f, 0.350641f, 0.098654f, 0.000000f, -0.055527f, 0.000000f, 0.015903f, 0.006605f, 0.000000f, 0.006730f, 0.000000f, 0.007688f, 0.000000f, -0.003750f, // L
+0.228967f, -0.301549f, 0.000000f, 0.350635f, -0.098653f, 0.000000f, -0.055604f, 0.000000f, 0.015899f, -0.006605f, 0.000000f, -0.006721f, 0.000000f, 0.007683f, 0.000000f, -0.003750f, // R
+0.150814f, 0.000000f, 0.000000f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.075597f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.006439f, 0.000000f, 0.006940f, // C
+0.307168f, 0.593535f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.072859f, 0.000000f, -0.111183f, -0.006270f, 0.000000f, 0.013613f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Ls
+0.307199f, -0.593546f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.072768f, 0.000000f, -0.111183f, 0.006270f, 0.000000f, -0.013622f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Rs
+0.307193f, 0.296773f, 0.000000f, -0.514023f, -0.096289f, 0.000000f, -0.072780f, 0.000000f, 0.055592f, 0.006270f, 0.000000f, 0.006810f, 0.000000f, -0.011797f, 0.000000f, 0.000000f, // Lb
+0.307164f, -0.296781f, 0.000000f, -0.514014f, 0.096288f, 0.000000f, -0.072892f, 0.000000f, 0.055588f, -0.006270f, 0.000000f, -0.006805f, 0.000000f, -0.011787f, 0.000000f, 0.000000f, // Rb
};
// Decoder matrix for 7dot1, ambisonic level 1
static constexpr float decoderMatrix_7dot1_1_lf[8*4] = {
-0.194124f, 0.244088f, 0.209910f, 0.000000f, // L
-0.194108f, 0.244084f, -0.209914f, 0.000000f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, // C
+0.137267f, 0.209910f, 0.000000f, 0.244088f, // L
+0.137255f, -0.209914f, 0.000000f, 0.244084f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, // C
0.5f, 0.0f, 0.0f, 0.0f, // LFE
-0.260404f, 0.000000f, 0.413172f, 0.000000f, // Ls
-0.260430f, 0.000000f, -0.413179f, 0.000000f, // Rs
-0.260425f, -0.357822f, 0.206589f, 0.000000f, // Lb
-0.260400f, -0.357815f, -0.206595f, 0.000000f, // Rb
+0.184133f, 0.413172f, 0.000000f, 0.000000f, // Ls
+0.184152f, -0.413179f, 0.000000f, 0.000000f, // Rs
+0.184148f, 0.206589f, 0.000000f, -0.357822f, // Lb
+0.184131f, -0.206595f, 0.000000f, -0.357815f, // Rb
};
// Decoder matrix for 7dot1, ambisonic level 1
static constexpr float decoderMatrix_7dot1_1_hf[8*4] = {
-0.274533f, 0.199297f, 0.171391f, 0.000000f, // L
-0.274510f, 0.199294f, -0.171394f, 0.000000f, // R
-0.180812f, 0.179246f, 0.000000f, 0.000000f, // C
+0.194124f, 0.171391f, 0.000000f, 0.199297f, // L
+0.194108f, -0.171394f, 0.000000f, 0.199294f, // R
+0.127854f, 0.000000f, 0.000000f, 0.179246f, // C
0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.368266f, 0.000000f, 0.337353f, 0.000000f, // Ls
-0.368304f, 0.000000f, -0.337359f, 0.000000f, // Rs
-0.368297f, -0.292160f, 0.168680f, 0.000000f, // Lb
-0.368261f, -0.292155f, -0.168684f, 0.000000f, // Rb
+0.260404f, 0.337353f, 0.000000f, 0.000000f, // Ls
+0.260430f, -0.337359f, 0.000000f, 0.000000f, // Rs
+0.260425f, 0.168680f, 0.000000f, -0.292160f, // Lb
+0.260400f, -0.168684f, 0.000000f, -0.292155f, // Rb
};
// Decoder matrix for 7dot1, ambisonic level 2
static constexpr float decoderMatrix_7dot1_2_lf[8*9] = {
-0.194124f, 0.244088f, 0.209910f, 0.000000f, -0.054359f, 0.000000f, 0.000000f, 0.046706f, 0.289736f, // L
-0.194108f, 0.244084f, -0.209914f, 0.000000f, -0.054434f, 0.000000f, 0.000000f, 0.046694f, -0.289734f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, // C
+0.137267f, 0.209910f, 0.000000f, 0.244088f, 0.096579f, 0.000000f, -0.054359f, 0.000000f, 0.015569f, // L
+0.137255f, -0.209914f, 0.000000f, 0.244084f, -0.096578f, 0.000000f, -0.054434f, 0.000000f, 0.015565f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, // C
0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.260404f, 0.000000f, 0.413172f, 0.000000f, -0.071326f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, // Ls
-0.260430f, 0.000000f, -0.413179f, 0.000000f, -0.071237f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, // Rs
-0.260425f, -0.357822f, 0.206589f, 0.000000f, -0.071249f, 0.000000f, 0.000000f, 0.163267f, -0.282791f, // Lb
-0.260400f, -0.357815f, -0.206595f, 0.000000f, -0.071359f, 0.000000f, 0.000000f, 0.163256f, 0.282788f, // Rb
+0.184133f, 0.413172f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071326f, 0.000000f, -0.108845f, // Ls
+0.184152f, -0.413179f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071237f, 0.000000f, -0.108845f, // Rs
+0.184148f, 0.206589f, 0.000000f, -0.357822f, -0.094264f, 0.000000f, -0.071249f, 0.000000f, 0.054422f, // Lb
+0.184131f, -0.206595f, 0.000000f, -0.357815f, 0.094263f, 0.000000f, -0.071359f, 0.000000f, 0.054419f, // Rb
};
// Decoder matrix for 7dot1, ambisonic level 2
static constexpr float decoderMatrix_7dot1_2_hf[8*9] = {
-0.306937f, 0.298946f, 0.257087f, 0.000000f, -0.034380f, 0.000000f, 0.000000f, 0.029540f, 0.183245f, // L
-0.306912f, 0.298940f, -0.257091f, 0.000000f, -0.034427f, 0.000000f, 0.000000f, 0.029532f, -0.183244f, // R
-0.202154f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.000000f, 0.140418f, 0.000000f, // C
+0.217038f, 0.257087f, 0.000000f, 0.298946f, 0.061082f, 0.000000f, -0.034380f, 0.000000f, 0.009847f, // L
+0.217019f, -0.257091f, 0.000000f, 0.298940f, -0.061081f, 0.000000f, -0.034427f, 0.000000f, 0.009844f, // R
+0.142945f, 0.000000f, 0.000000f, 0.268870f, 0.000000f, 0.000000f, -0.023656f, 0.000000f, 0.046806f, // C
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.411734f, 0.000000f, 0.506030f, 0.000000f, -0.045111f, 0.000000f, 0.000000f, -0.206518f, 0.000000f, // Ls
-0.411776f, 0.000000f, -0.506039f, 0.000000f, -0.045054f, 0.000000f, 0.000000f, -0.206518f, 0.000000f, // Rs
-0.411768f, -0.438240f, 0.253019f, 0.000000f, -0.045062f, 0.000000f, 0.000000f, 0.103259f, -0.178853f, // Lb
-0.411728f, -0.438232f, -0.253026f, 0.000000f, -0.045131f, 0.000000f, 0.000000f, 0.103252f, 0.178851f, // Rb
+0.291140f, 0.506030f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.045111f, 0.000000f, -0.068839f, // Ls
+0.291170f, -0.506039f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.045054f, 0.000000f, -0.068839f, // Rs
+0.291164f, 0.253019f, 0.000000f, -0.438240f, -0.059618f, 0.000000f, -0.045062f, 0.000000f, 0.034420f, // Lb
+0.291136f, -0.253026f, 0.000000f, -0.438232f, 0.059617f, 0.000000f, -0.045131f, 0.000000f, 0.034417f, // Rb
};
// Decoder matrix for 7dot1, ambisonic level 3
static constexpr float decoderMatrix_7dot1_3_lf[8*16] = {
-0.194124f, 0.244088f, 0.209910f, 0.000000f, -0.054359f, 0.000000f, 0.000000f, 0.046706f, 0.289736f, 0.000000f, 0.031236f, 0.027345f, 0.000000f, 0.000000f, -0.110659f, 0.194894f, // L
-0.194108f, 0.244084f, -0.209914f, 0.000000f, -0.054434f, 0.000000f, 0.000000f, 0.046694f, -0.289734f, 0.000000f, 0.031217f, -0.027307f, 0.000000f, 0.000000f, -0.110659f, -0.194879f, // R
-0.127854f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.000000f, 0.222021f, 0.000000f, 0.000000f, 0.026162f, 0.000000f, 0.000000f, 0.000000f, 0.204779f, 0.000000f, // C
+0.137267f, 0.209910f, 0.000000f, 0.244088f, 0.096579f, 0.000000f, -0.054359f, 0.000000f, 0.015569f, 0.012993f, 0.000000f, 0.013238f, 0.000000f, 0.015122f, 0.000000f, -0.007377f, // L
+0.137255f, -0.209914f, 0.000000f, 0.244084f, -0.096578f, 0.000000f, -0.054434f, 0.000000f, 0.015565f, -0.012992f, 0.000000f, -0.013220f, 0.000000f, 0.015113f, 0.000000f, -0.007377f, // R
+0.090406f, 0.000000f, 0.000000f, 0.219531f, 0.000000f, 0.000000f, -0.037403f, 0.000000f, 0.074007f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.012666f, 0.000000f, 0.013652f, // C
0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.260404f, 0.000000f, 0.413172f, 0.000000f, -0.071326f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, 0.000000f, 0.000000f, 0.055313f, 0.000000f, 0.000000f, 0.000000f, -0.185006f, // Ls
-0.260430f, 0.000000f, -0.413179f, 0.000000f, -0.071237f, 0.000000f, 0.000000f, -0.326534f, 0.000000f, 0.000000f, 0.000000f, -0.055349f, 0.000000f, 0.000000f, 0.000000f, 0.185008f, // Rs
-0.260425f, -0.357822f, 0.206589f, 0.000000f, -0.071249f, 0.000000f, 0.000000f, 0.163267f, -0.282791f, 0.000000f, -0.047935f, 0.027670f, 0.000000f, 0.000000f, 0.000000f, 0.185014f, // Lb
-0.260400f, -0.357815f, -0.206595f, 0.000000f, -0.071359f, 0.000000f, 0.000000f, 0.163256f, 0.282788f, 0.000000f, -0.047893f, -0.027649f, 0.000000f, 0.000000f, 0.000000f, -0.184996f, // Rb
+0.184133f, 0.413172f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071326f, 0.000000f, -0.108845f, -0.012334f, 0.000000f, 0.026779f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Ls
+0.184152f, -0.413179f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.071237f, 0.000000f, -0.108845f, 0.012334f, 0.000000f, -0.026796f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Rs
+0.184148f, 0.206589f, 0.000000f, -0.357822f, -0.094264f, 0.000000f, -0.071249f, 0.000000f, 0.054422f, 0.012334f, 0.000000f, 0.013396f, 0.000000f, -0.023206f, 0.000000f, 0.000000f, // Lb
+0.184131f, -0.206595f, 0.000000f, -0.357815f, 0.094263f, 0.000000f, -0.071359f, 0.000000f, 0.054419f, -0.012333f, 0.000000f, -0.013386f, 0.000000f, -0.023186f, 0.000000f, 0.000000f, // Rb
};
// Decoder matrix for 7dot1, ambisonic level 3
static constexpr float decoderMatrix_7dot1_3_hf[8*16] = {
-0.323835f, 0.350641f, 0.301543f, 0.000000f, -0.055527f, 0.000000f, 0.000000f, 0.047710f, 0.295961f, 0.000000f, 0.015880f, 0.013901f, 0.000000f, 0.000000f, -0.056256f, 0.099079f, // L
-0.323808f, 0.350635f, -0.301549f, 0.000000f, -0.055604f, 0.000000f, 0.000000f, 0.047697f, -0.295959f, 0.000000f, 0.015870f, -0.013882f, 0.000000f, 0.000000f, -0.056256f, -0.099072f, // R
-0.213283f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.000000f, 0.226791f, 0.000000f, 0.000000f, 0.013300f, 0.000000f, 0.000000f, 0.000000f, 0.104104f, 0.000000f, // C
+0.228986f, 0.301543f, 0.000000f, 0.350641f, 0.098654f, 0.000000f, -0.055527f, 0.000000f, 0.015903f, 0.006605f, 0.000000f, 0.006730f, 0.000000f, 0.007688f, 0.000000f, -0.003750f, // L
+0.228967f, -0.301549f, 0.000000f, 0.350635f, -0.098653f, 0.000000f, -0.055604f, 0.000000f, 0.015899f, -0.006605f, 0.000000f, -0.006721f, 0.000000f, 0.007683f, 0.000000f, -0.003750f, // R
+0.150814f, 0.000000f, 0.000000f, 0.315364f, 0.000000f, 0.000000f, -0.038207f, 0.000000f, 0.075597f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, 0.006439f, 0.000000f, 0.006940f, // C
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, // LFE
-0.434401f, 0.000000f, 0.593535f, 0.000000f, -0.072859f, 0.000000f, 0.000000f, -0.333550f, 0.000000f, 0.000000f, 0.000000f, 0.028120f, 0.000000f, 0.000000f, 0.000000f, -0.094052f, // Ls
-0.434446f, 0.000000f, -0.593546f, 0.000000f, -0.072768f, 0.000000f, 0.000000f, -0.333550f, 0.000000f, 0.000000f, 0.000000f, -0.028138f, 0.000000f, 0.000000f, 0.000000f, 0.094053f, // Rs
-0.434437f, -0.514023f, 0.296773f, 0.000000f, -0.072780f, 0.000000f, 0.000000f, 0.166775f, -0.288867f, 0.000000f, -0.024369f, 0.014067f, 0.000000f, 0.000000f, 0.000000f, 0.094056f, // Lb
-0.434395f, -0.514014f, -0.296781f, 0.000000f, -0.072892f, 0.000000f, 0.000000f, 0.166764f, 0.288864f, 0.000000f, -0.024348f, -0.014056f, 0.000000f, 0.000000f, 0.000000f, -0.094047f, // Rb
+0.307168f, 0.593535f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.072859f, 0.000000f, -0.111183f, -0.006270f, 0.000000f, 0.013613f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Ls
+0.307199f, -0.593546f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, -0.072768f, 0.000000f, -0.111183f, 0.006270f, 0.000000f, -0.013622f, 0.000000f, 0.000000f, 0.000000f, 0.000000f, // Rs
+0.307193f, 0.296773f, 0.000000f, -0.514023f, -0.096289f, 0.000000f, -0.072780f, 0.000000f, 0.055592f, 0.006270f, 0.000000f, 0.006810f, 0.000000f, -0.011797f, 0.000000f, 0.000000f, // Lb
+0.307164f, -0.296781f, 0.000000f, -0.514014f, 0.096288f, 0.000000f, -0.072892f, 0.000000f, 0.055588f, -0.006270f, 0.000000f, -0.006805f, 0.000000f, -0.011787f, 0.000000f, 0.000000f, // Rb
};
QT_END_NAMESPACE