Welcome to Impro-Visor
Jazz
Improvisation Advisor
for the
Improviser
Free Software
from
Harvey Mudd
College
Computer
Science Department
Version 3.35
is now available
through the user
group
Last update:
Tuesday, 1 April 2008
Tutorial | Samples | Downloads | Comments | Photos
Impro-Visor (short for ÒImprovisation AdvisorÓ) is a music
notation program designed to help jazz musicians compose and hear solos similar
to ones that might be improvised. The objective is to improve understanding of
solo construction and tune chord changes.
It has also been used for transcription.
Because rhythm-section (e.g. piano, bass, drums) accompaniment is automatically
generated from chords, Impro-Visor can be used as a play-along device.
Now having a wider array of accompaniment styles, its use is not limited to jazz.
Distributed with Impro-Visor is "The Imaginary Book", a chords-only fakebook with chord progressions to about 2500 tunes.
Impro-Visor Screen Shot:

Partial List of Features:
á
Lead sheets and solos can be constructed through either
point-and-click or using a plain text editor (one is provided, but any editor
can be used).
á
Optional automatic note coloration shows whether notes are
consonant or dissonant with chords and scales.
á
Solos or solo fragments can be played back immediately on the
computer, with automatic rhythm section accompaniment.
á
Can be used for self-study, classroom, or play-along. Any segment
of a leadsheet can be played back in looped mode.
á
Users can define new accompaniment styles.
There is spreadsheet-like Style Editor, and
a Style Extractor facility that helps create styles from MIDI performances.
.
á
Solos may be exported as MIDI files, with
accompaniment if desired.
á
It is not necessary that the soloist memorize the solos that are
created in Impro-Visor. The act of constructing solos is intended to help one
get a better understanding of the tune and of solo construction. But one can
use some or all of the ideas from pre-constructed solos constructed, as many
outstanding players have done for generations.
á
Impro-Visor also provides a way for the user to create and save
licks for later use. Lick creation is helpful in understanding how to
construct interesting lines over chord changes.
á
When used for transcription, Impro-Visor allows easy ÒminingÓ of
selected licks from a solo for future reference.
á
Impro-Visor includes a powerful lick generation capability.
Licks, or entire choruses, can be generated in near-real time just by pressing
a button. The generation of licks is controlled by a user-modifiable grammar, so that a
range of styles and complexities is possible.
á
Impro-Visor uses dynamic menus in the form shown to help one choose
notes, cells, idioms, licks, and quotes for use in constructing a solo.
á
Musical knowledge about chords, scales, licks, etc. are
definable by the user or instructor, in the form of a vocabulary text file.
These items are defined in a single key, and Impro-Visor will transpose them to
any key.
á
Impro-Visor saves solos and other lead sheets as free-form text. We call this
leadsheet notation. Although a point-and-click interface is provided, users can
optionally enter chords and/or melody in this notation with a standard text
editor and have them displayed as a lead sheet in Impro-Visor. The
documentation tells how to create and interpret the notation. The notation also
provides slash-chords and polychords.
á
Any number of leadsheet windows can be open simultaneously. The
user can cut and paste melody and chords from one window to another.
á
The release of Impro-Visor comes with a few leadsheets with
melodies, a number of sample solos, transcriptions, and The Imaginary Book: a
large set (over 2100) of chords-only lead sheets for standard, jazz, and some
pop tunes.
á
Impro-Visor is free and runs on any platform that
supports Java
1.5 or later, including:
o
Windows (Vista, XP, 2000, maybe others)
o
MacOSX (with Java 1.5 installed)
o
Linux
Documentation that you might find helpful:
o
Tutorial
o Impro-Visor's Scale and Chord Repertoire
o
How
To Improvise Jazz Melodies by Bob Keller
o
Guide to Leadsheet Notation (pdf,
html)
o
Blues for Gary: Design Abstractions for a Jazz Improvisation Assistant,
ENTCS (Electronic Notes in Theoretical Computer Science), 193 (2007) 47-60
by Keller, Hunt, Jones, Morrison, Wolin, and Gomez
o
Paper presented at the Third Workshop on
Computational Creativity,
European Conference on Artificial Intelligence,
2006 (ECAI '06):
A
Computational Framework Enhancing Jazz Creativity
by Keller, Jones, Morrison, Thom, and Wolin.
o
Paper appearing in the Fourth Sound
and Music Conference, SMC Õ07, Lefkada, Greece:
A
Grammatical Approach to Automatic Improvisation, by Keller and Morrison.
o
Early paper describing use:
An
Interactive Tool for Learning Improvisation Through Composition,
by Keller, Jones, Thom, and Wolin,
Tech Rept. HMC- CS - 2005-02, Harvey
Mudd College, Sept. 2005
Credits:
Concept:
Bob Keller
Design:
Bob Keller, Steve Gomez, Martin Hunt,
Stephen Jones,
David
Morrison, Belinda Thom, Aaron Wolin, Jim Herold, Brandy McMenamy, Sayuri Soejima
Implementation:
Bob Keller,
Steve Gomez, Martin Hunt, Stephen Jones,
David
Morrison, Aaron Wolin, Jim Herold, Brandy McMenamy, Sayuri Soejima, John Goodman
Support:
This project was supported by a Mellon
Foundation Faculty
Enhancement grant to Professors Keller
and Thom, by
the National Science Foundation REU
Program under grant
Award No. 0451293 to Harvey Mudd
College, and by a grant from the Baker Foundation.
Software Libraries and Tools:
o
Java
1.5
o
NetBeans IDE 4.x, 5.x, 6.0.1
Sincerely,
Bob Keller
Csilla and Walt Foley Professor of
Computer Science
Harvey Mudd College