diff options
Diffstat (limited to 'src/libmusepack/musepack/decoder.h')
-rw-r--r-- | src/libmusepack/musepack/decoder.h | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/src/libmusepack/musepack/decoder.h b/src/libmusepack/musepack/decoder.h deleted file mode 100644 index 08c316390..000000000 --- a/src/libmusepack/musepack/decoder.h +++ /dev/null @@ -1,114 +0,0 @@ -/// \file decoder.h - -#ifndef _musepack_decoder_h_ -#define _musepack_decoder_h_ - -#include "musepack/huffman.h" -#include "musepack/math.h" -#include "musepack/musepack.h" -#include "musepack/reader.h" -#include "musepack/streaminfo.h" - -enum { - MPC_V_MEM = 2304, - MPC_DECODER_MEMSIZE = 16384, // overall buffer size -}; - -typedef struct { - mpc_int32_t L [36]; - mpc_int32_t R [36]; -} QuantTyp; - -typedef struct mpc_decoder_t { - mpc_reader *r; - - /// @name internal state variables - //@{ - - mpc_uint32_t dword; /// actually decoded 32bit-word - mpc_uint32_t pos; /// bit-position within dword - mpc_uint32_t Speicher[MPC_DECODER_MEMSIZE]; /// read-buffer - mpc_uint32_t Zaehler; /// actual index within read-buffer - - mpc_uint32_t samples_to_skip; - - mpc_uint32_t FwdJumpInfo; - mpc_uint32_t ActDecodePos; - mpc_uint32_t FrameWasValid; - - mpc_uint32_t DecodedFrames; - mpc_uint32_t OverallFrames; - mpc_int32_t SampleRate; // Sample frequency - - mpc_uint32_t StreamVersion; // version of bitstream - mpc_uint32_t MS_used; // MS-coding used ? - mpc_int32_t Max_Band; - mpc_uint32_t MPCHeaderPos; // AB: needed to support ID3v2 - mpc_uint32_t LastValidSamples; - mpc_uint32_t TrueGaplessPresent; - - mpc_uint32_t EQ_activated; - - mpc_uint32_t WordsRead; // counts amount of decoded dwords - - // randomizer state variables - mpc_uint32_t __r1; - mpc_uint32_t __r2; - - mpc_uint32_t Q_bit [32]; - mpc_uint32_t Q_res [32][16]; - - // huffman table stuff - HuffmanTyp HuffHdr [10]; - HuffmanTyp HuffSCFI [ 4]; - HuffmanTyp HuffDSCF [16]; - HuffmanTyp* HuffQ [2] [8]; - - HuffmanTyp HuffQ1 [2] [3*3*3]; - HuffmanTyp HuffQ2 [2] [5*5]; - HuffmanTyp HuffQ3 [2] [ 7]; - HuffmanTyp HuffQ4 [2] [ 9]; - HuffmanTyp HuffQ5 [2] [15]; - HuffmanTyp HuffQ6 [2] [31]; - HuffmanTyp HuffQ7 [2] [63]; - const HuffmanTyp* SampleHuff [18]; - HuffmanTyp SCFI_Bundle [ 8]; - HuffmanTyp DSCF_Entropie [13]; - HuffmanTyp Region_A [16]; - HuffmanTyp Region_B [ 8]; - HuffmanTyp Region_C [ 4]; - - HuffmanTyp Entropie_1 [ 3]; - HuffmanTyp Entropie_2 [ 5]; - HuffmanTyp Entropie_3 [ 7]; - HuffmanTyp Entropie_4 [ 9]; - HuffmanTyp Entropie_5 [15]; - HuffmanTyp Entropie_6 [31]; - HuffmanTyp Entropie_7 [63]; - - mpc_int32_t SCF_Index_L [32] [3]; - mpc_int32_t SCF_Index_R [32] [3]; // holds scalefactor-indices - QuantTyp Q [32]; // holds quantized samples - mpc_int32_t Res_L [32]; - mpc_int32_t Res_R [32]; // holds the chosen quantizer for each subband - mpc_int32_t DSCF_Flag_L [32]; - mpc_int32_t DSCF_Flag_R [32]; // differential SCF used? - mpc_int32_t SCFI_L [32]; - mpc_int32_t SCFI_R [32]; // describes order of transmitted SCF - mpc_int32_t DSCF_Reference_L [32]; - mpc_int32_t DSCF_Reference_R [32]; // holds last frames SCF - mpc_int32_t MS_Flag[32]; // MS used? -#ifdef MPC_FIXED_POINT - unsigned char SCF_shift[256]; -#endif - - MPC_SAMPLE_FORMAT V_L[MPC_V_MEM + 960]; - MPC_SAMPLE_FORMAT V_R[MPC_V_MEM + 960]; - MPC_SAMPLE_FORMAT Y_L[36][32]; - MPC_SAMPLE_FORMAT Y_R[36][32]; - MPC_SAMPLE_FORMAT SCF[256]; ///< holds adapted scalefactors (for clipping prevention) - //@} - -} mpc_decoder; - -#endif // _mpc_decoder_h |