Skip to content

Commit

Permalink
Reorder parameters
Browse files Browse the repository at this point in the history
Signed-off-by: falkTX <falktx@falktx.com>
  • Loading branch information
falkTX committed Nov 23, 2022
1 parent 9970eed commit 4ee74cd
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 24 deletions.
2 changes: 1 addition & 1 deletion plugins/ConvolutionReverb/DistrhoPluginInfo.h
Expand Up @@ -35,8 +35,8 @@
#define DISTRHO_PLUGIN_IS_RT_SAFE 0

enum Parameters {
kParameterWetLevel,
kParameterDryLevel,
kParameterWetLevel,
kParameterHighPassFilter,
kParameterTrails,
kParameterBypass,
Expand Down
46 changes: 23 additions & 23 deletions plugins/ConvolutionReverb/OneKnobPlugin.cpp
Expand Up @@ -124,14 +124,14 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
korgFilterL.setFrequency(kParameterDefaults[kParameterHighPassFilter]);
korgFilterR.setFrequency(kParameterDefaults[kParameterHighPassFilter]);

smoothWetLevel.setSampleRate(sampleRate);
smoothDryLevel.setSampleRate(sampleRate);
smoothWetLevel.setSampleRate(sampleRate);

smoothWetLevel.setTimeConstant(0.1f);
smoothDryLevel.setTimeConstant(0.1f);
smoothWetLevel.setTimeConstant(0.1f);

smoothWetLevel.setTarget(std::pow(10.f, 0.05f * kParameterDefaults[kParameterWetLevel]));
smoothDryLevel.setTarget(std::pow(10.f, 0.05f * kParameterDefaults[kParameterDryLevel]));
smoothWetLevel.setTarget(std::pow(10.f, 0.05f * kParameterDefaults[kParameterWetLevel]));
}

~OneKnobConvolutionReverbPlugin() override
Expand Down Expand Up @@ -165,32 +165,32 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
{
switch (index)
{
case kParameterWetLevel:
case kParameterDryLevel:
parameter.hints = kParameterIsAutomatable;
parameter.name = "Wet Level";
parameter.symbol = "wetlevel";
parameter.name = "Dry Level";
parameter.symbol = "drylevel";
parameter.unit = "dB";
parameter.ranges.def = kParameterDefaults[kParameterWetLevel];
parameter.ranges.def = kParameterDefaults[kParameterDryLevel];
parameter.ranges.min = -60.f;
parameter.ranges.max = 0.f;
{
ParameterEnumerationValue* const enumValues = new ParameterEnumerationValue[1];
ParameterEnumerationValue* const enumValues = new ParameterEnumerationValue[1];
enumValues[0].value = -60.f;
enumValues[0].label = "Off";
parameter.enumValues.count = 1;
parameter.enumValues.values = enumValues;
}
break;
case kParameterDryLevel:
case kParameterWetLevel:
parameter.hints = kParameterIsAutomatable;
parameter.name = "Dry Level";
parameter.symbol = "drylevel";
parameter.name = "Wet Level";
parameter.symbol = "wetlevel";
parameter.unit = "dB";
parameter.ranges.def = kParameterDefaults[kParameterDryLevel];
parameter.ranges.def = kParameterDefaults[kParameterWetLevel];
parameter.ranges.min = -60.f;
parameter.ranges.max = 0.f;
{
ParameterEnumerationValue* const enumValues = new ParameterEnumerationValue[1];
ParameterEnumerationValue* const enumValues = new ParameterEnumerationValue[1];
enumValues[0].value = -60.f;
enumValues[0].label = "Off";
parameter.enumValues.count = 1;
Expand Down Expand Up @@ -259,14 +259,14 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
{
switch (index)
{
case kParameterWetLevel:
if (!bypassed)
smoothWetLevel.setTarget(std::pow(10.f, 0.05f * value));
break;
case kParameterDryLevel:
if (!bypassed)
smoothDryLevel.setTarget(std::pow(10.f, 0.05f * value));
break;
case kParameterWetLevel:
if (!bypassed)
smoothWetLevel.setTarget(std::pow(10.f, 0.05f * value));
break;
case kParameterHighPassFilter:
korgFilterL.setFrequency(value);
korgFilterR.setFrequency(value);
Expand All @@ -280,15 +280,15 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
bypassed = value > 0.5f;
if (bypassed)
{
smoothWetLevel.setTarget(trails ? std::pow(10.f, 0.05f * parameters[kParameterWetLevel]) : 0.f);
smoothDryLevel.setTarget(1.f);
smoothWetLevel.setTarget(trails ? std::pow(10.f, 0.05f * parameters[kParameterWetLevel]) : 0.f);
}
else
{
korgFilterL.reset();
korgFilterR.reset();
smoothWetLevel.setTarget(std::pow(10.f, 0.05f * parameters[kParameterWetLevel]));
smoothDryLevel.setTarget(std::pow(10.f, 0.05f * parameters[kParameterDryLevel]));
smoothWetLevel.setTarget(std::pow(10.f, 0.05f * parameters[kParameterWetLevel]));
}
break;
}
Expand Down Expand Up @@ -405,8 +405,8 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
korgFilterL.reset();
korgFilterR.reset();

smoothWetLevel.clearToTarget();
smoothDryLevel.clearToTarget();
smoothWetLevel.clearToTarget();

OneKnobPlugin::activate();
}
Expand Down Expand Up @@ -501,8 +501,8 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin

for (uint32_t i = 0; i < frames; ++i)
{
wetLevel = smoothWetLevel.next();
dryLevel = smoothDryLevel.next();
wetLevel = smoothWetLevel.next();

if (wetLevel <= 0.001f)
{
Expand Down Expand Up @@ -579,8 +579,8 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
korgFilterL.setSampleRate(newSampleRate);
korgFilterR.setSampleRate(newSampleRate);

smoothWetLevel.setSampleRate(newSampleRate);
smoothDryLevel.setSampleRate(newSampleRate);
smoothWetLevel.setSampleRate(newSampleRate);

// reload file
if (char* const filename = loadedFilename.getAndReleaseBuffer())
Expand All @@ -603,8 +603,8 @@ class OneKnobConvolutionReverbPlugin : public OneKnobPlugin
uint32_t bufferSize = 0;

// smoothed parameters
LinearSmoother smoothWetLevel;
LinearSmoother smoothDryLevel;
LinearSmoother smoothWetLevel;

// buffers for placing highpass signal before convolution
float* highpassBufL = nullptr;
Expand Down

0 comments on commit 4ee74cd

Please sign in to comment.