ViPERFX_RE/src/cpp/viper/utils/DynamicBass.h

36 lines
698 B
C
Raw Normal View History

2021-07-28 14:20:36 +02:00
#pragma once
#include <cstdint>
#include "PolesFilter.h"
2022-09-18 03:38:22 +02:00
#include "Biquad.h"
2021-07-28 14:20:36 +02:00
class DynamicBass {
public:
DynamicBass();
void FilterSamples(float *samples, uint32_t size);
2021-07-28 14:20:36 +02:00
void Reset();
2021-07-28 14:20:36 +02:00
void SetBassGain(float gain);
2021-07-28 14:20:36 +02:00
void SetFilterXPassFrequency(uint32_t low, uint32_t high);
2021-07-28 14:20:36 +02:00
void SetFilterYPassFrequency(uint32_t low, uint32_t high);
2021-07-28 14:20:36 +02:00
void SetSamplingRate(uint32_t samplerate);
2021-07-28 14:20:36 +02:00
void SetSideGain(float gainX, float gainY);
uint32_t lowFreqX, highFreqX;
uint32_t lowFreqY, highFreqY;
uint32_t samplerate;
2021-07-28 18:22:50 +02:00
float qPeak;
2021-07-28 14:20:36 +02:00
float bassGain;
float sideGainX, sideGainY;
PolesFilter filterX;
PolesFilter filterY;
2022-09-18 03:38:22 +02:00
Biquad lowPass;
2021-07-28 14:20:36 +02:00
};