Chaos - - The Chaotic Music Generator

Chaos, v1.0 is available on the web at http://www.webcom.com/ie/benoist
Chaos - The Chaotic Music Generator
DOCS are in the file support/docs/doc.txt
Copyright © 1995 Tom Benoist
Permission to use, copy, distribute, this software and
its documentation FREE OF CHARGE is hereby granted without fee, provided
that the copyright notice, this permission notice and all other information
in this file remain intact.
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF
ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL TOM BENOIST BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF
THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
the DTjanitor is grateful
to Tom B. for his Chaotic contribution and we acknowledge his
approval of our including same herein.
included subdirectories:
and the contents of support/docs/doc.txt
follow:
Chaos - Chaotic Music Generator
© 1995, Tom Benoist - ben@ifx.com
Version 1.0 - August 27, 1995
What is Chaos
Chaos was originally intended as a pitch tracking midi
improvisor which would listen to incoming pitches on
the microphone port and play corresponding notes on a
midi device. Due to the often bizarre timberal qualities
of the input, poor calibration of the tracking algorithms
and the fact that I didnt have a microphone good enough
not to pick up the output of the program through the nearby
speakers, Chaos emerged.
What You'll need:
- An indigo/indigo2/indy with an R4000 chip (the fft library
for 5.2 is only compiled -mips2, booo hiss)
- A Macintosh compatible midi box like the Midiator
(I use the Altech MidiFace)
- A midi device to make sound with. (I use a Roland Soundcanvas)
- A microphone which should be plugged into the microphone
port of the SGI. (preferably with a nice long cord)
Starting up:
- Upon startup, the first thing you should do is set the
current midi port value (Menu in upper right hand corner.)
For some reason, setting this after loading Chaos files
may produce strange results in the application. (I Hope to
fix this soon.)
- Make sure you have read/write permisions on the port
you choose for Midi. Example: chmod a+rw /dev/ttyd1
- Make sure you dont use a port currently in use by
either 'getty' (check out /etc/inittab) or a tablet
driver. You will get an error message from Chaos
when it tries to open ports which are already in use.
- Have the microphone plugged in (Use 'apanel' to set input
levels appropriately).
- Shut the door to your office before you turn up the volume on
your midi box, things are going to get wierd.
- Hit the open button and browse through the demo files.
For proper effect, you can place the microphone near
the speakers, so that a proper butterfly feedback
effect occurs.
- Experiament with whistling into the microphone to produce
input to the algorithm. A sucking whistle is prefered
as most microphones dont react well to large gusts of
air.
The Interface
Midi Settings - Effects the instrument used and velocity of notes
FFT Settings - Controls the basic Fast Fourier interpretation
Note Control - Gives you some control over which notes pop
out of the beast.
Time Control - Controls the rhythm of your composition
Each control follows a standard and quite bizarre interface.
At this time 2 different modes are available
- HI/LO - Lets you choose a high and low value for
a settings. Random numbers are then chosen
which fall between the 2 values.
- OSCILATE - Lets you choose base and peak range and then
have the oscilator oscilate between them.
Does take some getting used to.
- FILE - NOT CURRENTLY ACTIVE
- SCRIPT - NOT CURRENTLY ACTIVE
MIDI SETTINGS
Velocity - The velocity of notes that are played by the
channel.
Midi Channel - The midi channel used for output (1-16)
Stereo Pan - Affects the balace of the channel so
that notes can move in left/right space.
FFT SETTINGS
Midi Base - Note value base added to value calculated by
spectrum (Really just a transpose/translation)
Midi Scale - Scale value multiplied by spectrum note.
NOTE CONTROL
loclip - Sets a value for the lowest note playable
by the channel.
hiclip - Sets a value for the highest note playable
by the channel.
Key - Sets the key of scale being played
(0 = C1, 12 = C2 etc)
Scale Menu - Sets a scale, current choices are : All notes,
Pentatonic, Lydian, C Major, C Sharp, and Blues
TIME CONTROL
duration - Controls the duration of a note when it is played
beat - Controls the spacing between notes played by
the channel
Adding New Midi Devices
You can add instrument names for any midi device you might have
by simply editing a text file with the following structure:
PROGRAM# NAME
Example:
1 Piano
15 Guitar
24 DogBarking
Place the file in the directory Chaos/support/devices and it will
be added to the device menu at startup. If you create a new device
lists, please email them to me at ben@ifx.com so that we can
distribute them with the next version of the software.
Contacting the Author
You may contact the author regarding ideas for future
controls and bug reports, but please include at least
one Unique Chaos Composition :)
Enjoy,
Tom Benoist - ben@ifx.com
OR, ...
Copyright © 1995, Silicon Graphics, Inc.