0.6.0 ----- * Added support and examples for Android and iOS. * Added debugging definitions and related new functions in bw_common. * Added debugging code to bw_buf, bw_math, bw_note_queue, bw_rand, and bw_voice_alloc, and also partly to bw_one_pole. * Removed bw_config module. * Removed bw_omega_3log() and bw_omega_3lognr() from bw_math. * bw_one_pole_process*() now use BW_SIZE_T to count samples and channels. * bw_voice_alloc() now uses BW_SIZE_T to count voices. * Fixed bugs in bw_pow10f_3() and bw_acoshf_3(). * Fixed bug when using very high cutoff values in bw_one_pole. * Fixed bug when signal level is extremely low in bw_ppm. * Fixed harmless compiler warning in bw_randu32(). * Fixed number of channels in fx_reverb. * Fixed (unused) note velocity in synth_poly and synthpp_poly. 0.5.0 ----- * Added new bw_fuzz, bw_clip, bw_dist, bw_drive, bw_drywet, bw_reverb, bw_note_queue, and bw_voice_alloc modules. * Added new fx_fuzz, fx_clip, fx_dist, fx_drive, fx_reverb, synth_poly, fx_lp1, fx_one_pole, and fx_slew_lim examples. * Added C++ wrappers for all dsp modules and for bw_buf. * Added new corresponding C++ examples for each C example. * Added multichannel API to all dsp modules and to bw_buf. * Added new bw_buf_neg() routine to bw_buf. * Added new bw_gain_get_gain() function to bw_gain. * Changed mem_req/set API in bw_delay, bw_comb, bw_chorus, bw_reverb. * Turned gate parameter into a control-rate input in bw_env_gen. * bw_balance_process() and bw_pan_process() do not accept NULL buffers anymore. * Made VST3 and web examples' common code stricter and more redundant w.r.t. memory usage and finalization. * Fixed bug in bw_svf_process() occurring when only y_hp was NULL. * Fixed prewarping-related instability bug in bw_svf. * Fixed inverted-polarity modulation in bw_ringmod. * Fixed coefficients' reset in bw_phaser and bw_chorus. * Fixed initial conditions in bw_satur. * Fixed unused variable warnings in VST3 and Daisy Seed examples' common code. * Fixed unused variable warnings in bw_slew_lim. * Fixed left shift of negative value warnings in bw_math. * Fixed typos in the documentaion of bw_peak, bw_comp, bw_osc_tri, bw_ringmod, bw_balance, bw_slew_lim, and bw_common. * Fixed code tags and heading levels in documentation of several modules. * Fixed setting of default parameter values in synth_simple and synth_mono. * Updated examples to use multichannel APIs where possible. * Removed useless random state from synth_simple. * Now forcing minimum attack and release times for VCAs of synth examples. * Build system updated to emit as many compilation warnings as possible. 0.4.0 ----- * Added new bw_ringmod, bw_trem, bw_phaser, bw_delay, bw_src_int, bw_src, bw_comb, and bw_chorus modules. * Added new fx_ringmod, fx_trem, fx_phaser, fx_delay, fx_comb, fx_chorus, fx_vibrato, and fx_flanger examples. * Added MIDI over UART support for example synthesizers running on the Daisy Seed platform. * Added new bw_buf_add() and bw_buf_fill() routines to bw_buf. * Added new bw_ceilf(), bw_intfracf(), bw_sinhf_3(), bw_coshf_3(), bw_asinhf_3(), and bw_acoshf_3() math routines. * Added BW_SIZE_T definition to bw_common. * Added initial value parameters to bw_*_reset_state() in bw_{lp1,ap1,hp1,hs1,ls1,mm1,ap2,hs2,ls2,mm2,notch,peak,svf}. * Fixed typos in the documentation of bw_wah. * Fixed unused parameter warnings. * Now using bw_src_int in fx_satur. 0.3.0 ----- * Added new bw_ap1, bw_ap2, bw_balance, bw_bd_reduce, bw_buf, bw_comp, bw_hp1, bw_hs1, bw_hs2, bw_lp1, bw_ls1, bw_ls2, bw_mm1, bw_mm2, bw_notch, bw_noise_gate, bw_pan, bw_peak, bw_ppm, and bw_sr_reduce modules. * Added new fx_ap1, fx_ap2, fx_balance, fx_bitcrush, fx_comp, fx_eq_3band, fx_hp1, fx_hs1, fx_ls1, fx_mm1, fx_mm2, fx_noise_gate, fx_notch, fx_pan examples. * Added support and examples for the Daisy Seed platform. * Strengthened bw_svf algorithm for modulation and added prewarp_at_cutoff and prewarp_freq parameters. * Changed bw_wah to be a bandpass and not a lowpass filter. * Renamed bw_vol as bw_gain, added new smooth_tau parameter, and changed gain parameter API to express values in linear gain an dB. * Added new bw_log10f_3(), bw_pow10f_3(), bw_dB2linf_3(), and bw_lin2dBf_3() math routines. * Fixed computation bug in bw_sqrtf_2(). * Avoid a warning related to a potentially uninitialized variable in bw_env_gen. * Reworked example source code structure and Makefiles. * Stopped using dynamic memory allocation for individual modules in example code. * Adjusted noise levels in synth_mono example. * Added BW_RESTRICT to bw_svf_process1() arguments. * Fixed bad defintion of bw_pink_filt_set_sample_rate_scaling(). * Now using bw_ppm in synth_mono and synth_simple examples. * Moved header inclusions where most appropriate in bw_env_follow. * Added missing API documentation in bw_pink_filt. * Fixed typo in the documentation of bw_svf_set_Q(). * Fixed license headers in all source files. 0.2.0 ----- * Refactored API of DSP modules for better flexibility and performance. * Removed bw_inline_one_pole and bw_inline_slew_rate (functionality implemented by bw_one_pole and bw_slew_rate, respectively). * Added bw_wah and bw_example_fx_wah. * Added bw_satur and bw_example_fx_satur. * Added bw_pink_filt. * Added BW_RESTRICT and removed BW_MALLOC, BW_REALLOC, and BW_FREE from bw_common. * Added new monophonic synth example bw_example_synth_mono. * Added new bw_sin2pif_3(), bw_cos2pif_3(), bw_tan2pif_3(), bw_omega_3lognr(), and bw_tanhf_3() fast math routines. * Using bw_one_pole for smoothing bw_vol. * Simplified and rewritten example synth, renamed as bw_example_synth_simple. * Renamed bw_example_fx to bw_example_fx_svf are removed output "Level" parameter from it. * Using correct "Fx|Filter" VST3 subcategory for bw_example_fx_svf. * Correctly handling note on events with velocity 0 as note offs. * Using official logo as VST3 plugin icon. * Minor performance improvements in bw_svf. * Fixed potential bug when setting parameters in examples. * Fixed missing initialization of sticky mode in bw_one_pole. 0.1.0 ----- First release.