Clojars release 0.2.0
There is a bunch of great new functionality in this release, including the long-planned effect control interface in the embedded web interface, pretty and powerful color adjustment interfaces, and a new rich controller mapping for the Novation Launchpad Pro, but the main reason for bumping the version to 0.2.x is the removal of deprecated functions that had been accumulating in the 0.1.x releases.
Added
- Running effects are now listed on the Show Control page of the Web
UI, in descending priority order, with buttons to end them, and
controls to adjust cue parameters, including colors. - The show's dimmer grand master is now visible and controllable
below the cue grid in the web UI. - A rich grid controller mapping for the
Novation Launchpad Pro. - A rich color picker interface on the Ableton Push for cues with
color variables. - You can now map sliders and encoders on any MIDI controller to
adjust components of a color stored in a show variable (that is,
adjust its red, green, and blue values, or its hue, saturation, and
lightness). - The example global color and strobe cues have been upgraded to take
advantage of the new color cue parameters, so their colors can be
adjusted on the fly using the web or Push interfaces. - The Shift button can be used with Tap Tempo buttons on controllers
and the web UI to set the start of a beat, bar, or phrase, depending
on the synchronization level of the metronome. - Buttons or pads on any MIDI controller can now easily be mapped to
act like the smart Tap Tempo and Shift buttons on the Ableton Push
and Novation Launchpad. - Cues can have animated colors on grid controllers including the web
interface, to help remind operators about the effects they launch,
or reflect the current value of a color variable on which they are
based. - When binding a generic MIDI controller to launch a cue, if that
controller does not have velocity-sensitive pads, you can assign an
explicit velocity to use in the binding, for the purpose of setting
any velocity-sensitive cue variables. - An explanation of how to bind a MIDI controller to a dimmer master
has been added to the mapping documentation. - Animated GIFs in the documentation illustrate how the cue user
interface works.
Fixed
- Using dynamic color variables to as inputs for other dynamic color
parameters could cause crashes when trying to adjust the incoming
color values due to a longstanding subtle bug, which has been fixed. - Ordinary MIDI control surfaces were sometimes being mistakenly
identified as candidate sources of Tratktor beat phase information,
leading to exceptions in the log file. Now only devices sending
clock pulses are considered beat phase candidates. - Cue colors were improved in the web interface and on the Push to
make it easier to see which cues are active, as well as to make the
colors more faithful to the cue's intent. - The text labels on cues in the web interface are now more legible
because they use a contrasting color based on the cell's perceived
brightness. - Incompatible cues are now identified not just from matching effect
keys, but also from their:end-keys
lists, so the web and
controller interfaces provide even more guidance. - Launching cues from the web interface was not setting any value for
cue variables configured to be velocity sensitive, which was
sometimes causing issues. Now the assignment of velocity-adjustable
variables happens in the process of launching any cue from the grid,
and a default velocity of 127 is assumed if none is specified. - The entire frame of a user interface being rendered on a grid
controller or the web interface now uses the same metronome
snapshot, to represent a consistent point in time. - Some testing in a Windows virtual machine revealed issues when
working with standard Java Midi implementations (as opposed to
CoreMidi4J on the Mac). These were addressed.
Changed
- Updated to newly-released Clojure 1.8 for improved performance.
- Deprecated functions were removed:
afterglow.effects.color/find-rgb-heads
(instead useafterglow.channels/find-rgb-heads
)afterglow.effects.color/has-rgb-heads?
(instead useafterglow.channels/has-rgb-heads
)afterglow.effects.oscillators/sawtooth-beat
(instead usesawtooth
)afterglow.effects.oscillators/sawtooth-bar
(instead usesawtooth
with:interval :bar
)afterglow.effects.oscillators/sawtooth-phrase
(instead usesawtooth
with:interval :phrase
)afterglow.effects.oscillators/triangle-beat
(instead usetriangle
)afterglow.effects.oscillators/triangle-bar
(instead usetriangle
with:interval :bar
)afterglow.effects.oscillators/triangle-phrase
(instead usetriangle
with:interval :phrase
)afterglow.effects.oscillators/square-beat
(instead usesquare
)afterglow.effects.oscillators/square-bar
(instead usesquare
with:interval :bar
)afterglow.effects.oscillators/square-phrase
(instead usesquare
with:interval :phrase
)afterglow.effects.oscillators/sine-beat
(instead usesine
)afterglow.effects.oscillators/sine-bar
(instead usesine
with:interval :bar
)afterglow.effects.oscillators/sine-phrase
(instead usesine
with:interval :phrase
)afterglow.effects.params/build-oscillated-param
(instead use
afterglow.effects.oscillators/build-oscillated-param
)afterglow.show/add-midi-control-to-cue-mapping
(instead use
afterglow.effects.cues/add-midi-to-cue-mapping
)afterglow.show/remove-midi-control-to-cue-mapping
(instead use
afterglow.effects.cues/remove-midi-to-cue-mapping
)
- The detailed documentation was updated to use attributes to link to the API
documentation so it could be linked to its release-specific version. - The API documentation was moved into a github-pages branch so
versioned snapshots can be kept around. - A few functions were newly deprecated to improve the consistency of the API:
afterglow.effects.cues/add-midi-control-to-cue-mapping
(instead
use the more accurately namedadd-midi-to-cue-mapping
)afterglow.effects.cues/remove-midi-control-to-cue-mapping
(instead use the more accurately namedremove-midi-to-cue-mapping
)afterglow.show/remove-midi-control-to-var-mapping
,
afterglow.show/remove-midi-control-to-master-mapping
, and
afterglow.show/remove-midi-control-metronome-mapping
(they are
no longer needed, the general-purpose function
afterglow.midi/remove-control-mapping
works instead of each)