aboutsummaryrefslogtreecommitdiffstats
path: root/alc/uhjfilter.h
diff options
context:
space:
mode:
Diffstat (limited to 'alc/uhjfilter.h')
-rw-r--r--alc/uhjfilter.h39
1 files changed, 0 insertions, 39 deletions
diff --git a/alc/uhjfilter.h b/alc/uhjfilter.h
deleted file mode 100644
index 4984bcab..00000000
--- a/alc/uhjfilter.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef UHJFILTER_H
-#define UHJFILTER_H
-
-#include <array>
-
-#include "almalloc.h"
-#include "core/bufferline.h"
-
-
-struct Uhj2Encoder {
- /* A particular property of the filter allows it to cover nearly twice its
- * length, so the filter size is also the effective delay (despite being
- * center-aligned).
- */
- constexpr static size_t sFilterSize{128};
-
- /* Delays for the unfiltered signal. */
- alignas(16) std::array<float,sFilterSize> mMidDelay{};
- alignas(16) std::array<float,sFilterSize> mSideDelay{};
-
- alignas(16) std::array<float,BufferLineSize+sFilterSize> mMid{};
- alignas(16) std::array<float,BufferLineSize+sFilterSize> mSide{};
-
- /* History for the FIR filter. */
- alignas(16) std::array<float,sFilterSize*2 - 1> mSideHistory{};
-
- alignas(16) std::array<float,BufferLineSize + sFilterSize*2> mTemp{};
-
- /**
- * Encodes a 2-channel UHJ (stereo-compatible) signal from a B-Format input
- * signal. The input must use FuMa channel ordering and scaling.
- */
- void encode(FloatBufferLine &LeftOut, FloatBufferLine &RightOut,
- const FloatBufferLine *InSamples, const size_t SamplesToDo);
-
- DEF_NEWDEL(Uhj2Encoder)
-};
-
-#endif /* UHJFILTER_H */