File calf.changes of Package calf

Tue Dec  8 05:24:35 UTC 2015 -

- initial
Version (unreleased)
+ Awesome new bitmap-based GUI by Markus Schmidt
+ New plugins by Markus Schmidt and Christian Holschuh:
  * several EQs (5, 8, 12 bands)
  * new compressors/limiters/gates (sidechain, multiband, deesser)
  * spectral analyzer/spectrogram plugin
  * new distortion plugins (based on code by Tom Szilagyi)
  * amplitude modulator plugin (pulsator)
  * transient designer
+ Other plugins
  * crossover plugins (Damien Zammit)
  * emphasis - industry standard EQ curves (Damien Zammit)
  * Haas stereo enhancer (Vladimir Sadovnikov)
  * compensation delay line (Vladimir Sadovnikov)
+ New experimental plugin - a simple wrapper for Fluidsynth
+ JACK host: save/load of sessions
+ JACK host: auto-connection (incompatible with session managers)
+ Vintage Delay: fix another reinitialisation bug that caused,
  noise bursts on enable/disable, add Width and LR/RL modes
+ Bypass feature on some plugins
+ many improvements to Monosynth:
  * modulation matrix (not compatible with all plugin standards yet)
  * PWM in both oscillators
  * stretch (pseudo-hard-sync) for oscillator 1
  * detune scaling (depending on pitch)
  * second envelope
+ envelopes now have an extra stage called 'Fade': when enabled,
  it replaces Sustain with either ramp down to 0% or ramp up to 100%
+ more options in the build system (LASH use can now be disabled)
+ support for LADISH level 1 in calfjackhost (SIGUSR1-triggered Save)
+ uses more recent LV2 extensions (external UI, persist and others)
+ many bugfixes
- removed small plugins - if anyone's interested, please use the old code
  in some new project


+ LADSPA: do not delete singletons after .so is unloaded
+ Rotary speaker: fix spelling of plugin class


+ Vintage Delay: clear buffer on startup and reactivation
+ GUI: fix dodgy icons
+ JACK host: fix a problem with numeric variant of -M option and the new
  versions of JACK


+ Framework: gcc-4.4 compilation fix (Orcan Ogetbil)


+ Framework: do not use x86 assembler code on non-x86 platforms
+ Monosynth, Organ: fix serious audio quality issues
+ Monosynth: implement inertia for cutoff knob and pitch bend, make
  pitch bend range adjustable
+ Organ: fix polyphony limit bug


+ Organ: fix voice stealing of released notes, sort out GUI, add quadratic
  mode for amplitude envelope (enabled by default) - sounds more natural
+ Monosynth: fix the bug that caused JACK to kick the client out due
  to precalculating waves in a completely wrong place, fix portamento
  for off-stack notes
+ Presets: 3 new presets for Organ, 4 for Monosynth, 2 for Reverb


+ Filter: fixed subtle redraw bugs
+ Icons: fixed packaging-incompatible paths

Version 0.0.18

+ Filterclavier: new plugin (a MIDI controlled filter) by Hans Baier
+ DSSI: added a basic implementation of live graphs. The graphs have a
  limited resolution (128 data points), and are rather inefficient
  (as the graph data need to be transmitted via OSC to a different
  process), but it's better than nothing
+ GUI: Torben Hohn's drawing optimizations (critical for Intel graphics
  cards, but should also reduce CPU usage on other hardware)
+ Phaser: added frequency response graph
+ JACK host: discontinue the broken option -p; allow giving preset names
  after a colon sign (reverb:DiscoVerb instead of -p DiscoVerb reverb)
+ Reverb: less modulation; tone controls; 2 more room types
+ MultiChorus: add double bandpass filter on input
+ GUI: added frequency grid
+ Organ: added progress reporting on load (works with JACK host and LV2)
+ JACK host: use sensible port names (possibly breaking new LASH sessions)
+ Organ: added polyphony limit
+ Small plugins: added support for polymorphic port extension to allow
  the same plugins to be used for control and audio signals
+ DSSI: renamed all the plugins from "plugin LADSPA" to "plugin DSSI"
+ LADSPA: more reasonable default value hints, fixed locale issue in LRDF
+ JACK host: added icons by Thorsten Wilms (thanks!)
+ Organ, Monosynth: better memory usage
+ LV2: attempt at supporting configure-like parameters (key mapping curve
  in Organ) by the new String Port extension
+ AutoHell: header files are not installed anymore (they are of little
  use anyway)
+ AutoHell: configure script prints if --enable-experimental was specified

Version 0.0.17

+ Compressor: new plugin by Thor Harald Johansen
+ GUI: control improvements (new LED control, improved VU meter, XML
  improvements, line graph with dots and grid lines - no legend yet), move
  autolayout code from the plugin libraries to makerdf executable,
+ Most plugins: use custom GUI layouts instead of autogenerated ones
+ Most plugins: add dry amount (for aux bus type uses)
+ Flanger, Filter, MultiChorus: added live graphs displaying frequency
  response and (in case of MultiChorus) LFO positions
