summaryrefslogtreecommitdiff
path: root/system/embdrv/lc3_dec/Decoder/DecoderTop.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'system/embdrv/lc3_dec/Decoder/DecoderTop.hpp')
-rw-r--r--system/embdrv/lc3_dec/Decoder/DecoderTop.hpp85
1 files changed, 0 insertions, 85 deletions
diff --git a/system/embdrv/lc3_dec/Decoder/DecoderTop.hpp b/system/embdrv/lc3_dec/Decoder/DecoderTop.hpp
deleted file mode 100644
index 268a574621..0000000000
--- a/system/embdrv/lc3_dec/Decoder/DecoderTop.hpp
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * DecoderTop.hpp
- *
- * Copyright 2021 HIMSA II K/S - www.himsa.com. Represented by EHIMA -
- * www.ehima.com
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef __DECODER_TOP_HPP_
-#define __DECODER_TOP_HPP_
-
-#include <cstdint>
-
-#include "Datapoints.hpp"
-#include "DecoderFrame.hpp"
-#include "Lc3Config.hpp"
-#include "MdctDec.hpp"
-#include "PacketLossConcealment.hpp"
-#include "ResidualSpectrum.hpp"
-#include "SpectralNoiseShaping.hpp"
-
-namespace Lc3Dec {
-
-class DecoderTop {
- public:
- DecoderTop(uint16_t fs_, DatapointContainer* datapoints_ = nullptr);
- DecoderTop(Lc3Config lc3Config_, DatapointContainer* datapoints_ = nullptr);
- virtual ~DecoderTop();
-
- template <typename T>
- void run(const uint8_t* bytes, uint16_t nbytes, uint8_t BFI,
- uint8_t bits_per_audio_sample_dec, T* x_out, uint8_t& BEC_detect) {
- if ((nullptr == decoderCurrentFrame) ||
- (decoderCurrentFrame->nbytes != nbytes)) {
- // We need to instantiate a new DecoderFrame only
- // when byte_count has been changed. Thus, frequent
- // dynamic memory allocation can be constrained to
- // rate optimized operation.
- if (nullptr != decoderPreviousFrame) {
- delete decoderPreviousFrame;
- }
- decoderPreviousFrame = decoderCurrentFrame;
- decoderCurrentFrame =
- new DecoderFrame(residualSpectrum, spectralNoiseShaping,
- packetLossConcealment, mdctDec, lc3Config, nbytes);
- decoderCurrentFrame->linkPreviousFrame(decoderPreviousFrame);
- if (nullptr != datapoints) {
- // Another way to make to call optional would be to split run() into
- // init(), registerDatapoints() & remaining run() -> we preferred the
- // simpler
- // API and thus designed this registration being dependent on the
- // availability of datapoints.
- decoderCurrentFrame->registerDatapoints(datapoints);
- }
- }
- decoderCurrentFrame->run<T>(bytes, BFI, bits_per_audio_sample_dec, x_out,
- BEC_detect);
- }
-
- const Lc3Config lc3Config;
-
- private:
- DatapointContainer* datapoints;
- DecoderFrame* decoderCurrentFrame;
- DecoderFrame* decoderPreviousFrame;
- ResidualSpectrum residualSpectrum;
- SpectralNoiseShaping spectralNoiseShaping;
- PacketLossConcealment packetLossConcealment;
- MdctDec mdctDec;
-};
-
-} // namespace Lc3Dec
-
-#endif // __DECODER_TOP_HPP_