Merge branch 'master' of https://github.com/calf-studio-gear/calf
[calf.git] / ChangeLog
blobba206d40a8c46e9738da8856f31168016293aea2
1 Version 0.0.60.0 (unreleased)
2 + Awesome new bitmap-based GUI by Markus Schmidt
3 + New plugins by Markus Schmidt and Christian Holschuh:
4   * several EQs (5, 8, 12 bands)
5   * new compressors/limiters/gates (sidechain, multiband, deesser)
6   * spectral analyzer/spectrogram plugin
7   * new distortion plugins (based on code by Tom Szilagyi)
8   * amplitude modulator plugin (pulsator)
9   * transient designer
10 + Other plugins
11   * crossover plugins (Damien Zammit)
12   * emphasis - industry standard EQ curves (Damien Zammit)
13   * Haas stereo enhancer (Vladimir Sadovnikov)
14   * compensation delay line (Vladimir Sadovnikov)
15 + New experimental plugin - a simple wrapper for Fluidsynth
16 + JACK host: save/load of sessions
17 + JACK host: auto-connection (incompatible with session managers)
18 + Vintage Delay: fix another reinitialisation bug that caused, 
19   noise bursts on enable/disable, add Width and LR/RL modes
20 + Bypass feature on some plugins
21 + many improvements to Monosynth:
22   * modulation matrix (not compatible with all plugin standards yet)
23   * PWM in both oscillators
24   * stretch (pseudo-hard-sync) for oscillator 1
25   * detune scaling (depending on pitch)
26   * second envelope
27 + envelopes now have an extra stage called 'Fade': when enabled,
28   it replaces Sustain with either ramp down to 0% or ramp up to 100%
29 + more options in the build system (LASH use can now be disabled)
30 + support for LADISH level 1 in calfjackhost (SIGUSR1-triggered Save)
31 + uses more recent LV2 extensions (external UI, persist and others)
32 + many bugfixes
33 - removed small plugins - if anyone's interested, please use the old code
34   in some new project
36 Version 0.0.18.6
38 + LADSPA: do not delete singletons after .so is unloaded
39 + Rotary speaker: fix spelling of plugin class
41 Version 0.0.18.5
43 + Vintage Delay: clear buffer on startup and reactivation
44 + GUI: fix dodgy icons
45 + JACK host: fix a problem with numeric variant of -M option and the new
46   versions of JACK
48 Version 0.0.18.4
50 + Framework: gcc-4.4 compilation fix (Orcan Ogetbil)
52 Version 0.0.18.3
54 + Framework: do not use x86 assembler code on non-x86 platforms
55 + Monosynth, Organ: fix serious audio quality issues
56 + Monosynth: implement inertia for cutoff knob and pitch bend, make
57   pitch bend range adjustable
58 + Organ: fix polyphony limit bug
60 Version 0.0.18.2
62 + Organ: fix voice stealing of released notes, sort out GUI, add quadratic
63   mode for amplitude envelope (enabled by default) - sounds more natural
64 + Monosynth: fix the bug that caused JACK to kick the client out due
65   to precalculating waves in a completely wrong place, fix portamento
66   for off-stack notes
67 + Presets: 3 new presets for Organ, 4 for Monosynth, 2 for Reverb
69 Version 0.0.18.1
71 + Filter: fixed subtle redraw bugs
72 + Icons: fixed packaging-incompatible paths
74 Version 0.0.18
76 + Filterclavier: new plugin (a MIDI controlled filter) by Hans Baier
77 + DSSI: added a basic implementation of live graphs. The graphs have a
78   limited resolution (128 data points), and are rather inefficient
79   (as the graph data need to be transmitted via OSC to a different
80   process), but it's better than nothing
81 + GUI: Torben Hohn's drawing optimizations (critical for Intel graphics
82   cards, but should also reduce CPU usage on other hardware)
83 + Phaser: added frequency response graph
84 + JACK host: discontinue the broken option -p; allow giving preset names
85   after a colon sign (reverb:DiscoVerb instead of -p DiscoVerb reverb)
86 + Reverb: less modulation; tone controls; 2 more room types
87 + MultiChorus: add double bandpass filter on input
88 + GUI: added frequency grid
89 + Organ: added progress reporting on load (works with JACK host and LV2)
90 + JACK host: use sensible port names (possibly breaking new LASH sessions)
91 + Organ: added polyphony limit
92 + Small plugins: added support for polymorphic port extension to allow
93   the same plugins to be used for control and audio signals
94 + DSSI: renamed all the plugins from "plugin LADSPA" to "plugin DSSI"
95 + LADSPA: more reasonable default value hints, fixed locale issue in LRDF
96 + JACK host: added icons by Thorsten Wilms (thanks!)
97 + Organ, Monosynth: better memory usage
98 + LV2: attempt at supporting configure-like parameters (key mapping curve
99   in Organ) by the new String Port extension
100 + AutoHell: header files are not installed anymore (they are of little
101   use anyway)
102 + AutoHell: configure script prints if --enable-experimental was specified
104 Version 0.0.17
106 + Compressor: new plugin by Thor Harald Johansen
107 + GUI: control improvements (new LED control, improved VU meter, XML
108   improvements, line graph with dots and grid lines - no legend yet), move
109   autolayout code from the plugin libraries to makerdf executable,
110 + Most plugins: use custom GUI layouts instead of autogenerated ones
111 + Most plugins: add dry amount (for aux bus type uses)
112 + Flanger, Filter, MultiChorus: added live graphs displaying frequency
113   response and (in case of MultiChorus) LFO positions
114 + LV2 GUI: added a way to display live graphs in Ardour and Zynjacku/LV2Rack
115   (only works when the plugin and the GUI are in the same process)
116 + Framework: general improvements/cleanups to reduce the chance of the
117   kind of errors that were introduced in 0.0.16 and reduce dependencies
118 + Monosynth: removed soft clipper on output
120 Version 0.0.16.3
122 + Fixed compilation without LV2 core installed
124 Version 0.0.16.2
126 + Fixed DSSI GUI for MultiChorus
127 + Fixed LV2 GUI for MultiChorus
128 + Make knob control mouse wheel handling work better in Ingen
130 Version 0.0.16
132 + New MultiChorus plugin (stereo multitap chorus with maximum of 8 voices)
133 + Experimental set of plugins for modular synthesizers like Ingen by 
134   Dave Robillard (enabled using --enable-experimental option in configure
135   script)
136 + Minor improvements to other plugins (like Rotary Speaker)
137 + More work on API documentation
139 Version 0.0.15
141 + Organ: new percussive section, using 2-operator FM synthesis for
142   monophonic or polyphonic percussive attack; added global transpose and
143   detune; rearrangement of controls between sections
144 + Rotary Speaker: another attempt at making it useful (thanks FishB8)
145 + JACK host: eliminate deadlock on exit
146 + GUI: bipolar knobs now have a "dead zone" (magnet) in the middle point
147 + GUI: dragging a knob with SHIFT held allows for fine adjustments
148 + GUI: new controls - curve editor and keyboard
149 + LV2: improved extension support (supports my "extended port properties"
150   extension now)
151 + Added some API documentation
153 Version 0.0.14
154 + OSC: totally new OSC wrapper, to allow for realtime-safe parsing (doesn't
155   matter as far as functionality goes, will probably be rewritten again
156   anyway)
157 + Everything: memory management fixes (should improve stability and
158   compatibility)
159 + Organ: improved memory usage
160 + GUI: improved bipolar knobs, added endless knobs
161 + Presets: separate 'built-in' and 'user' presets (so that built-in presets
162   can be upgraded without affecting user's own presets)
163 + Monosynth: new presets
165 Version 0.0.13
166 + Fixed several problems related to 64-bit environments and OpenSUSE (thanks
167 oc2pus!)
168 + Added NOCONFIGURE environment variable support to autogen.sh
170 Version 0.0.12
171 + RotarySpeaker: work in progress; enabled by default just in case it's
172   useful for anyone
173 + Organ: reworked to add a complete subtractive synth section, a selection
174   of waveform (settable on a per-drawbar basis), individual settings of
175   phase, detune, panning, routing for each drawbar, as well as improved(?)
176   percussive section and vibrato/phaser section. It is usable (and sounds
177   good!), but some parameters, waveform set etc. may change in future. May
178   take up to 100 MB of RAM due to pre-calculated bandlimited waveforms.
179 + Added half-complete implementation of LV2 (including GUI and events).
180 + Lots of small "polishing" kind of fixes in many places (like proper
181   rounding of values in the GUIs, another set of hold/sostenuto fixes etc)
183 Version 0.0.11
185 + Fixed x86-64 bugs
186 + JackHost: implemented LASH support
187 + RotarySpeaker: fixed panning bug, implemented acceleration/decceleration
188   for "off" state
190 Version 0.0.10
192 + First attempt at DSSI GUI, does not support some features from JACK host,
193   but that's inevitable because of API limitations
194 + Reverb: improvements (more parameters, fixed denormals)
195 + Knob: added custom support for scroll wheel (instead of one inherited from
196   GtkRange)
198 Version 0.0.9
200 + started creating an XML-based GUI
201 + LineGraph: new GTK+ control for displaying waveforms and filter response
202   graphs in Monosynth (and maybe others in future)
203 + Monosynth: notch filter changes (made notch bandwidth proportional to Q,
204   just for fun, might be a bad idea)
205 + Monosynth: more waveforms (these might be final?)
206 + Monosynth: capped Sustain level to 0.999 so that decay time actually means
207   something with Sustain = 100% (not a great way to do it, but acceptable in
208   this case)
209 + Monosynth: GUI refreshes less often (which means less CPU use)
210 + Monosynth: less clicks on sounds using LP filter with very low cutoff 
211   (using ramp of 256 samples instead of 64 samples as before)
212 + Knob: new GTK+ control based on GtkRange, with my primitive bitmap set
213   (generated with Python and Cairo)
214 + Organ: added a GUI too, very provisional
215 + Organ: fixed Hold pedal (doesn't release the notes which are still depressed)
216 + RotarySpeaker: new effect (split off Organ)
217 + all: denormal fixes (still some denormals present in reverb)
218 + Reverb: better time setting (decay time somewhat corresponds to -60dB
219   attenuation time)
220 + JackHost: -M switch allows for automatic connection to JACK MIDI event source
221   (use -M system:midi_capture_2 or -M 2 for autoconnection to
222   system:midi_capture_2; of course, the short numeric form only work for
223   system:midi_capture_ ports)
224 + JackHost: -p switch selects a preset automatically
225 + JackHost: better size setting algorithm
226 + JackHost: duplicate client name (causing JACK to rename the client) doesn't
227   break autoconnecting functionality
228 + autotools configuration update (detect Cairo and require newer GTK+)
229 + more presets