+ LV2 GUI: added a way to display live graphs in Ardour and Zynjacku/LV2Rack
  (only works when the plugin and the GUI are in the same process)
+ Framework: general improvements/cleanups to reduce the chance of the
  kind of errors that were introduced in 0.0.16 and reduce dependencies
+ Monosynth: removed soft clipper on output


+ Fixed compilation without LV2 core installed


+ Fixed DSSI GUI for MultiChorus
+ Fixed LV2 GUI for MultiChorus
+ Make knob control mouse wheel handling work better in Ingen

Version 0.0.16

+ New MultiChorus plugin (stereo multitap chorus with maximum of 8 voices)
+ Experimental set of plugins for modular synthesizers like Ingen by
  Dave Robillard (enabled using --enable-experimental option in configure
+ Minor improvements to other plugins (like Rotary Speaker)
+ More work on API documentation

Version 0.0.15

+ Organ: new percussive section, using 2-operator FM synthesis for
  monophonic or polyphonic percussive attack; added global transpose and
  detune; rearrangement of controls between sections
+ Rotary Speaker: another attempt at making it useful (thanks FishB8)
+ JACK host: eliminate deadlock on exit
+ GUI: bipolar knobs now have a "dead zone" (magnet) in the middle point
+ GUI: dragging a knob with SHIFT held allows for fine adjustments
+ GUI: new controls - curve editor and keyboard
+ LV2: improved extension support (supports my "extended port properties"
  extension now)
+ Added some API documentation

Version 0.0.14
+ OSC: totally new OSC wrapper, to allow for realtime-safe parsing (doesn't
  matter as far as functionality goes, will probably be rewritten again
+ Everything: memory management fixes (should improve stability and
+ Organ: improved memory usage
+ GUI: improved bipolar knobs, added endless knobs
+ Presets: separate 'built-in' and 'user' presets (so that built-in presets
  can be upgraded without affecting user's own presets)
+ Monosynth: new presets

Version 0.0.13
+ Fixed several problems related to 64-bit environments and OpenSUSE (thanks
+ Added NOCONFIGURE environment variable support to

Version 0.0.12
+ RotarySpeaker: work in progress; enabled by default just in case it's
  useful for anyone
+ Organ: reworked to add a complete subtractive synth section, a selection
  of waveform (settable on a per-drawbar basis), individual settings of
  phase, detune, panning, routing for each drawbar, as well as improved(?)
  percussive section and vibrato/phaser section. It is usable (and sounds
  good!), but some parameters, waveform set etc. may change in future. May
  take up to 100 MB of RAM due to pre-calculated bandlimited waveforms.
+ Added half-complete implementation of LV2 (including GUI and events).
+ Lots of small "polishing" kind of fixes in many places (like proper
  rounding of values in the GUIs, another set of hold/sostenuto fixes etc)

Version 0.0.11

+ Fixed x86-64 bugs
+ JackHost: implemented LASH support
+ RotarySpeaker: fixed panning bug, implemented acceleration/decceleration
  for "off" state

Version 0.0.10

+ First attempt at DSSI GUI, does not support some features from JACK host,
  but that's inevitable because of API limitations
+ Reverb: improvements (more parameters, fixed denormals)
+ Knob: added custom support for scroll wheel (instead of one inherited from

Version 0.0.9

+ started creating an XML-based GUI
+ LineGraph: new GTK+ control for displaying waveforms and filter response
  graphs in Monosynth (and maybe others in future)
+ Monosynth: notch filter changes (made notch bandwidth proportional to Q,
  just for fun, might be a bad idea)
+ Monosynth: more waveforms (these might be final?)
+ Monosynth: capped Sustain level to 0.999 so that decay time actually means
  something with Sustain = 100% (not a great way to do it, but acceptable in
  this case)
+ Monosynth: GUI refreshes less often (which means less CPU use)
+ Monosynth: less clicks on sounds using LP filter with very low cutoff
  (using ramp of 256 samples instead of 64 samples as before)
+ Knob: new GTK+ control based on GtkRange, with my primitive bitmap set
  (generated with Python and Cairo)
+ Organ: added a GUI too, very provisional
+ Organ: fixed Hold pedal (doesn't release the notes which are still depressed)
+ RotarySpeaker: new effect (split off Organ)
+ all: denormal fixes (still some denormals present in reverb)
+ Reverb: better time setting (decay time somewhat corresponds to -60dB
  attenuation time)
+ JackHost: -M switch allows for automatic connection to JACK MIDI event source
  (use -M system:midi_capture_2 or -M 2 for autoconnection to
  system:midi_capture_2; of course, the short numeric form only work for
  system:midi_capture_ ports)
+ JackHost: -p switch selects a preset automatically
+ JackHost: better size setting algorithm
+ JackHost: duplicate client name (causing JACK to rename the client) doesn't
  break autoconnecting functionality
+ autotools configuration update (detect Cairo and require newer GTK+)
+ more presets