Skip to content

Commit 2a80e09

Browse files
committed
finished new GUI; new controls; mod on Griesinger vbs
1 parent 9ed7843 commit 2a80e09

7 files changed

Lines changed: 280 additions & 154 deletions

File tree

Source/ConcertHallB.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,11 @@ void LargeConcertHallB::processBlock(juce::AudioBuffer<float>& buffer, juce::Mid
7676
{
7777
juce::ScopedNoDenormals noDenormals;
7878

79+
// set LFO rate
80+
lfoParameters = lfo.getParameters();
81+
lfoParameters.frequency_Hz = mParameters.modRate;
82+
lfo.setParameters(lfoParameters);
83+
7984
// set delays
8085
// filters
8186
inputBandwidth.setDelay(1);
@@ -216,7 +221,7 @@ void LargeConcertHallB::processBlock(juce::AudioBuffer<float>& buffer, juce::Mid
216221
// chorus
217222
allpassChorusL.pushSample(0, allpassOutputInnermost);
218223
allpassOutputInnermost *= 0.781;
219-
allpassOutputInnermost += allpassChorusL.popSample(0, scale(lfoOutput.normalOutput, -1.0f, 1.0f, 1.0f, 12.0f)) * 0.219; // modulate here
224+
allpassOutputInnermost += allpassChorusL.popSample(0, scale(lfoOutput.normalOutput, -1.0f, 1.0f, 1.0f, 12.0f * mParameters.modDepth)) * 0.219; // modulate here
220225
// finish innermost
221226
feedbackInnermost = allpassOutputInnermost * 0.25 * mParameters.diffusion;
222227
reverbData[sample] += feedbackInnermost;
@@ -305,7 +310,7 @@ void LargeConcertHallB::processBlock(juce::AudioBuffer<float>& buffer, juce::Mid
305310
// chorus
306311
allpassChorusR.pushSample(0, allpassOutputInnermost);
307312
allpassOutputInnermost *= 0.781;
308-
allpassOutputInnermost += allpassChorusL.popSample(0, scale(lfoOutput.quadPhaseOutput_pos, -1.0f, 1.0f, 1.0f, 12.0f)) * 0.219; // modulate here
313+
allpassOutputInnermost += allpassChorusL.popSample(0, scale(lfoOutput.quadPhaseOutput_pos, -1.0f, 1.0f, 1.0f, 12.0f * mParameters.modDepth)) * 0.219; // modulate here
309314
// finish innermost
310315
feedbackInnermost = allpassOutputInnermost * 0.25 * mParameters.diffusion;
311316
reverbData[sample] += feedbackInnermost;

Source/DattorroVerb.cpp

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,11 @@ void DattorroPlate::processBlock(juce::AudioBuffer<float>& buffer, juce::MidiBuf
5959
int numSamples = buffer.getNumSamples();
6060
// int numChannels = buffer.getNumChannels();
6161

62+
// set LFO rate
63+
lfoParameters = lfo.getParameters();
64+
lfoParameters.frequency_Hz = mParameters.modRate;
65+
lfo.setParameters(lfoParameters);
66+
6267
// initialize input chain parameters
6368
// preDelay.setDelay(mParameters.preDelay);
6469
inputFilter.setCutoffFrequency(13500);
@@ -144,7 +149,7 @@ void DattorroPlate::processBlock(juce::AudioBuffer<float>& buffer, juce::MidiBuf
144149
channelDataA[sample] += summingB * mParameters.decayTime;
145150

146151
// modulated APF1
147-
allpassOutput = modulatedAPF1.popSample(channel, modAPF1Delay + (lfoOutput.normalOutput * 12));
152+
allpassOutput = modulatedAPF1.popSample(channel, modAPF1Delay + (lfoOutput.normalOutput * 12 * mParameters.modDepth));
148153
feedback = allpassOutput * decayDiffusion1 * mParameters.diffusion;
149154
feedforward = -channelDataA[sample] - allpassOutput * decayDiffusion1 * mParameters.diffusion;
150155
modulatedAPF1.pushSample(channel, channelDataA[sample] + feedback);
@@ -188,9 +193,9 @@ void DattorroPlate::processBlock(juce::AudioBuffer<float>& buffer, juce::MidiBuf
188193

189194
// second fig-8 half
190195
channelDataB[sample] += summingA * mParameters.decayTime;
191-
196+
192197
// modulated APF2
193-
allpassOutput = modulatedAPF2.popSample(channel, modAPF2Delay + (lfoOutput.quadPhaseOutput_pos * 12));
198+
allpassOutput = modulatedAPF2.popSample(channel, modAPF2Delay + (lfoOutput.quadPhaseOutput_pos * 12 * mParameters.modDepth));
194199
feedback = allpassOutput * decayDiffusion2 * mParameters.diffusion;
195200
feedforward = -channelDataB[sample] - allpassOutput * decayDiffusion2 * mParameters.diffusion;
196201
modulatedAPF2.pushSample(channel, channelDataB[sample] + feedback);

0 commit comments

Comments
 (0)