Share |

This product was last tested in the Softpedia Labs on 13 March 2012. Softpedia guarantees that Impro-Visor 5.16 is 100% Free, which means it does not contain any form of malware, including but not limited to: spyware, viruses, trojans and backdoors. This software product was tested thoroughly and was found absolutely clean; therefore, it can be installed with no concern by any computer user. [more certifications]

Welcome to

Jazz Improvisation Advisor

for the Improviser

Free Open-Source Software from

Harvey Mudd College

Computer Science Department

This document is
Copyright © 2008-2012

by Robert M. Keller, all rights reserved.

The software is free and licensed under
GNU General Public License, v2.


Impro-Visor is a Registered Trademark.
The logo was drawn by Franz Keller and
is Copyright © 2009-2012 by Robert M. Keller,
all rights reserved.


Last update: 15 May 2012

Version 5.16 is now available here: Get Impro-Visor at Fast, secure and Free Open Source software downloads

Please join the Yahoo! user group to download The Imaginary Book and user-contributed works.

Downloads | Uses | Classroom Use | FAQ | Certifications | Tutorials | Reference Card

60+ Ideas for Using | Samples | Roadmap Garden | Licks | Comments | Papers | Photos | Videos | Links


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. There are other, secondary, things it can do, such as improvise on its own. 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.


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.


Chords may also be entered quickly through a "roadmap" editor, which also analyzes chord changes for implied keys and idiomatic progressions ("bricks").


Harmonic note entry option guides the user to select notes that are consonant with harmony. Similarly, transposition options provide chromatic or harmonic transposition.


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 and heads may be exported as MIDI files, with accompaniment if desired.


Solos and heads may be exported as MusicXML, for import to other popular music notation software.


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, as many generations of outstanding players have done.


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 uses menus 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 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 can learn grammars for a particular style from a corpus of solos.


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 example leadsheets. More resources are available through the Yahoo! users group:


Impro-Visor is free and runs on any platform that supports Java 1.6 or later, including:

Windows (7, Vista, XP, 2000, maybe others)

MacOSX (with Java 1.6 installed)



Documentation that you might find helpful:

Impro-Visor's Scale and Chord Repertoire


How To Improvise Jazz Melodies by Bob Keller


Guide to Leadsheet Notation (pdf)


Other papers and presentations on, or related to, Impro-Visor




Bob Keller



Bob Keller, Steve Gomez, Martin Hunt, Stephen Jones,

David Morrison, Belinda Thom, Aaron Wolin, Jim Herold, Brandy McMenamy, Sayuri Soejima

Jon Gillick, Kevin Tang, Emma Carlson, Stephen Lee, Lasconic (Nicolas Froment)

Zack Merritt, Xanda Schofield, August Toman-Yih



Bob Keller, Steve Gomez, Martin Hunt, Stephen Jones,

David Morrison, Aaron Wolin, Jim Herold, Brandy McMenamy, Sayuri Soejima, John Goodman

Jon Gillick, Kevin Tang, Emma Carlson, Stephen Lee, Chad Waters, Lasconic (Nicolas Froment)

Zack Merritt, Xanda Schofield, August Toman-Yih, Amos Byon



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 Used in Development:


install4j installers and launchers, from ej-Technologies GmbH


NetBeans Interactive Development Environment, versions 4-7


jMusic Java Library, created by Andrew Sorensen and Andrew Brown, Queensland University of Technology


Polya Java Library, created by Robert Keller



Bob Keller


Professor of Computer Science

Harvey Mudd College