Commit Graph

369 Commits

Author SHA1 Message Date
7d6409772f fixed and improved bw_src_int implementation 2023-09-13 16:55:06 +02:00
a3f42c8c57 finalized bw_satur + examples + fix reset in bw_clip 2023-09-13 13:23:15 +02:00
dae41a3831 finalized bw_clip + examples + stronger debug + uncheck coeffs in
process1
2023-09-13 11:36:26 +02:00
13987673f5 proper computing of initial values in finalized modules 2023-09-12 17:05:51 +02:00
1d763ef31e finalized bw_wah + examples 2023-09-12 16:49:33 +02:00
Stefano D'Angelo
524ce724bc set harder limits for gains in bw_{gain,hs1,hs2,ls1,ls2,peak} 2023-09-11 14:40:33 +02:00
Stefano D'Angelo
34402d720e now reset_state deals explicitly with initial values 2023-09-11 13:29:36 +02:00
Stefano D'Angelo
d9e021aca3 finalized bw_{notch,peak} + examples 2023-09-11 10:52:41 +02:00
Stefano D'Angelo
213bac4209 finalized bw_ls2 + fixed bw_hs2 prewarp cutoff + examples 2023-09-08 23:19:03 +02:00
Stefano D'Angelo
d50e7536d5 finalized bw_mm2 + examples 2023-09-08 22:21:08 +02:00
Stefano D'Angelo
04b027f564 finalize bw_hs2 (untested) + more debug in bw_{ls1,hs1} + fix doc 2023-09-08 07:42:53 +02:00
Stefano D'Angelo
b36a56ab70 fix bw_ap1 output polarity + finalize bw_ap2 + examples + cosmetics 2023-09-05 11:35:30 +02:00
Stefano D'Angelo
e12db3795a change bp polarity + limit prewarp in bw_svf + cosmetics 2023-09-05 09:46:09 +02:00
Stefano D'Angelo
a16cdd9c73 changed valid cutoff/prewarping range everywhere 2023-09-05 07:16:21 +02:00
Stefano D'Angelo
a7b3f5ce16 fix, finalize bw_svf + examples + more restrict + better debug 2023-09-03 20:22:52 +02:00
Stefano D'Angelo
72ba53385c finalize all 1st order filter modules and examples + bw_*_reset_state_multi() and init values + bw_gain get gain improv + use bw_gain_process1() in bw_dry_wet 2023-09-01 19:43:50 +02:00
Stefano D'Angelo
2d653f471f finalized bw_ls1 + examples + fix bw_hs1 changelog 2023-08-31 12:06:34 +02:00
Stefano D'Angelo
e4aef951f2 finalized bw_hs1 + examples 2023-08-31 10:47:20 +02:00
Stefano D'Angelo
003c3b62d7 fix bw_gain + finalize bw_mm1 + examples 2023-08-31 07:23:26 +02:00
Stefano D'Angelo
d5dda7f26b add coeffs to *state_is_valid everywhere it's implemented 2023-08-30 20:11:02 +02:00
Stefano D'Angelo
99afa41b8d almost finalized bw_gain + cosmetics 2023-08-30 19:42:06 +02:00
Stefano D'Angelo
537cd5d17b fix debug in bw_{one_pole,slew_lim,lp1,hp1} + force min out in bw_ppm + cosmetics 2023-08-30 17:54:09 +02:00
Stefano D'Angelo
d15e7951f7 finalize bw_hp1 + examples + fix bw_slew_lim + ChangeLogs/cosmetics 2023-08-30 17:12:27 +02:00
Stefano D'Angelo
637cefb636 added pragmas to calm gcc in bw_{env_gen,hs2,ls2,one_pole,peak} 2023-08-30 11:44:59 +02:00
Stefano D'Angelo
d2994b0e12 finalized bw_lp1, examples + more debug for bw_slew_lim + cosmetic changes 2023-08-30 11:00:11 +02:00
Stefano D'Angelo
e9a935a964 fix bw_one_pole + finalize and fix bw_slew_lim + update fx*slew_lim 2023-08-29 13:11:12 +02:00
Stefano D'Angelo
af2d21e45c finalize bw_one_pole + adjust example Makefiles + fix stupid bug in bw_dist 2023-08-29 10:49:08 +02:00
Stefano D'Angelo
26f98b3ec7 some code formatting and bug fix in bw_{note_queue,one_pole} 2023-08-28 19:42:35 +02:00
Stefano D'Angelo
2792602e2f some code formatting in bw_{buf,common,math,note_queue,rand,voice_alloc} 2023-08-28 17:19:19 +02:00
6c29b1f0cd wip on many modules, all is broken, all is good 2023-08-20 15:49:04 +02:00
fe02a79329 changed default gain compensation value in bw_{clip,satur} 2023-08-15 06:48:19 +02:00
da30569d61 changed bw_drive input gain to be more like other distortions 2023-08-15 06:37:51 +02:00
3d63665df2 adjusted peak cutoff in bw_dist 2023-08-15 06:26:27 +02:00
c9ca239a0b improved bw_fuzz algorithm + more bw_drive improvements 2023-08-15 05:28:55 +02:00
52233a9d63 improved bw_drive algorithm + added notes to bw_osc_{pulse,tri} 2023-08-14 17:34:22 +02:00
82f66009f7 cite scientific articles 2023-08-14 15:05:30 +02:00
c3d8546e75 ensure buffers are not NULL in bw_buf + remove useless array of nullptr
in synthpp_poly
2023-08-14 12:51:53 +02:00
4313cea18c renamed bw_env_gen_update_state_ctrl as bw_env_gen_process_ctrl 2023-08-14 12:22:56 +02:00
ee94fba57b now using backward Euler method in bw_one_pole 2023-08-14 12:11:11 +02:00
262d4f9a5d clarified buffer rules in bw_src* 2023-08-14 11:49:29 +02:00
12a574c07d restrict qualified everything 2023-08-14 09:57:06 +02:00
399325359d renamed bw_{drywet,ringmod} -> bw_{dry_wet,ring_mod} 2023-08-14 06:05:21 +02:00
6b38be600e updated init value name in bw_{slew_lim,one_pole} + updated TODO 2023-08-13 16:00:19 +02:00
ec1a70835c added const everywhere + fixed bw_buf + fixed c++ api in bw_src +
improved bw_src + using new buf api in synthpp_poly
2023-08-13 15:37:15 +02:00
61c2b48817 polished bw_{svf,wah} + removed bwpps + fixed examples 2023-08-13 11:55:25 +02:00
eb49fedd5e polished bw_src{,_int} + removed bwpps + fixed examples 2023-08-13 11:42:06 +02:00
a5e4fa0c76 polished bw_{reverb,ringmod,satur,slew_lim,sr_reduce,trem} + removed
bwpps + fixed examples
2023-08-13 11:18:45 +02:00
ccc94c1b0f polished + bw_{phaser,pink_filt,ppm} + removed bwpps + fixed examples 2023-08-13 06:57:50 +02:00
f55a9a146b polished bw_{pan,peak,phase_gen} + removed corresponding bwpp + fixed
examples
2023-08-13 06:36:35 +02:00
40503b7cb1 polished bw_osc* + removed bwpp_osc* + fixed examples 2023-08-13 05:28:45 +02:00
2a5d1721f8 polished bw_{mm1,mm2,noise_gate,noise_gen,notch} + removed corresponding bwpp and bwpp_note_queue + fixed examples 2023-08-13 04:55:29 +02:00
22030272d9 polished bw_{hp1,hs1,hs2,lp1,ls2,ls2} + removed corresponding bwpp_ +
fixed examples + fixed doc in bw_clip
2023-08-13 04:18:10 +02:00
7e32e18d66 polished bw_{env_follow,env_gen,fuzz,gain} + removed
bwpp_{env_follow,env_gen,fuzz,gain} + fix examples
2023-08-12 19:46:14 +02:00
f89188f790 polished bw_{delay,dist,drive,drywet} + removed
bwpp_{delay,dist,drive,drywet} + fixed doc in bw_{clip,comb,comp} + fixed examples
2023-08-12 18:45:19 +02:00
425aa020e1 polished bw_{comb,comp} + removed bwpp_{comb,comp} + fix examples 2023-08-12 18:00:12 +02:00
ac7d49028b polished bw_{chorus,clip} + removed bwpp_{chorus,clip} + fixed doc typos
in bw_{balance,bd_reduce} + fixed examples
2023-08-12 17:38:55 +02:00
7a2630951f polished bw_{balance,bd_reduce,one_pole} + removed
bwpp_{balance,bd_reduce} + fixed fxpp_bitcrush
2023-08-12 17:20:34 +02:00
5ec809bc4f polished bw_{ap1,ap2,one_pole} + removed bwpp_{ap1,ap2} + fixed examples 2023-08-12 16:51:19 +02:00
48275d077d improved bw_one_pole + removed bwpp_one_pole + c++ reshuffling 2023-08-12 10:15:04 +02:00
225ef9108c add overloaded C++ API w/ C-style arrays in bw_buf + update examples 2023-08-12 08:04:51 +02:00
3a948b1c99 improve arguments in bw_buf + remove BW_SIZE_T and use C++ buf api in examples 2023-08-11 16:54:01 +02:00
55a78a5ab4 done bw_{buf,common,math,note_queue,rand,voice_alloc} + related changes 2023-08-11 12:49:05 +02:00
41f56ec91c update doc and TODO 2023-08-11 10:25:41 +02:00
7616c590a0 fixed input validity ranges in bw_sinhf and bw_acoshf + doc and tests 2023-08-11 10:15:43 +02:00
Stefano D'Angelo
39bad57099 more of the same 2023-08-10 17:06:45 +02:00
Stefano D'Angelo
84d82d039b forgot to remove precision suffix to bw_sqrtf() in bw_peak 2023-08-10 16:19:20 +02:00
Stefano D'Angelo
0da7b31504 more bw_math doc improvements + more tests 2023-08-10 16:17:45 +02:00
Stefano D'Angelo
6e2f5b1bce now everything should work ok again 2023-08-10 10:17:22 +02:00
08c8656259 removing precision suffixes from bw_math functions (now all is broken) 2023-08-10 08:00:44 +02:00
ffe1db7749 updated bw_math ChangeLog + more math tests 2023-08-10 07:48:14 +02:00
88fad66dd6 bw_math: more improvements, more tests (prev commit: also fixes) 2023-08-09 19:17:54 +02:00
c25bd5bc78 bw_math wip + settling on c++11 + some tests 2023-08-09 13:11:09 +02:00
da517ed4bc using size_t and improved bw_common 2023-08-08 10:46:05 +02:00
fd6c9cc052 fix new doc mistake in bw_note_queue 2023-08-05 09:11:31 +02:00
d76aa6cb48 added missing doc 2023-08-05 08:58:45 +02:00
Stefano D'Angelo
ad115964a6 even better fix 2023-08-04 15:48:46 +02:00
Stefano D'Angelo
4542235dac oops, real fix 2023-08-04 15:43:30 +02:00
Stefano D'Angelo
046680c503 fix signedness warnings bw_voice_alloc 2023-08-04 15:41:31 +02:00
Stefano D'Angelo
6d92e83b57 improved android code + fixes in bw_ppm and bw_rand 2023-08-04 07:30:57 +02:00
Stefano D'Angelo
e82731e1f0 android support done + fixes bw_{note_queue,voice_alloc} 2023-07-30 09:48:56 +02:00
Stefano D'Angelo
c2769cdf21 beginning of android + moved config.js files to src + temp warn fix in bw_one_pole 2023-07-26 18:38:21 +02:00
Stefano D'Angelo
d9272453fd const arg for bw_note_queue_is_valid() + bw_one_pole_process{_multi} use BW_SIZE_T + beginning of debugging code in bw_one_pole 2023-07-25 15:03:29 +02:00
Stefano D'Angelo
8299cb7eae use NDEBUG in examples + fix velocity in synth(pp)_poly + really remove bw_omega* + fix bw_math + fix high cutoff in bw_one_pole + debugging in bw_{note_queue,rand,voice_alloc} 2023-07-25 08:52:01 +02:00
Stefano D'Angelo
681008abdb fix bw_acoshf_3 2023-07-24 16:39:57 +02:00
Stefano D'Angelo
cd71cd9063 deep debug + removed bw_omega* + math debug + fixed bw_pow10f_3 2023-07-24 16:14:16 +02:00
Stefano D'Angelo
b08d9ae4f0 removed bw_config + beginning of debug (bw_common, bw_buf) 2023-07-21 08:56:27 +02:00
Stefano D'Angelo
41e87b69a4 fixed typo in bw_common doc + updated ChangeLog 2023-07-13 16:40:31 +02:00
Stefano D'Angelo
1cf8c1050b doc trivia 2023-07-13 12:35:37 +02:00
Stefano D'Angelo
bddbf72462 c++ doc 2023-07-12 12:07:50 +02:00
Stefano D'Angelo
bd3a6367e0 bw_voice_alloc_mode -> bw_voice_alloc_priority + finished C doc 2023-07-12 10:52:16 +02:00
b2cb3cad1e multichannel api in bw(pp)_src(_int) 2023-07-04 15:33:18 +02:00
6e1212d8f5 multichannel api in bw_buf + bwpp_buf + adjusted synth(pp)_poly 2023-07-04 11:06:34 +02:00
c4074927ce multichannel api for bw(pp)_{noise_gen,osc_filt,osc_saw,osc_sin,pink_filt,sr_reduce} 2023-07-04 09:34:37 +02:00
Stefano D'Angelo
b192b4baa6 fix bwpp_comb + fxpp_comb 2023-07-01 11:12:48 +02:00
Stefano D'Angelo
6326eed219 change default delay length in bwpp_chorus + fxpp_chorus 2023-07-01 10:22:40 +02:00
Stefano D'Angelo
1a4ada6ef6 tentative bwpp_{chorus,comb,reverb} 2023-07-01 09:56:10 +02:00
ebf1712e74 bwpp_{src,delay} + fxpp_delay 2023-07-01 07:33:21 +02:00
de52df395e bwpp_note_queue + synthpp_poly + inline all C++ methods 2023-06-30 19:44:02 +02:00
5245adea14 synthpp_mono + fix bwpp_{noise_gen,osc_tri,pink_filt} and synth* 2023-06-28 10:48:08 +02:00
1b8e4c56e3 synthpp_simple + fixes in bwpp_{osc_filt,osc_pulse,phase_gen} 2023-06-28 08:07:25 +02:00
d01e558622 bwpp_{env_gen,osc_sin,osc_filt} 2023-06-28 07:14:49 +02:00
fccb7712a9 bwpp_{phase_gen,osc_saw,osc_pulse,osc_tri} 2023-06-27 18:01:25 +02:00
7a0c76652f bwpp_{drywet,env_follow,gain,pink_filt,ringmod} + using BW_SIZE_T to index channels 2023-06-27 16:51:53 +02:00
768aa6d81e bwpp_pan + fxpp_pan + use process_multi in fx_balance, fx_pan 2023-06-27 15:55:37 +02:00
Stefano D'Angelo
8c83345f25 bwpp_{phaser,trem} + fxpp_{phaser,trem} 2023-06-26 11:52:35 +02:00
Stefano D'Angelo
4dd9e863ce bwpp_{satur,noise_gate,noise_gen} + fxpp_{satur,noise_gate} 2023-06-26 11:19:08 +02:00
2a5e3d3ece bwpp_{dist,drive,fuzz} + fxpp_{dist,drive,fuzz} 2023-06-25 16:40:30 +02:00
dccc39907e bwpp_comp + fxpp_comp 2023-06-25 11:38:01 +02:00
e331ce1125 bwpp_{bd_reduce,src_reduce,clip,src_int} + fxpp_{bitcrush,clip} 2023-06-25 10:58:47 +02:00
063d4ffb02 bwpp_{ppm,balance} + fxpp_balance 2023-06-22 16:29:06 +02:00
13223ea427 fix bwpp_slew_lim. unused param warn in bw_slew_lim + fx(pp)_{one_pole,slew_lim} 2023-06-21 17:57:05 +02:00
1092dc14af new bwpp_{mm1,mm2,slew_lim}, fxpp_{mm1,mm2} 2023-06-21 17:02:32 +02:00
Stefano D'Angelo
65bc52b55e new bwpp_{notch,wah} + examples 2023-06-20 15:12:45 +02:00
dbff09f83c welcome bwpp_peak and fxpp_eq_3band 2023-06-19 18:40:00 +02:00
a04e9a2d07 more c++ wrappers 2023-06-19 18:06:19 +02:00
b16a964498 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
Stefano D'Angelo
c1f58ba76d new bwpp_svf, fxpp_svf + free mem, stronger, cleaner vst3 and web wrappers 2023-06-19 15:26:21 +02:00
Stefano D'Angelo
8cd630c80e better note stealing in bw_voice_alloc 2023-06-09 09:47:05 +02:00
6cecf0d654 fix bw_{note_queue,voice_alloc}, synth_poly begins to work 2023-06-08 09:35:36 +02:00
b2169b6792 multichannel + no NULL to bw_{balance,pan}_process + fix doc, bw_svf_process 2023-06-07 15:41:20 +02:00
20775c532e change bw_env_gen gate api, no unison in bw_voice_alloc, started synth_poly 2023-06-06 16:17:47 +02:00
9d699fe554 bw_voice_alloc should be ok, cosmetic changes to bw_note_queue 2023-06-06 08:08:39 +02:00
5c2030bf97 bw_note_queue and bw_voice_alloc progress 2023-06-05 18:41:14 +02:00
ee4fa3c9f2 tentative bw_note_queue + beginning of bw_voice(_alloc) 2023-06-05 11:30:38 +02:00
Stefano D'Angelo
c3dff38987 fixed bw_reverb reset bug 2023-06-02 14:31:24 +02:00
Stefano D'Angelo
78e8b911c7 bw_reverb done 2023-06-02 14:10:05 +02:00
Stefano D'Angelo
71a2a00eaf more reverb work 2023-06-02 12:20:01 +02:00
Stefano D'Angelo
8136a09e72 updated mem_req/set in bw_{delay,comb,chorus,reverb} and fxs + more reverb work 2023-06-02 10:50:42 +02:00
1b6cb5a029 bw_reverb WIP (broken) 2023-06-01 17:41:05 +02:00
5d988b0c05 bw_drywet fixed + beginning of bw_reverb, fx_reverb 2023-06-01 13:39:47 +02:00
695dca5769 new bw_gain_get_gain() + fixed bw_ringmod inv polarity and doc +
tentative bw_drywet
2023-06-01 12:20:37 +02:00
44691855ae cosmetic doc change in most modules 2023-05-29 13:51:57 +02:00
5201d3363a fix reset in bw_{chorus,phaser} + better enum param name in fx_chorus 2023-05-29 11:50:16 +02:00
47cdfb4ee1 fixed doc typos 2023-05-29 10:13:13 +02:00
60ca76b9a3 added bw_buf_neg() 2023-05-12 08:03:45 +02:00
37415a0b0e fixed bw_drive, new example fx_drive 2023-05-10 11:16:38 +02:00
a8f594916c tentative new module bw_drive 2023-05-10 10:56:02 +02:00
7f42cb70d9 fix bw_dist 2023-05-10 09:34:03 +02:00
Stefano D'Angelo
468f66453b fixed bw_svf prewarp-related instability bug 2023-05-09 14:31:42 +02:00
Stefano D'Angelo
2d101a315e fixed initial state in bw_clip and bw_satur 2023-04-29 06:34:19 +02:00
b811796e35 beginning of bw_dist and fx_dist + fix bw_peak doc and bw_fuzz init 2023-04-26 03:21:20 +02:00
e6466ce0c8 new bw_clip and fx_clip 2023-04-26 01:48:01 +02:00
175481e4a5 hello bw_fuzz and fx_fuzz 2023-04-25 12:01:54 +02:00
99ccb2da2d more of that 2023-04-21 06:12:09 +02:00
85488e76a8 fix heading level of some doc in bw_{chorus,comb,delay} 2023-04-21 06:07:50 +02:00
86df4d4580 fix left shift negative value warning in bw_math 2023-04-21 05:28:15 +02:00
4d9de61a9c fix code quote in doc of bw_peak 2023-04-20 02:03:28 +02:00
9322e658b4 fix code quotes in doc of many modules 2023-04-20 01:46:41 +02:00
Stefano D'Angelo
b91a0f8e54 added x0 to reset_state in bw_{lp1,ap1,hp1,hs1,ls1,mm1}, adjusted bw_phaser and examples 2023-04-19 08:33:18 +02:00
b741611b26 removed useless cast from bw_src_int 2023-04-08 10:01:55 +02:00