|
|
AC Toolbox
New in older versions (before 4.5.3)
|
Download
links
Additional
information about algorithmic composition |
This release
is primarily a maintenance update fixing some bugs and adding a few new
features. New
Features 1. The
tool act-sort was added. Stockpiles and lists can be sorted in various
ways. Rhythms can be sorted in ascending or descending order. Low pitches can
be moved to the beginning. Low or high pitches can be moved to the front.
Values within a certain bandwidth can be moved to the front, etc. 2.
Streams can now read values from a group of sliders. The sliders are
available via the menu
item Tools>Stream Sliders. The interface can be configured to contain 8-64
sliders. 3.
Generator slider-value is used to read from the stream sliders. It
maps the slider position to a value in the range specified in slider-value.
The mapped values can also be printed. 4.
If Capybara/Pacarana is specified as the Midi
output device, an interface containing one or more Kyma
Sliders is available via Other>Kyma Sliders.
These sliders can be mapped to send data to controllers in Kyma with the names !cc01,
!cc02, etc. This is intended as a convenience so that amplitude and other
values in Kyma can be controlled from within the AC
Toolbox. 5.
Tool layer-number is available for use with Csound
and OSC score objects. When more than one layer is specified, layer-number
will return the current layer number during the calculation. This allows
different layers in a Csound or OSC score object to
use different values, boundaries, generators, etc. 6.
The spray generator can now specify generators to determine the
deviation. Previously, only uniform random deviation was possible. 7.
Additional shortcuts: sf for sf-name gsf for generate-sf-name sl
for slider-value Bug fixes 8. The
accuracy of calculating start times for data sections, controller data
objects, and program data objects was improved. 9.
The functioning of the Remake button in the Objects dialog was
adjusted. 10.
The problem with keywords in the Extra edit boxes in the Csound and OSC score dialogs was fixed. 11.
The problem which occurred if the counter in take
was a real number was resolved. New
in version 4.5.1 Editing
Objects 1.
The output of some objects can be now be edited by
hand. With sections, a
spreadsheet-like text presentation of the pitch, rhythm, and other values can
be used to change specific numbers. Midi objects can be edited in a similar
way. Stockpiles can have values modified or added. Shapes and masks, when
specified or generated, can be edited by drawing. Select the
object in the Objects dialog and then choose Edit. Tutorial 2.
Three chapters were added to the Tutorial. a.
Tutorial 22 deals with converting section data to a form of musical
notation. This is done by using FOMUS to prepare data for LilyPond or MusicXML
(which can be read by Finale, Sibelius, and other programs). b.
Tutorial 23 concerns additional ways of filtering values as they are
being generated as well as some ways to filter sections. The latter can allow
conditions involving more than one parameter. c.
Tutorial 24 discusses some tools and generators pertinent to pitch and
intervals. 3.
A version of the tutorial in epub format is
now available for download from the web site. It is suitable for use with
mobile devices such as iPhones, iPads,
Android-based phones, and any other platform capable of reading this standard
format. 4.
A section was added to Tutorial 6 about editing objects. 5.
An example was added to Tutorial 21 to demonstrate using b_gen commands in an OSC score object. Related dialog
examples bunch2 and osc5 were added to Dialog Examples. New
Generators, Tools, and Transformers 6.
Several functions for filtering sections: a.
filter-if allows filters to be applied
to some events while others are passed unfiltered. For example, if the
channel is 1, apply a band-pass filter to pitch. b.
filter-and applies several different
constraints and only passes an event if all constraints are met. For example,
an event may be passed if a pitch was within a certain range and rhythm was
below a certain value. c.
filter-or allows an event if one of
several constraints is met. For example, events which are
high, short, or loud are allowed. d.
select-channel and reject-channel
accept or reject all events in the specified channels. e.
value-pass and value-reject
pass or reject values equal to one specific number. These filters are useful
in combination with filter-and, filter-or, and filter-if. 7.
Probability-filter is a similar to a bank of band-pass filters except
only a certain percentage of the values are passed. For example, you could
keep all low values and only some high values. 8.
Anything is a tool for specifying additional constraints for the generators
with and without.
Expressions such as anything < c4, or inside the range c4 to c5, or
outside the range 100 to 200 can be expressed. 9.
Pitch-class is a constraint for the generators with and without.
Values are reduced to pitch classes before determining if they should be
accepted or rejected. 10.
Allow-interval is a generator that passes a value produced by another
generator if the interval from the previous value is one of the allowed
intervals. This is a way to restrict the interval content. The generators
with and without limit specific values. Allow-interval limits specific
intervals. 11.
Some new transformers: a.
if-channel will only apply another
transformer if the event is in a specified channel or list of channels. For
example, only pitches in channel 1 will be transposed. b.
transform-some can limit the
application of a transformer to values within one or more specified ranges.
For example, low values can be transposed down an octave and high values up a
minor third. Values in the middle range will not be affected. c.
force-mod performs a modulo operation
on the result of a transformation. This may be useful when dealing with pitch
values or intervals. d.
a method was added to the join operator to
connect two or more transformers. The output of one transformation will be
used as the input to the next. For example, tempo could be stretched and have
a random deviation added. 12.
Related to sets of pitches or intervals: a.
mix-chords returns a mixture of two
chords. Some values from each chord will be included. This can be seen as a
form of interpolation between chords. b.
pitch-matrix produces a matrix of
transpositions of a row. c.
invert-stockpile inverts a row or
matrix. d.
retrograde-stockpile reverses a row or
matrix. e.
make-row produces a list of values
that could be treated as a (12-tone) row. The first value is 0. The other
values are randomly chosen. The length of the row can be specified. 13.
Two tools that may be useful when writing sound files directly from the AC
Toolbox: a.
seconds->samples calculates the
number of samples needed to fill a given length of time. b.
freq->samples
returns the number of samples in a period related to a specified frequency. Interface 14.
A popup menu for playing, plotting, editing, and do various other things with
an object appears by clicking on the Make button
with the right mouse button (or by using CTRL-Click). This works with
several dialogs, such as the ones for defining sections and stockpiles. 15.
When making sequential and parallel sections, etc., objects names can be dragged
from the Objects dialog. 16.
The names of generators, tools, and transformers can be dragged from
the Index and Annotated Index dialogs. The name of the generator and its
arguments will be entered. The arguments should be replaced with the actual
values. 17.
Additions were made to the Objects dialog. Objects names can be filtered.
An Edit button was added. It can be used to edit values inside objects
once the objects have been made. The Info button was made more easily
available and can provide information about sections, midi objects,
communities, and stockpiles. 18.
A filter was added to the Dialog Examples dialog to filter example
names. 19.
When drawing masks, the line selected by the radio button (Top or Bottom)
will be thicker. 20.
Forward and back arrows at the bottom of help windows can be used to navigate
to previously accessed help windows. 21.
General information which was only present via items
in the Index dialog, is now also available in the Annotated Index. 22.
Menu item Select () can be used to select all text within matching
parentheses. This can also be used to check if parentheses are balanced in an
expression. 23.
Several changes were made in regard to plotting Midi objects and Midi
sections. Plotting was also optimalized to allow
for plotting Midi objects with a large number of values. 24.
File names can be automatically generated when writing FOMUS files. Miscellaneous
changes 25.
General information about Writing Sound Files and Editing Objects
was added to the Index and the Annotated Index. 26.
Select-patterns can now have an optional argument to determine the
order of elements returned from a chosen pattern. 27.
Pitch-and-octave can have chords as input. 28.
The accuracy of calculating start times for data sections was improved. 29.
Adjustments were made to the functionality of interpolate-chords,
duplicates, replace-if, clip, logist, logist2,
invert, beta-value, beta-choice, and series-choice. 30.
If a
stockpile has been specified but not made, it will now automatically be made
if mentioned in another expression. This is particularly relevant if example
files have been accessed. 31.
Code object was added as a new class of objects. Lisp code can be
stored in this object and saved with the other objects in an environment. 32.
Bugs were fixed in regard to writing FOMUS files from density sections, OSC files
from sections, and the tool more-than. 33.
The application was compiled with a new version of LispWorks.
This may solve some problems and cause some new ones. 34.
Additional shortcuts: a.
ut for until-time b.
sc for series-choice c.
pick for series-value (sv is already in use for sieve) d.
fst for from-start-times e.
mv for masks&values
f. spread for pitch-and-octave New
in version 4.5 Tools to
facilitate music notation 1. The
primary new feature in this version is the ability to write section data in a
form that is suitable for use by FOMUS, a program for formatting data for
music notation. FOMUS produces data which can be
read by LilyPond. It can also produce data in MusicXML format which can be
read by Finale, Sibelius, and some other programs. 2. In
the dialog created with the menu item 'File>Write FOMUS File', various
options can be specified to include in the FOMUS file to assist in the formatting
process. These options including the writing of quartertones, constraining
beat divisions and tuplet durations, etc. Various
convenience options can also be specified. 3. One
of the options when writing a FOMUS file is to use Luc Dšbereiner's
Pre-FOMUS Rhythm Quantizer which is included in this release. In some cases, this
provides a more plausible interpretation of the rhythm data in a section. 4. Additional
information about using FOMUS in the AC Toolbox can be found in the Index or
under the help button in the 'Write FOMUS File' dialog. 5. The
AC Toolbox does not contain FOMUS. This program must be downloaded and
installed separately. There may
not be a PPC version of FOMUS readily available. New tools
and generators 6. Limit
returns part of a list or
stockpile that is between or outside certain specified limits. This could be
useful when using -choice generators. It can also return values <=
or >= to certain thresholds. 7. No-more-than
returns a list of values with no more than a certain number of some specific
values. E.g. a list may contain 50 values but no more than 3 of them may be
60. 8. More-than is a tool which can be used with the generator without.
It limits the number of times that certain values will be allowed. This is
similar behavior to no-more-than except that without
is a generator and produces a continuous stream of values. 9. With
is a generator which is a quick and easy way to determine
which values produced by a generator or stockpile should be included.
Results can be limited to specified values or to values
which meet a defined condition (such as < 1.0). This is the
opposite of the generator without. 10. Sample
is a generator that samples values from a generator or a stockpile. For a
generator, this means that the generator is applied several times before a
result is returned. 11.
Clip-generator clips values from a generator to be within certain
limits. 12. Allow-larger-quantization-stack
may expand the functionality of the Pre-Fomus
Rhythm Quantizer when dealing with large sets of
data. Modifications
to tools and generators 13. Keyword :limit
was added to make-chord. This limits the range of the chord to ±limit
number of steps from the first value chosen for the chord. 14.
In generator sine, the value for n can change over time. 15.
From was adjusted to deal more accurately with a floating-point value
as step size. 16.
A method was added to extract to allow channel data to be extracted
from a section. 17.
Generate-diversity can be stopped after some specified number of
unsuccessful attempts of finding a value. Additional
menu items for convenience 18.
The Help menu contains items to navigate forward and backwards among help
windows. 19. Tools>Plot>Selected
Object will plot (if possible) the
object selected in the Objects dialog. This means that an object
which has just been made can be plotted with a keyboard shortcut
instead of using the button in the Objects dialog. 20.
Tools>Selected Object as Text will print a text representation (if
possible) of an object selected in the Objects dialog. 21.
A keyboard shortcut was added to the existing menu item Tools>Test
Value. 22.
Window>Cleanup Windows and Objects will close most windows and
delete all objects. 23. Window>Example Window to Front
will bring the most recent examples window to the front of the open windows. 24.
Help>Section Info will create an info window for a section, Midi
performance object, or community when one of those objects is selected in the
Objects dialog. Otherwise, it will bring the info window to the front if it
is already open. Shortcuts 25.
Several shortcuts (for tools and generators) were defined: density -
for density-of-start-times ms - for make&sort sbl - for scale-by-layers fn - for from-number ro - for round-off cg
- for clip-generator Other 26.
Improvements and changes were made to various plotting routines. In
particular, plotting data read with read-tracks-files is more
accurate. The behavior of plotting with lines (instead of with points) was
adjusted in some cases. The use of minimum and maximum values when plotting
was in some cases altered when the values exceeded those boundaries. Some
histograms can now also be presented within specified minimum and maximum
values. 27.
Fixed a bug regarding chaotic-notes, stockpiles, and saving the
environment. New
in version 4.4.4 New tools and generators 1.
Inside-OSC can be used when creating an OSC score. It allows a synthdef to be updated during a current OSC event, for
example frequency could be changed during a sound. The methods for rendering,
plotting, transforming, and making a histogram of an OSC score were adjusted
to accommodate this possibility. 2.
Attacks makes a list of attack times suitable
for density sections, Csound scores, and OSC
scores. It uses a method similar to what Xenakis
did in his Stochastic Music Program. Intervals between attack points can be
produced with various generators. The resulting list is scaled to be between a begin and end time. 3.
Shuffle is a generator that returns a series of values from a
reordered stockpile. The stockpile can be treated as one group or several
small groups. Values are shuffled within the limits of the group. 4.
Make-many-variants creates several variants
of an object. Each new variant is given a name from a user-supplied list of
names. Each variant is entered in the environment using the new name. 5.
Generate-sum adds several values from a generator, etc. to produce the
next value in a series. For example, the result could be the sum of several
random numbers. Additions or adjustments to existing tools and generators 6.
The keyword :interpolate was added to the
generator lookup. Numbers not found in the lookup table will return a
value interpolated between the two nearest values. 7.
Keyword :curve was added to generate-line
and exponential-motion. It controls the sharpness of the curve. 8.
Keyword :always-less was added to gather-until.
Normally, gather-until gathers values in a list until the sum is >= a
specified total. If :always-less is true, the sum
will be <= the total. 9.
Expressions bound to the keywords :low and :high
can now vary over time in map-text. 10.
Optional parameter loop was added to jump. The chosen chunk of
values can be looped some number of times before the next jump is made. 11.
Keyword :between was added to get-intervals.
Normally get-intervals returns the intervals from the first value to each
other value in the stockpile. If :between is true,
the intervals between each value in the stockpile are returned. 12.
Keyword :first was added to all of the
chaotic generators. If true, they will return the initial state as the first
result. 13.
Various other corrections and adjustments were made to on-the-fly,
otf, cal, from-number,
join, series-value, convert, convert/time, 2-masks, and notename. New shortcuts for generators 14.
Arc is a shortcut for exponential-motion. This means arc could be used
anywhere where exponential-motion could be used. 15.
Gl is a shortcut for generate-line. 16.
Ev is a shortcut for exponential-value. Additions or adjustments to the interface 17.
In the dialogs for Index and Annotated Index, the arguments
of the current function are displayed at the bottom of the dialog. 18.
In the Csound and OSC File options, it is possible
to select the application to play the sound file instead of relying on the
system default value. 19.
A menu item Play Selection/Loop and a corresponding dialog were added
to allow part of a section to be played and/or looped. 20.
Various minor adjustments were made to the design of dialogs including the
borders and default buttons. 21.
Various corrections and adjustments were made to plotting routines, including
the plotting of multi-controller objects, midi performance objects, and xy value pairs. 22.
The issue of the disappearing cursor in edit windows was addressed. 23.
A problem with cut/copy/paste when navigating a dialog with the cursor was
corrected. 24.
The kill menu item was made more effective. 25.
Fixed a bug in displaying the Object dialog that caused the startup process
to hang. 26.
The processes behind the menu items for recent environments and recent
examples were improved. 27.
Discrepancies in the printing of floating-point pitch names were addressed. 28.
Searching for argument names in a binary OSC file with multiple synthdefs produces more reasonable results. 29.
A keyboard shortcut was added for saving lisp text files New in version
4.4.3 1.
Several changes were made in regard to using cumulative spectrum data via the
tool read-spectrum-file. In addition to importing data produced by
Audacity and Amadeus, it is now also possible to read data produced with
SPEAR and the Csound utility Hetro. In that case, read-spectrum-file will
return one pitch and amplitude value per track. A cumulative or static
spectrum is one set of values and is useful for producing chords or pitch sequences.
This is not to be confused with the use of read-tracks-file which already could read data
from SPEAR and Hetro and produce a continually
changing output. 2.
Read-spectrum-file now includes keywords to round the spectral data
(e.g. to semitones, quartertones, etc.), to adjust the frequency value used
for converting to notes (instead of using 440 Hz for a4), and the ability to
filter the returned peaks to only include unique values (which may not have
been the case after the data was rounded). 3.
The spectral data read from SPEAR or Hetro can use
all of the available spectrum tools, such as spectrum->pitch, spectrum->window,
spectrum->structure, etc. and the generator spectrum->chord.
The syntax of these tools was slightly adjusted since keyword round
now occurs when the spectrum is read rather than each time a tool is used.
The tools will reflect the choices made in read-spectrum-file. 4.
Tool peaks? was added to return the number of
peaks in data read from read-spectrum-file should that information be
forgotten or unavailable. 5.
Several changes were made to the treatment of spectral data
which is read with read-tracks-file. A keyword average
was added. This will average track data within a specified time span, such as
1000 ms. The result could be considered as a kind
of chordal reduction of the spectral changes. A
keyword filter will filter repetitions in each track. The keywords for
rounding pitch data and changing the frequency base were moved to read-tracks-file
and are no longer needed in map-tracks. 6.
Data read with read-tracks-file can now be plotted. 7.
A problem with map-tracks not producing accurate results at time 0 has
been fixed. In addition, map-tracks enforces a minimum note duration
of 1 ms. 8.
When map-tracks is used to make a structured
section, the clock unit is no longer ignored. The data returned by map-tracks
is in ms. Any clock unit above 1 will slow down the
data. 9.
Tool pitch-track has been added. It will return a list only containing
pitches from one or more tracks of data read with read-tracks-file. 10.
Tutorial 20 about using spectral analysis data in the AC Toolbox was
rewritten to reflect the above changes. The documentation for read-spectrum-file,
read-tracks-file, etc. was updated. Previous users of the spectral
analysis instructions may want to check this documentation for a discussion
of the current syntax. 11.
Some new generators were added: a.
linear-value and linear-choice use
a random distribution which favors lower or higher values depending on the
value of the keyword direction. b.
triangle-value and triangle-choice
use a random distribution with a triangular density curve (the peak is in the
middle). c.
morph produces a straightforward
interpolation between two values depending on an index value. This is simpler approach than what is
used in the mutate generator. d.
line is a shortcut for the generator line-segment. 12.
Tool pick-editor-font was added. It does what its name suggests. One
use for this would be in making presentations where a large font size is
needed. Editor refers to the Lisp editor, not the various dialogs in the AC
Toolbox. 13.
Some adjustments to generators or tools were made. a.
If take receives a negative number for one of the number parameters,
the next value form will be used indefinitely. b.
Keyword step was added to loop-through. It allows skipping
values when looping through a list or stockpile. c.
An optional parameter was added to jump to allow it to pick a new step
size each time instead of only once per jump. d.
The number parameter in produce can be a generator, stockpile, etc. 14.
Some bugs were fixed including some in series-value, jump,
combine, for-example; in dealing
with Lisp editor fonts; and in the menu items for recent environments and
examples. 15.
The stopping of data flow to a Capybara has been changed to be less abrupt. 16.
The source code was recompiled with a new compiler which
solved several problems and probably has created many new ones. New in version
4.4.2 1.
A preference (Midi Scheduler Overdrive) was added. When off, it significantly
reduces the cpu use of the Midi scheduler. Older,
slower computers may not function as well when it is off,
therefore the default value for this preference is on. 2.
Generator grow was added. It can produce geometric and arithmetric series. By using time-varying input, the
series itself can change over time. 3.
The behavior of the round keyword in many generators and tools, in
particular those related to spectral composition, was adjusted. In addition
to rounding the values to integers or not, a value such as 0.5 can be bound
to the keyword. This will round to quarter-tones.
Other values are also possible. This change concerns spectrum->pitch,
spectrum->chord, spectrum->structure, hz->midi, harmonic-chord,
frequency-shift-chord, and ring-modulate-chord. 4.
A facility was added to edit the contents of a stockpile. In the Objects
dialog, when the popup menu for stockpiles has been selected, the Edit button
will copy the values in the selected stockpile and enter them in a specify
stockpile dialog. Values can be then be changed, deleted, etc. before making
the stockpile (again). 5.
Tool sum was added. It sums numbers in a stockpile or produced by a
generator. 6.
Tool extract was expanded to allow extracting a list of attack times
in milliseconds (raw-attack). 7.
Generator without was extended to allow the use with lists and
stockpiles in addition to generators. 8.
Tool predicate was adjusted to allow the function quote (#') to be
omitted although it still can be used. 9.
Tool get-object-duration was added to return the durations of sections
and communities. 10.
Tool get-length will now also return the number of events in a density
section. 11.
Bugs were fixed in act-if and in the Objects dialog for stockpiles. A
bug concerning the use of 2 monitors where the menu bar is in the one on the
right was corrected. 12.
Issues regarding the labels for 2d plots as well the
title for plot and histogram windows were addressed. New in version
4.4.1 1. This
release contains some minor adjustments to facilitate use with Mac OS 10.5
(Leopard). 2.
Tool pitch-interval-filter was added. It can be used to filter
sections to remove notes reflecting certain pitch intervals. The filtering
can also be limited to simultaneous events. The tool is a generalization of pitch-repetition-filter. 3.
Generator metric fractions was added. It
produces groups of values that equal 1 to simplify some kinds of rhythmic
organization. 4.
Tool duplicates was expanded to allow the
diversity value to vary over time. 5.
The formatting of the html output of tool help->file was improved. 6.
The editing possibilities for Csound .csd and .orc files were
expanded. New
in version 4.4 Additions
and clarifications 1.
The tutorial included with the application (Using the AC Toolbox) was
updated to reflect the current Universal Binary version of the program. 2.
The different versions from the beta release (standard and programming) have
been replaced with only one version of the AC Toolbox which
includes a complete Common Lisp interpreter. 3.
Menu item Make (Default Button) was added. This allows objects to be
made with a keyboard shortcut. Other dialogs with a default button, such as Test
Value, can be perform the operation associated
with that default button with this shortcut. 4.
Keyboard shortcuts were added to the menu items Evaluate Selection and
Evaluate All. 5.
Menu items Find and Find Next were added. 6.
An option was included for histograms to round off the values to some
arbitrary unit before making the histogram. 7.
The situation concerning Emacs key bindings has
been clarified. Key bindings which are known to refer to
non-available commands have been removed. A button was added to the
Lisp Editor window to produce a list of available Emacs
bindings. The help text for the Lisp Editor window was also updated. 8.
Documentation was added for the programming tools act-choose-file-dialog
and act-choose-directory-dialog. Bug
fixes Some of the bug fixes fall into the following five
categories: Specification 10.
Specifying various objects (as opposed to making them) did not always work as
expected. Forgetfulness 11.
Midi source and destination did not always get reset properly on startup. 12.
The options for the Other histogram dialog did not get remembered. 13.
Editing commands such as cut/copy/paste were forgotten if Options had been
selected. 14.
Midi Controllers did not always get reset at the end of playback. 15.
The Toolbox forgot how to plot shapes and masks if they had been loaded from
an Examples file. Housecleaning 16.
The cursor is now reset as part of the Kill sequence. 17.
The interruption of Capybara playback is handled more smoothly. 18.
The General Midi setup is cleared during Kill. Dialog Errors 19.
Minor errors in the dialogs for Csound
Analysis, Multi Controller, and the help button (?) were
fixed. Actions 20.
Interpolate now prints its finish value (if requested with a keyword)
in the Text Output window. 21.
Show applies a generator properly if it is used with the
number-per-line keyword. 22.
Various issues with respect to closing previous windows (if that option is
selected) were resolved. 1. This is an Universal
binary and works on MacOS 10.4 or higher with
Intel or PPC processors. 2.
This is a beta version. 3.
Two versions exist of this release: 4.4b1 and 4.4b1-prog. The latter
version contains a more complete Common Lisp interpreter and is primarily
intended for users wishing to add a lot of their own Lisp code to use with
the AC Toolbox. 4.
A different Lisp development environment was used for this version. All of
the GUI code, the scheduler, and various bits of other things were rewritten
for this Lisp environment (LispWorks instead of
MCL). This
could lead to a lot of new issues and bugs. 5.
A few tools have been renamed (to prevent conflicts with LispWorks): plot (formerly display) element (formerly current) load-sound-file (formerly read-sound-file) 6. The default value for middle C (Midi
note number 60) is c4 instead of c3. This can be changed in the Preferences. 7.
Preferences The Preferences dialog allows some new choices: The window style (which by default is brushed metal) can
be reset to the standard, Aqua style for new windows. The amount of window transparency can be set for new
windows. The behavior for the expressions used in help windows
(plot, histogram, and for-example) can be set to always close the previous
result window or not. The size of most fonts and dialogs can be adjusted to one of three settings: normal, small, big Small reduces
the size for those cramped for screen space. Big
increases the size and is suitable for using with a projector. There is a slight change in the format for saving objects
in files. The current version can read files in the old format. However, for
a previous version of the AC Toolbox to read files for the current version,
the environment should be saved in the Old Format. 8.
Compatibility Files produced by the AC Toolbox, using either an Intel or
a PPC processor, are interchangeable. Environment files produced by earlier versions of the AC
Toolbox, can be read in the current version. Objects saved in the New Format (see Preferences)
cannot be read in older versions. To read environment files produced by the
current version in older versions of the AC Toolbox, save the objects in the Old
Format. Csound hetrodyne
analysis files should be made on the same type of processor as the one used
by the AC Toolbox. This means, hetro files made on
an Intel processor can be read by the AC Toolbox running on an Intel
processor. 9.
GUI issues: Input panes do not balance parentheses in Lisp expressions.
Most panes do have a check box which opens an editor
pane which does balance parenthesis and allows more extended editing. Even
many Emacs commands can be used in the edit pane. To move the cursor to a new line in an input pane, use the
menu item Edit>Insert Newline (CMD-RETURN). The Play dialog was removed. To play an object,
select it in the Objects dialog (Tools > Show Objects). The menu item
Tools>Play will play or stop playing the item selected in the Objects
dialog. A Remake button was added to the Objects dialog.
This is to remake the selected object (i.e. use the input specification to
produce new output). The Input button in the Objects dialog will search for an
open, unchanged dialog for the object before it opens a new one. The category Verbs was added to the Annotated
Index. Parallel sections can have an offset time number between
the sections. Help windows have been split into two panes: one contains
text and the other contains examples which can be
evaluated to values produced with the generator, tool, or transformer. To
evaluate the examples, put the cursor at the end of the expression and select
ENTER (not RETURN). Alternately, COMMAND-ENTER could be used. Or the example
expression could be selected and the menu item Edit>Evaluate Selection
could be used. The menu item File>Text>Open opens a Lisp edit
window. Lisp expressions can be entered and evaluated in the same way as
described above for examples. The result of the evaluations will be appear in the echo area at the bottom of the editor.
Various Emacs expressions are available for
editing. CTRL-S allows incremental search. The symbol to search is entered in
the echo area. The echo area can be cleared with ESC. The check box to the right of many input panes opens an
editor. The symbol ! in some windows indicates that the line wraps around to
the next one. Increasing the size of the window may remove this indicator. Options
buttons have been added to various dialogs to control their behavior. In
particular, they control whether previous windows of the same type as the
ones produced, should be closed. This means, that choosing help for a
generator in the Index dialog, could cause the previous help window to close.
Plotting with the Plot dialog could cause the previous plot windows to close,
etc. A Listener can be opened via Other>Listener. 10. A few tools and generators were added: print-result prints a single result in a help window. clear-preference-file erases the current preference
file and will restart
(eventually) without any preferences. lehmer-value generates deterministic
patterns. lehmer-choice chooses from a stockpile
using lehmer-value. bv is a shortcut for beta-value. 11.
A few changes were made to existing generators and tools: read-spectrum-file requires a keyword to read
Amadeus files. The default value is for Audacity. notename a bug concerning octave numbers was fixed. ring-modulate-chord keyword :block0 was added to
remove 0s from the result. 12.
Miscellaneous If CSound is to be used, Csound
5 should be installed in /usr/local/bin. This is
the location used by the installer from SourceForge. The tutorial included with this release is the old one.
The pictures of dialogs, etc. do not match the current program. The changes described in the release
notes are also not reflected in the tutorial. Nonetheless, it should help a
new user to understand the basic workings of the AC Toolbox. A few examples in the tutorial examples folder have been
adjusted to work with this version of the AC Toolbox. The stream control object is not implemented. The File>Last File Name? menu
item has been renamed File>Current Environment File. Help->window has been replaced with help->file. Various anti-clutter keyboard shortcuts involving
CTRL-CLICK have been replaced with options, either in the Preferences dialog
or in the Options for various dialogs. 13.
Issues Occasionally, errors messages may not be caught by the AC
Toolbox and will be printed in a window of the Terminal application. Ignore
the contents of the Terminal window, close it, and continue in the AC
Toolbox. On rare occasions, the printing in the Terminal window
may be followed by a message from the system that the AC Toolbox crashed.
Close the Terminal Window, click on Reopen in the crash message, and you can
continue working where you left off in the AC Toolbox. 1. A bug
concerning the selection of the sample file directory in the Csound file options dialog was fixed. 1. Bugs in the
menu items for drawing shapes and masks were fixed. Intel 1.
There is
still no support for Macs with Intel processors. Spectral
Track Data 2. Track data can be imported
from SPEAR, a sound analysis/resynthesis program which can export partial data as text files. Read-tracks-data
will import the data. Tracks? can return the
number of tracks imported. 3. Map-tracks will map
the track data from SPEAR into melodic and rhythmic material. Velocity can be
mapped to any desired range. Pitch can be rounded to any desired unit.
Repetitions can be filtered. Tracks can be selected and matched with various
Midi channels. 4.
Read-tracks-data
and map-tracks can also deal with tracks produced with the Csound hetro analysis program.
Therefore they also replace the former tools read-adsyn-file
and map-adsyn. Csound 5. All Csound
facilities assume that the user has installed Csound5. The help item Installing
Csound available via the Index explains the
procedure. 6.
The AC
Toolbox can render csd files to audio as files or
in realtime (with certain practical limitations).
Various options such as sample format and audio header can be specified in
the Csound File Options dialog. An
option for automatically generating file names is also available. 7. The Csound
File Options dialog also contains buttons to render existing Csound files, to replace the options in existing files
and then render them, to open the Csound manual,
and to access the Csound analysis programs pvanal and hetro. 8. The methods for transforming and
filtering Csound scores can also render those files
to audio. 9. Section->Csound was expanded to allow reversing the order of
the amplitude and
frequency p-fields. 10. Generator par can be
used to access values from lower p-fields that have just been generated. This
facilitates expressing relationships among parameter fields. 11. The tools csound-table-size
and csound-frame-size help find
appropriate data values for gen1 statements and for pvanal
frame size. OSC
Files 12. Binary OSC files can be transformed
via the menu item Methods>Transform>OSC File. Values for up to
four arguments can be transformed. 13. Binary OSC files can be
filtered via the menu item Methods>Filter>OSC File. Filter types
can be chosen via pop-up menus and their results logically connected via and
or or. Simplifications
and Extensions 14. Cal is a tool that
allows arithmetic operations with stockpiles, generators, lists, and
constants. (cal '(10 20 30) * 2) would return (20 40 60) (cal '(10 20 30) + (rv
-1.0 1)) could return (10.201 19.207 30.589) 15. On-the-fly, also
available as otf, is a generator
which works in a similar fashion to cal. The difference is that on-the-fly will keep producing (new) values each time it
is applied. 16. Generator act-if
allows a nested series of IFs which understand how
to read and produce data with Toolbox objects. One application would be to
consult conditions to determine which generator to use. (act-if
'(10 20 30 40) >= 30 (rv 50 100)
else = 20 (rv 20
30) else 1) 17. Harmonic-chord was
expanded with a keyword for harmonic distortion for stretching or compressing
a spectrum as described in Joshua Fineberg's
dissertation Sculpting Sound. 18. Sound files can now be read
and/or written in either AIFF or WAV format using read-sound-file and create-sound-file.
The menu item File>Write Sound File can write in either format.
These tools replace read-aiff-file and create-aiff-file. 19. Probabilities for tables used
by transition no longer need to add to 1. Whatever positive values that are used are scaled appropriately. 20. Interpolate-chords was adjusted to treat exponential interpolation in a more
straightforward way. Support for printing note names was also added. 21. The use of a generator, etc.
to pick peak numbers in spectrum->chord was changed to be more
consistent with the practice in other generators. 22. Produce makes a list
by applying a generator some number of times. It is a
simplification of create. Repetitions 23. Pitch-repetition-filter
filters repeated pitches from a section, whether they occur at the same time
or in succession. 24. A keyword was added to make-chord
to block repetitions in successive chords. 25. Transformer remove-successive
will remove repetitions in successive chords. Clean-up-blanks
could be used (though it is not necessary) to clean up any empty chords made
by remove-successive. 26. A help item is available via
the index entitled Repetitions: Prevent or Remove which describes various
strategies to do what the title suggests. Reducing
Screen Clutter 27. CTRL-CLICK can be used in a
number of cases to close the previous window when a new one is made. CTRL-CLICKing a DISPLAY button causes the previous display to
be closed. CTRL-CLICKing an item in the Index will
open a new help window and close the previous one. CTRL-CLICKing
the MAKE button when making an object will close the previous object
definition dialog. A more complete list can be found in the help item for Keyboard
Shortcuts. Help tags for buttons may mention what happens if you
CTRL-CLICK on them. 28. Holding down CONTROL while
selecting an object definition in the Define or Methods menu
will close the previous object definition dialog. 29. If the name of a generator,
tool, or transformer is selected, CTRL-= will open the help window for that
item and close the previous one. 30. The For Example dialog
will print to the same window instead of opening a new one each time. There
is an option to revert to the old behavior. The help window utilities for-example
and show-transformation will always write to the same window. Display,
in a help window, will replace the previous window. 31. Holding down OPTION when
closing a window, will close all similar windows. Closing a display will
close all display windows. Closing an object definition window closes all
object definition windows, etc. Miscellaneous 32. The preference for font
size was expanded to include small font (also available with the
tool small-font). This will not only reduce the font size in the edit
boxes but it will also reduce the size of most static text items resulting in
a somewhat leaner look to the interface. 33. Two options which had existed
for CTRL-CLICKing (to specify objects instead of
making them, and changing the way that stockpiles display lists)
have been changed to COMMAND-CLICK. 34. Two categories were added to
the Annotated Index: stockpile and spectral. 35. The tools render-csd and replace-csd-options
correspond to the buttons found in the Csound File
Options dialog. 36. Example files
which can be used with the help items for Csound,
read-tracks-file, OSC, and the various spectrum tools can be found in
the folder Support/FileExamples. 1. This version is primarily a
maintenance update. The connection to Symbolic Sound Corporation's Capybara
has been changed to be compatible with their recent firmware update of the
Flame firewire interface. It is not necessary to
update the Flame firmware to use this version of the AC Toolbox. The Toolbox
should work with either version of the firmware. 2. A preference was added to
change the symbolic naming convention for Midi note numbers. Traditionally in
the Toolbox, c3 has always been note number 60. This remains the default behavior.
In the Preferences dialog, it now possible to choose having middle C
(note number 60) be c3 or c4. All corresponding
symbols and functions which print note names are
adjusted by this preference. 3. Some minor additions were
made to the tool help->window. A few other minor features were
adjusted. New
in Version 4.2.1 1. Some additions were made
regarding the use of binary OSC files. a. A menu item and dialog were added to
plot one argument of an OSC file over time. b. A menu item and dialog were added to
make a histogram of one argument of an OSC file. c. Both of the above dialogs have a
button to search OSC files to determine which synthdefs
and arguments were used. d. The tool render-osc was added, It will render an existing OSC file
using the options regarding sample rate, etc., that are specified in the OSC
File Options dialog. e. Various bugs and features concerning
the production of OSC files were adjusted. 2. The tool read-aiff-file
returns a list of values read from a 16-bit, mono AIFF file. The values from
the file can either be sampled or averaged. The size of the window for
averaging the absolute values can be specified. 3. All-intervals returns a list of all possible all-interval combinations
of some list of numbers. It is also possible to limit the number of
all-interval combinations returned. 4. Select-patterns is a generator which chooses among available patterns and
returns the values one at a time. After all have been returned, a new pattern
is chosen. 5. Skip-rests is
a generator to circumvent a feature of data sections: when a rhythmic value
is a rest, the corresponding pitch value is deleted. With skip-rests, it is
possible to only assign pitch values to notes which
are not rests. 6. Apply-function is a generator which is similar to combine except that
the function can be applied to any number of arguments. 7. A few keyboard shortcuts were introduced
for those who want to reduce their dependence on a mouse or mouse-pad. a. Tables
such as found in Annotated Index or Index can
be scrolled by holding down the option and down arrow keys. The table
must be selected for this to work. b. An item
can be selected from a table by using the right arrow key. c. The
keyboard shortcut for Other Display was changed to command-option-O.
This allows the combination command-` to be used by the system to
select the previous window. 8. Menu items were added to the File
menu to display recently loaded or saved environments and example files.
These files can be reloaded from these menus. 9. Read-spectrum-file was adjusted
to ignore a feature of current versions of Amadeus which
include values for frequency 0. 10. Lisp functions for making and
using Csound objects and OSC score objects were
documented. This information is available via Help > Lisp > Csound Objects and Help > Lisp > OSC Scores.
A help item Keyboard Shortcuts was added describing miscellaneous
shortcuts. Some other help items were clarified. 11. A feature by
which multiple copies of the same help window could be opened was
changed. New
in Version 4.2 1. The primary addition to the AC Toolbox
is the possibility to write binary OSC files and render them within the Toolbox to audio
files (in non-realtime) using the SuperCollider server. 2. A dialog Section->OSC File was
added. An existing section can be converted into a binary OSC file and
rendered to an audio file. Additional arguments for the SuperCollider
synthdef can be added to the existing section data
before writing the file. 3. Dialogs for various OSC
score objects were added. An OSC score object allows the user to generate
OSC messages to control a synthdef. Any number of
arguments may be generated or specified using generators, lists, stockpiles,
etc. The OSC score object saves the specification (but not the values). When
the object is applied, a binary OSC file is produced and rendered to audio.
The basic approach is similar to the use of Csound
objects in the Toolbox. In this case however, a sound model expressed as a SuperCollider synthdef is fed
arguments provided by the Toolbox in a binary file. 4. OSC score objects can be joined in
sequence and in parallel. Both sequential osc
score objects and parallel osc score objects
can be generated as well as specified. 5. Specific OSC messages and SuperCollider server commands can be gathered in an OSC
score bunch which can contain one or more bundles of OSC data. The tools bundle
and message were added to facilitate the expression of this
information. If a user wishes to allocate a buffer and read a file to it as
part of an OSC score object, bundles and messages can be used to do this. 6. A dialog was added for OSC File Options.
Here, information about the audio file can be specified: header, sample
format, number of channels, and sample rate. An audio input can be chosen.
Other options for automatically generating file names, specifying folders,
and controlling the printing of information from SuperCollider
are also included in this dialog. 7. A generator, osc-frame,
was added to facilitate the translation of time expressed in seconds to frame
positions for reading a buffer in a synthdef. 8.
A new chapter
was added to the tutorial describing the creation of OSC files. 9. Examples of OSC score objects
were added to the Dialog Examples. 10. A tool named unix was added to allow the use of Unix commands.
This simple facility was implemented for the internal use of the Toolbox to
communicate with the SuperCollider server but
creative users might find something else to do with it. 11. The AC Toolbox Options
dialog was renamed Preferences and the menu item was moved to the
'proper' OS X location in the Application Menu. 11. Text windows are now metallic - they can be dragged on all sides.
The use of metallic windows can be turned on/off in a preference found in the
Preferences dialog. 12. Menu item Last File Name?
was added to remind a user of the name of the
current environment file. 13. The Toolbox was compiled
using a more recent version of Macintosh Common Lisp. This solves some
problems and will add some others. As a result of this compiler switch, Mac
OS 10.3 or higher is now required to use the AC Toolbox. One improvement
that should come with the new compiler is increased reliability on dual
processor machines. 14. Various minor adjustments
were made: a bug in the behavior of the scheme button in the Objects dialog
was fixed; a repetitive quit dialog was eliminated; display windows can now
zoom; the
category in the Annotated Index for Csound was
renamed Csound/OSC; various help files were
adjusted to reflect the addition of OSC score objects; the Add Comment dialog
is now positioned correctly; some file types were adjusted to work better in
10.4. New
in Version 4.1.2 1. Tool 2-masks was added. It can
generate values with one mask but allows a second mask to block some of the
choices. 2. Menu option Save All Objects As
was added. This asks for a new file name to save all objects. The menu item Save
All Objects was changed to only ask for a file name the first time or if
certain other conditions are met. Subsequent applications of Save All
Objects will write to the same file without prompting for a name. 3.
The tools show-text and show-info were added. Show-text
prints a text representation of a section, community, or midi object to a window.
(This is equivalent to the Text button for the respective objects in
the Objects dialog.) Show-info prints information about
sections, communities, and midi objects in a window. (This is equivalent to
the Info button for the respective objects in the Objects
dialog.) 4. Scale-tempo, extract,
and find-range were adjusted to work with midi objects. 5. Map/time, translate,
convert-stockpile, find-range, and test-generator were
adjusted to work with both chords and multi-dimensional lists (such as those
produced by the chaotic generators). In the latter case, each element of the
multi-dimensional list is mapped, converted, etc. separately. 6. Translate was expanded with a
key word to control clipping behavior. Values being translated can either be
clipped at the specified range or not translated at all if they are outside
the range. The latter situation allows part of the data to be translated
while the rest is not. 7. Sieve-filter was expanded with
a key word to allow all values in a event-list with
the same start time to be treated as one item in regard to the sieve index. 8. A
key word was added to select-generator to allow a chosen generator be repeated a number of times before a new choice is made. 9.
The dialog for importing a Midi file will now accept comments. 10. Some problems displaying objects
containing chords were solved. Also, a control-click option was added to
switch between displaying chords and multi-dimensional lists in the Objects
dialog if appropriate. 11.
Various minor adjustments were made: a problem which occasionally occurred
when example files were loaded was fixed; a possible warning after objects
were renamed was also removed; some minor modifications in dialog examples
and help files were made; a bug concerning the limits in cauchy-value
was fixed; adjustments were made to the way sections and midi objects print
to a window; a bug in the way input was displayed for the Join dialog
was fixed. New
in Version 4.1.1 1.
Some modifications were made in regard to Csound. A Section -> Csound
menu item and dialog were added to facilitate the writing of a Csound file based on a section. The existing tools section->csound and create-csound-file were also modified to work with the Csound File Options dialog and produce files in the
unified file format if desired. 2.
Some additions related to sieves were made. The tool sieve-intersection
produces a list consisting of the intersection of two or more lists, etc. in
ascending order. The transformer funnel
forces the value being transformed to be the closest value in a list (sieve)
of possible values. If two values are equidistant, a random choice is made
between the two options. This was inspired by athenaCL.
Shortcuts for dealing with some sieve tools were added: sv
can be used in addition to sieve, su
can be used in addition to sieve-union, and si
can be used in addition to sieve-intersection. 3. A
tool shortcut was added to allow users to define text shortcuts for
existing AC Toolbox generators, tools, and transformers. A text shortcut is
just another version of the existing name. In addition to the shortcuts for
sieves mentioned above, the AC Toolbox also supports rc for random-choice, rv
for random-value, and tv for test-value.
The shortcuts do not replace the original names,
they are just available in addition to the existing ones. 4. Make-permutation was adjusted
to allow permutations of subsets of the specified elements, e.g. groups of 3
chosen from 4 possible values. 5. Loop-through
was expanded to allow the loop values to be mapped over time. 6. Generate-line
can now also do exponential interpolation between points. 7. Create-text-window is similar
to create-text-file except that the data is printed in a window instead of a
file. 8. Force-int is a transformer that forces the data to be an
integer value. 9.
The documentation for create-text-file was updated to show how it can be used to write a Max coll
file. 10. A bug which
prevented playing microtonal chords in QuickTime was fixed. 11.
Various bugs and features were adjusted in show-transformation, display,
and transform/time. Several minor adjustments were made to the user
interface. New in Version 4.1 1. Support for Symbolic Sound's Capybara
has been added. All Midi data for notes, controllers, and program changes can
be routed via the Flame firewire interface directly
to the Capybara. This allows the use of floating-point values for pitch and
controller values. Details can be found in Tutorial 19 of Using the AC
Toolbox. 2.
QuickTime output can also perform floating-point values for pitch. The
resolution is less than that of the Capybara. For Midi files and other Midi
output destinations (besides Capybara and Quicktime),
pitch and controller values are rounded to integers. 3. To
support the use of floats for pitch and controller data, changes were made in
the AC Toolbox data format. Environments saved in version 4.1 cannot be read
in older versions of the Toolbox.
Older environments can however be read by 4.1. 4. Various tools and generators were
adjusted to accomodate the possibilities of
microtones: hz->midi, harmonic-chord,
spectrum->chord, spectrum->pitch, spectrum->structure,
ring-modulate-chord, frequency-shift-chord, read-adsyn-file, and map-adsyn. 5.
New tools were added: rearrange-stockpile allows values in a stockpile to be rotated, shuffled,
swapped, or placed in an arbitrary order. mingle interleaves two or more stockpiles. duplicates is a filter to use with generator without. It produces a
filter to remove any value that has already occurred. It is not limited to
adjacent values. find-range
returns the minimum and maximum value of object open-url opens an url
expressed as a string in the system's default browser. This works in any case
with Safari and Explorer in 10.3. 6. A
new transformer was added: fill-gaps
fills gaps between notes by increasing the duration of the first of the two
notes. 7.
'Chaotic' parameters for generators henon, standard-map,
logist, and logist2 can now vary over
time. 8. Features
and bugs were dealt with for random-intervals, without, transform/time,
for-example, display, and round-off.
Issues concerning the generation of sequential and parallel sections were
addressed. 9. A
problem in presenting the available Midi options when the user was using a
non-Roman system such as Japanese was solved. 10.
Minor improvements were made to the Midi scheduler. 11.
Adjustments were made in the user interface: a.
Most windows are now resized 'live', i.e. continuously during resizing. b.
Some keyboard shortcuts have been added and changed. c. A
menu item was added to open the Tutorial (Using the AC Toolbox) in a separate
browser window. d. An
option was added to the AC Toolbox Options to allow the selection of dialogs
to open when
the program starts. e. An
item in the tables for Index, Annotated Index, etc. can now also be selected
by hitting return. f.
Option-click produces a help-tag rather than a separate window. g.
Text Score can now optionally print fractional values for pitch. 12.
The link with MacCsound was improved. Support was
added for MacCsound 1.1 which uses Mach-0 file paths. 13.
Additional documentation was included within the program concerning
microtones and controlling the Capybara. Various other online help information
was updated. 14.
Three tutorials were added to Using the AC Toolbox: Tutorial
18 Expressing microtones Tutorial
19 Controlling a Capybara Tutorial
20 Reading spectral data from other sources. 15. A
problem which some users had when running the Toolbox from
a disk not the system disk was corrected. The ACToolbox.framework
was moved to the folder Support within the AC Toolbox folder so that the
Toolbox can find it even if it is not running from the system disk. The
framework used for older versions of the AC Toolbox can be removed: /Library/Frameworks/ACToolbox.framework. The
old framework has no effect if it is not removed. |