aboutsummaryrefslogtreecommitdiffstats
path: root/alc
diff options
context:
space:
mode:
Diffstat (limited to 'alc')
-rw-r--r--alc/bformatdec.cpp33
-rw-r--r--alc/bformatdec.h4
-rw-r--r--alc/effects/convolution.cpp3
-rw-r--r--alc/effects/reverb.cpp4
-rw-r--r--alc/voice.cpp3
5 files changed, 4 insertions, 43 deletions
diff --git a/alc/bformatdec.cpp b/alc/bformatdec.cpp
index 9b2d9049..36b8d50e 100644
--- a/alc/bformatdec.cpp
+++ b/alc/bformatdec.cpp
@@ -21,23 +21,6 @@
namespace {
-constexpr std::array<float,MaxAmbiOrder+1> Ambi3DDecoderHFScale{{
- 1.00000000e+00f, 1.00000000e+00f
-}};
-constexpr std::array<float,MaxAmbiOrder+1> Ambi3DDecoderHFScale2O{{
- 7.45355990e-01f, 1.00000000e+00f, 1.00000000e+00f
-}};
-constexpr std::array<float,MaxAmbiOrder+1> Ambi3DDecoderHFScale3O{{
- 5.89792205e-01f, 8.79693856e-01f, 1.00000000e+00f, 1.00000000e+00f
-}};
-
-inline auto& GetDecoderHFScales(uint order) noexcept
-{
- if(order >= 3) return Ambi3DDecoderHFScale3O;
- if(order == 2) return Ambi3DDecoderHFScale2O;
- return Ambi3DDecoderHFScale;
-}
-
inline auto& GetAmbiScales(AmbDecScale scaletype) noexcept
{
if(scaletype == AmbDecScale::FuMa) return AmbiScale::FromFuMa();
@@ -266,22 +249,6 @@ void BFormatDec::processStablize(const al::span<FloatBufferLine> OutBuffer,
}
-auto BFormatDec::GetHFOrderScales(const uint in_order, const uint out_order) noexcept
- -> std::array<float,MaxAmbiOrder+1>
-{
- std::array<float,MaxAmbiOrder+1> ret{};
-
- assert(out_order >= in_order);
-
- const auto &target = GetDecoderHFScales(out_order);
- const auto &input = GetDecoderHFScales(in_order);
-
- for(size_t i{0};i < in_order+1;++i)
- ret[i] = input[i] / target[i];
-
- return ret;
-}
-
std::unique_ptr<BFormatDec> BFormatDec::Create(const AmbDecConf *conf, const bool allow_2band,
const size_t inchans, const uint srate, const uint (&chanmap)[MAX_OUTPUT_CHANNELS],
std::unique_ptr<FrontStablizer> stablizer)
diff --git a/alc/bformatdec.h b/alc/bformatdec.h
index 7715d364..bb39f709 100644
--- a/alc/bformatdec.h
+++ b/alc/bformatdec.h
@@ -58,10 +58,6 @@ public:
const FloatBufferLine *InSamples, const size_t lidx, const size_t ridx, const size_t cidx,
const size_t SamplesToDo);
- /* Retrieves per-order HF scaling factors for "upsampling" ambisonic data. */
- static std::array<float,MaxAmbiOrder+1> GetHFOrderScales(const uint in_order,
- const uint out_order) noexcept;
-
static std::unique_ptr<BFormatDec> Create(const AmbDecConf *conf, const bool allow_2band,
const size_t inchans, const uint srate, const uint (&chanmap)[MAX_OUTPUT_CHANNELS],
std::unique_ptr<FrontStablizer> stablizer);
diff --git a/alc/effects/convolution.cpp b/alc/effects/convolution.cpp
index 0a1bd214..072bc034 100644
--- a/alc/effects/convolution.cpp
+++ b/alc/effects/convolution.cpp
@@ -14,7 +14,6 @@
#include "alcontext.h"
#include "almalloc.h"
#include "alspan.h"
-#include "bformatdec.h"
#include "buffer_storage.h"
#include "core/ambidefs.h"
#include "core/filters/splitter.h"
@@ -398,7 +397,7 @@ void ConvolutionState::update(const ContextBase *context, const EffectSlot *slot
if(device->mAmbiOrder > mAmbiOrder)
{
mMix = &ConvolutionState::UpsampleMix;
- const auto scales = BFormatDec::GetHFOrderScales(mAmbiOrder, device->mAmbiOrder);
+ const auto scales = AmbiScale::GetHFOrderScales(mAmbiOrder, device->mAmbiOrder);
(*mChans)[0].mHfScale = scales[0];
for(size_t i{1};i < mChans->size();++i)
(*mChans)[i].mHfScale = scales[1];
diff --git a/alc/effects/reverb.cpp b/alc/effects/reverb.cpp
index 1260748c..2af7472d 100644
--- a/alc/effects/reverb.cpp
+++ b/alc/effects/reverb.cpp
@@ -32,7 +32,7 @@
#include "alcmain.h"
#include "alcontext.h"
#include "alnumeric.h"
-#include "bformatdec.h"
+#include "core/ambidefs.h"
#include "core/filters/biquad.h"
#include "effectslot.h"
#include "vector.h"
@@ -665,7 +665,7 @@ void ReverbState::deviceUpdate(const DeviceBase *device, const Buffer&)
if(device->mAmbiOrder > 1)
{
mMixOut = &ReverbState::MixOutAmbiUp;
- mOrderScales = BFormatDec::GetHFOrderScales(1, device->mAmbiOrder);
+ mOrderScales = AmbiScale::GetHFOrderScales(1, device->mAmbiOrder);
}
else
{
diff --git a/alc/voice.cpp b/alc/voice.cpp
index 206444d9..79c47588 100644
--- a/alc/voice.cpp
+++ b/alc/voice.cpp
@@ -44,7 +44,6 @@
#include "alstring.h"
#include "alu.h"
#include "async_event.h"
-#include "bformatdec.h"
#include "buffer_storage.h"
#include "core/ambidefs.h"
#include "core/cpu_caps.h"
@@ -840,7 +839,7 @@ void Voice::prepare(DeviceBase *device)
{
const uint8_t *OrderFromChan{(mFmtChannels == FmtBFormat2D) ?
AmbiIndex::OrderFrom2DChannel().data() : AmbiIndex::OrderFromChannel().data()};
- const auto scales = BFormatDec::GetHFOrderScales(mAmbiOrder, device->mAmbiOrder);
+ const auto scales = AmbiScale::GetHFOrderScales(mAmbiOrder, device->mAmbiOrder);
const BandSplitter splitter{device->mXOverFreq / static_cast<float>(device->Frequency)};
for(auto &chandata : mChans)