From 52233a9d63ff74e91060451063a8bd78d1bd94c8 Mon Sep 17 00:00:00 2001 From: Stefano D'Angelo Date: Mon, 14 Aug 2023 17:34:22 +0200 Subject: [PATCH] improved bw_drive algorithm + added notes to bw_osc_{pulse,tri} --- TODO | 3 +-- include/bw_drive.h | 35 ++++++++++++++++++++--------------- include/bw_osc_pulse.h | 4 ++-- include/bw_osc_tri.h | 4 ++-- 4 files changed, 25 insertions(+), 21 deletions(-) diff --git a/TODO b/TODO index a14cdb9..9c14fed 100644 --- a/TODO +++ b/TODO @@ -7,12 +7,11 @@ code: * osc post filter (and one pole init, slew rate, etc.) val from input? set state instead? * audio rate optional pulse width/slope inputs? * empty functions etc. to keep consistency and forward compatibility? -* should clip slope in triangle? * common smoothing policy (as control rate as possible?) - smoothing control? * svf bandpass out polarity too confusing (inverted in mm2)? * get_y_z1, common strategy? * bw_satur gain compensation to divide by actual gain (derivative) rather than gain parameter? -* add initial state (x0) to reset state of lp1, ap1, mm1, hs1, ls1, others? all? +* add initial state (x0) to reset state of all modules? * bw_comb: should also modulate feedback? * bw_comb: integer target delay values? * bw_svf/lp1 automatically limited (max) prewarp frequency to avoid instability? diff --git a/include/bw_drive.h b/include/bw_drive.h index 8fbfe89..85737ca 100644 --- a/include/bw_drive.h +++ b/include/bw_drive.h @@ -22,7 +22,8 @@ * module_type {{{ dsp }}} * version {{{ 1.0.0 }}} * requires {{{ - * bw_common bw_gain bw_math bw_mm2 bw_one_pole bw_peak bw_satur bw_svf + * bw_common bw_gain bw_lp1 bw_math bw_mm2 bw_one_pole bw_peak bw_satur + * bw_svf * }}} * description {{{ * Overdrive effect. @@ -33,6 +34,8 @@ *