10 /* Helpers to read .ambdec configuration files. */
12 enum class AmbDecScale
{
18 std::string Description
;
19 int Version
{0}; /* Must be 3 */
21 unsigned int ChanMask
{0u};
22 unsigned int FreqBands
{0u}; /* Must be 1 or 2 */
23 AmbDecScale CoeffScale
{};
25 float XOverFreq
{0.0f
};
26 float XOverRatio
{0.0f
};
32 float Elevation
{0.0f
};
33 std::string Connection
;
35 al::vector
<SpeakerConf
> Speakers
;
37 using CoeffArray
= std::array
<float,MAX_AMBI_CHANNELS
>;
38 /* Unused when FreqBands == 1 */
39 float LFOrderGain
[MAX_AMBI_ORDER
+1]{};
40 al::vector
<CoeffArray
> LFMatrix
;
42 float HFOrderGain
[MAX_AMBI_ORDER
+1]{};
43 al::vector
<CoeffArray
> HFMatrix
;
45 int load(const char *fname
) noexcept
;