37 lines
754 B
C
Raw Normal View History

#pragma once
#include <cstdint>
2022-09-18 03:38:22 +02:00
#include "../utils/Biquad.h"
2022-09-16 03:16:58 +02:00
#include "../utils/Subwoofer.h"
2022-09-18 03:38:22 +02:00
#include "../utils/WaveBuffer.h"
2022-09-16 03:16:58 +02:00
#include "../utils/Polyphase.h"
class ViPERBass {
public:
ViPERBass();
~ViPERBass();
void Process(float *samples, uint32_t size);
void Reset();
2022-09-16 03:16:58 +02:00
void SetBassFactor(float bassFactor);
void SetEnable(bool enable);
2022-09-16 03:16:58 +02:00
void SetProcessMode(int processMode);
void SetSamplingRate(uint32_t samplingRate);
2022-09-16 03:16:58 +02:00
void SetSpeaker(float speaker);
private:
Polyphase *polyphase;
2022-09-18 03:38:22 +02:00
Biquad *fixedBiquad;
2022-09-16 03:16:58 +02:00
Subwoofer *subwoofer;
2022-09-18 03:38:22 +02:00
WaveBuffer *waveBuffer;
2022-09-16 03:16:58 +02:00
bool enable;
bool initOk;
int processMode;
uint32_t samplingRate;
float unknown1;
float speaker;
float bassFactor;
};