From bbaff2f4c5d379276034976503ce026dbd153132 Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Sun, 7 Nov 2021 20:44:12 -0600 Subject: Fix: frequency modulation implementation to be correct :| --- klangfarbrs/src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'klangfarbrs') diff --git a/klangfarbrs/src/lib.rs b/klangfarbrs/src/lib.rs index 07e9cc7..fafb5c0 100644 --- a/klangfarbrs/src/lib.rs +++ b/klangfarbrs/src/lib.rs @@ -157,7 +157,7 @@ impl MonoSynth { release: 0, cutoff: 0.0, frequency_modulation: false, - fm_frequency: 30000.0, + fm_frequency: 10.0, fm_depth: 0.1, fm_phasor: Phasor { phase: 0.0 } } @@ -234,7 +234,7 @@ impl MonoSynth { if self.frequency_modulation { let modulation_value = Osc::generate_sample(&Waveform::Sine, self.fm_phasor.phase) * self.fm_depth; self.fm_phasor.phase = self.fm_phasor.next_phase(self.fm_frequency, self.sample_rate); - next_phase = self.phasor.next_phase(self.frequency * modulation_value, self.sample_rate); + next_phase = self.phasor.next_phase(self.frequency + modulation_value, self.sample_rate); } else { next_phase = self.phasor.next_phase(self.frequency, self.sample_rate); } -- cgit v1.2.3