Skip to content

Commit

Permalink
take 68
Browse files Browse the repository at this point in the history
  • Loading branch information
sjoerdvankreel committed Sep 21, 2024
1 parent 5c842b7 commit 7930c4e
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
2 changes: 1 addition & 1 deletion changelog.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### ?, ? - V1.9.3.

- Added free-running smooth noise as a new LFO type.
- Added free-running smooth noise as a new LFO type. Note - consecutive cycles are not smooth by themselves so you still need to use the LFO filter to get a real smooth signal.
- Bugfix in generating random numbers for the per-voice-random cv source (they weren't all that random).
- Breaking change: lfo noise generators become phase-based sampling functions to prevent drift.
* This causes small and possibly audible differences for the (free-running-) static and smooth lfos, sorry, but was needed to keep engine and ui in check.
Expand Down
4 changes: 2 additions & 2 deletions src/firefly_synth/firefly_synth/lfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -610,9 +610,9 @@ lfo_engine::reset_graph(
if (seen_rand_seed)
{
if(is_noise_static(block_auto[param_shape][0].step()))
_static_noise.init(new_rand_seed, block_auto[param_steps][0].step(), false);
_static_noise.init(new_rand_seed, block_auto[param_steps][0].step());
else
_smooth_noise.init(new_rand_seed, block_auto[param_steps][0].step(), false);
_smooth_noise.init(new_rand_seed, block_auto[param_steps][0].step());
}

_noise_graph_was_init = true;
Expand Down
8 changes: 4 additions & 4 deletions src/firefly_synth/firefly_synth/noise_generator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,17 +32,17 @@ class noise_generator

public:
float at(float phase) const;
void init(int seed, int steps);
int seed() const { return _seed; }
void init(int seed, int steps, bool connect);
void resample() { init(_state, _steps, true); }; // for free-run
void resample() { init(_state, _steps); }; // for free-run

noise_generator() {} // needs init
noise_generator(int seed, int steps)
{ init(plugin_base::fast_rand_seed(seed), steps, false); }
{ init(plugin_base::fast_rand_seed(seed), steps); }
};

template <bool Smooth> inline void
noise_generator<Smooth>::init(int seed, int steps, bool connect)
noise_generator<Smooth>::init(int seed, int steps)
{
_seed = seed;
_state = seed;
Expand Down

0 comments on commit 7930c4e

Please sign in to comment.