diff options
author | Daniil Cherednik <dan.cherednik@gmail.com> | 2018-12-05 00:14:29 +0300 |
---|---|---|
committer | Daniil Cherednik <dan.cherednik@gmail.com> | 2018-12-05 00:14:29 +0300 |
commit | b2342e902d62067fda5a08c7cccff62ee3619fc5 (patch) | |
tree | 226144be966246d69244a6440e485b1bf46a84e5 /src/atrac3denc.h | |
parent | d8014b6a75086decf99526d1538a172b527536e5 (diff) | |
download | atracdenc-b2342e902d62067fda5a08c7cccff62ee3619fc5.tar.gz |
[atrac3] Remove tonal extraction code
Current implementation doesn't add notisible quality improvements,
but often adds artifacts due to tonal bit allocation penalty. Proper
implementation must use tonal component only if penalty of tonal
allocation less than gain generic bit allocation.
Diffstat (limited to 'src/atrac3denc.h')
-rw-r--r-- | src/atrac3denc.h | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/src/atrac3denc.h b/src/atrac3denc.h index fb19c84..a07f717 100644 --- a/src/atrac3denc.h +++ b/src/atrac3denc.h @@ -79,9 +79,6 @@ protected: TAtrac3MDCT::TGainModulatorArray MakeGainModulatorArray(const TAtrac3Data::SubbandInfo& si); }; -//returns threshhold -typedef std::function<float(const TFloat* p, uint16_t len)> TTonalDetector; - class TAtrac3Processor : public IProcessor<TFloat>, public TAtrac3MDCT { TCompressedIOPtr Oma; const NAtrac3::TAtrac3EncoderSettings Params; @@ -93,7 +90,6 @@ class TAtrac3Processor : public IProcessor<TFloat>, public TAtrac3MDCT { TScaler<TAtrac3Data> Scaler; std::vector<TTransientDetector> TransientDetectors; std::vector<NAtrac3::TAtrac3BitStreamWriter::TSingleChannelElement> SingleChannelElements; - typedef std::array<uint8_t, NumSpecs> TonalComponentMask; public: struct TTransientParam { int32_t Attack0Location; // Attack position relative to previous frame @@ -116,10 +112,7 @@ public: void ResetTransientParamsHistory(int channel, int band); void SetTransientParamsHistory(int channel, int band, const TTransientParam& params); const TTransientParam& GetTransientParamsHistory(int channel, int band) const; - TonalComponentMask AnalyzeTonalComponent(TFloat* specs); - TTonalComponents ExtractTonalComponents(TFloat* specs, TTonalDetector fn); - void MapTonalComponents(const TTonalComponents& tonalComponents, std::vector<NAtrac3::TTonalBlock>* componentMap); public: TAtrac3Processor(TCompressedIOPtr&& oma, NAtrac3::TAtrac3EncoderSettings&& encoderSettings); ~TAtrac3Processor(); |