Refactor gstreamer engine code, equalizer and fix stereo balancer

This commit is contained in:
Jonas Kvinge
2019-11-08 23:07:21 +01:00
parent d033b79af4
commit 834877c503
10 changed files with 430 additions and 393 deletions

View File

@@ -95,15 +95,18 @@ class GstEngine : public Engine::Base, public GstBufferConsumer {
public slots:
void ReloadSettings();
/** Set whether equalizer is enabled */
// Set whether stereo balancer is enabled
void SetStereoBalancerEnabled(const bool enabled);
// Set Stereo balance, range -1.0f..1.0f
void SetStereoBalance(const float value);
// Set whether equalizer is enabled
void SetEqualizerEnabled(const bool);
/** Set equalizer preamp and gains, range -100..100. Gains are 10 values. */
// Set equalizer preamp and gains, range -100..100. Gains are 10 values.
void SetEqualizerParameters(const int preamp, const QList<int> &bandGains);
/** Set Stereo balance, range -1.0f..1.0f */
void SetStereoBalance(const bool enabled, const float value);
void AddBufferConsumer(GstBufferConsumer *consumer);
void RemoveBufferConsumer(GstBufferConsumer *consumer);
@@ -173,6 +176,7 @@ class GstEngine : public Engine::Base, public GstBufferConsumer {
bool stereo_balancer_enabled_;
float stereo_balance_;
bool equalizer_enabled_;
int equalizer_preamp_;
QList<int> equalizer_gains_;