mirror of
https://codeberg.org/armin/monostep.git
synced 2026-09-01 04:10:46 +02:00
Add delay and reverb FX section with full DSP
Rename the DIST section to FX and expand it with tempo-synced delay (Time/Strength/Sync) and Schroeder reverb (Roomsize/Strength/Diffusion). New FxProcessor runs post-voice on the stereo bus; widen the editor to 1280px to fit the new section. Add a TestHost check that the FX tail rings out after note release.
This commit is contained in:
parent
a45006c201
commit
342d413563
8 changed files with 505 additions and 23 deletions
|
|
@ -3,6 +3,7 @@
|
|||
#include <JuceHeader.h>
|
||||
#include "dsp/SynthVoice.h"
|
||||
#include "dsp/StepSequencer.h"
|
||||
#include "dsp/FxProcessor.h"
|
||||
|
||||
class MonostepAudioProcessor final : public juce::AudioProcessor
|
||||
{
|
||||
|
|
@ -20,7 +21,7 @@ public:
|
|||
const juce::String getName() const override { return "Monostep"; }
|
||||
bool acceptsMidi() const override { return true; }
|
||||
bool producesMidi() const override { return false; }
|
||||
double getTailLengthSeconds() const override { return 0.0; }
|
||||
double getTailLengthSeconds() const override { return 4.0; }
|
||||
|
||||
int getNumPrograms() override { return 1; }
|
||||
int getCurrentProgram() override { return 0; }
|
||||
|
|
@ -106,9 +107,16 @@ private:
|
|||
std::atomic<float>* ringModParam = nullptr;
|
||||
std::atomic<float>* accentParam = nullptr;
|
||||
std::atomic<float>* seqRetrigParam = nullptr;
|
||||
std::atomic<float>* delayTimeParam = nullptr;
|
||||
std::atomic<float>* delayStrengthParam = nullptr;
|
||||
std::atomic<float>* delaySyncParam = nullptr;
|
||||
std::atomic<float>* reverbRoomParam = nullptr;
|
||||
std::atomic<float>* reverbStrengthParam = nullptr;
|
||||
std::atomic<float>* reverbDiffusionParam = nullptr;
|
||||
|
||||
monostep::StepSequencer sequencer;
|
||||
monostep::SynthVoice voice;
|
||||
monostep::FxProcessor fx;
|
||||
juce::AudioBuffer<float> scratch;
|
||||
juce::Random random;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue