Impro-Visor
Encyclopedia
Impro-Visor is an educational tool for creating and playing a lead sheet
, with a particular orientation toward representing jazz
solos.
solos over chord progression
s. It includes a database capability for creating, saving, and recalling lick
s, as well as a lick generation capability based on a user-modifiable grammar.
More recent versions of Impro-Visor include auto-generated playback accompaniment
in various styles, and a style extraction (from MIDI) capability.
Most musical knowledge, including lick generation, database, lead sheet
s, styles, and other information, is represented as text files, permitting the tool to be customized.
. The notation was designed to be friendly to the jazz musician, by resembling directly what appears on the lead sheet
staff. For example, the lead sheet fragment to the right, similar to that in article lead sheet
, can be created by the following text:
The reading of this text is: Chords C and C7 equally spaced in the first bar, and F in the second bar. A melody of c (the + means an octave above middle C, the 2 means a half-note), bb2, meaning a B-flat half-note, bb8, meaning a B-flat eighth-note, f2., meaning an F dotted half-note. Other meta-data can be supplied, such as for style specification, but is not required.
that can be played over any chord into one of four categories. This serves two purposes: (i) as visual feedback to the user, where each category is rendered as a different color, and (ii) as a basis for lick generation. The categories are:
The idea is that, aided by visual clues, the musician can learn to appreciate the degree to which a melody will be sonorous over a chord progression prior to hearing it.
having terminal symbols for each of the four categories, along with a few other terminal symbols for convenience. The grammar defines ways in which the melody space can be filled probabilistically by tones of various durations. By associating a probability with each grammar rule, the distribution of generated melodies can be controlled, for example to create melodies that are simple or complex, relatively consonant or dissonant, etc. The user indicates the chord progression, and the grammar drives the melody generation over that progression. The figure at the right demonstrates an example generated lick. This particular grammar is constructed so as not to produce any discordant notes (notes in the "other" category above), thus no red notes appear in the figure.
, which is encoded into the stochastic context-free grammar
.
). The style of accompaniment is derived from a set of pattern specifications using a textual notation similar to that for melodies. For example, a ride cymbal pattern common to swing jazz would be notated as
with x4 signifying a quarter-note hit and x8 an eighth-note hit.
The swung note aspect, wherein eighth-notes on the beat get approximately twice the value off the beat, is rendered automatically by a numeric swing parameter, such as .67, which indicates that the beat is divided as .67 + .33 = 1. A similar pattern notation is used for chord comping
and bassline
patterns. In the latter type of pattern, a note category coding scheme similar to that for the grammatical notation is used to provide probabilistic creation of basslines.
Lead sheet
A lead sheet is a form of music notation that specifies the essential elements of a popular song: the melody, lyrics and harmony. The melody is written in modern Western music notation, the lyric is written as text below the staff and the harmony is specified with chord symbols above the...
, with a particular orientation toward representing jazz
Jazz
Jazz is a musical style that originated at the beginning of the 20th century in African American communities in the Southern United States. It was born out of a mix of African and European music traditions. From its early development until the present, jazz has incorporated music from 19th and 20th...
solos.
Improvisation Advisor
The philosophy of Impro-Visor is to provide a tool to help musicians construct jazzJazz
Jazz is a musical style that originated at the beginning of the 20th century in African American communities in the Southern United States. It was born out of a mix of African and European music traditions. From its early development until the present, jazz has incorporated music from 19th and 20th...
solos over chord progression
Chord progression
A chord progression is a series of musical chords, or chord changes that "aims for a definite goal" of establishing a tonality founded on a key, root or tonic chord. In other words, the succession of root relationships...
s. It includes a database capability for creating, saving, and recalling lick
Lick (music)
In popular music genres such as rock or jazz music, a lick is "a stock pattern or phrase" consisting of a short series of notes that is used in solos and melodic lines...
s, as well as a lick generation capability based on a user-modifiable grammar.
More recent versions of Impro-Visor include auto-generated playback accompaniment
Accompaniment
In music, accompaniment is the art of playing along with an instrumental or vocal soloist or ensemble, often known as the lead, in a supporting manner...
in various styles, and a style extraction (from MIDI) capability.
Most musical knowledge, including lick generation, database, lead sheet
Lead sheet
A lead sheet is a form of music notation that specifies the essential elements of a popular song: the melody, lyrics and harmony. The melody is written in modern Western music notation, the lyric is written as text below the staff and the harmony is specified with chord symbols above the...
s, styles, and other information, is represented as text files, permitting the tool to be customized.
Leadsheet Notation
Impro-Visor saves lead sheets in a textual notation, and lead sheets may be created from that notation as well as by point-and-clickPoint-and-click
Point-and-click is the action of a computer user moving a cursor to a certain location on a screen and then pressing a mouse button, usually the left button , or other pointing device...
. The notation was designed to be friendly to the jazz musician, by resembling directly what appears on the lead sheet
Lead sheet
A lead sheet is a form of music notation that specifies the essential elements of a popular song: the melody, lyrics and harmony. The melody is written in modern Western music notation, the lyric is written as text below the staff and the harmony is specified with chord symbols above the...
staff. For example, the lead sheet fragment to the right, similar to that in article lead sheet
Lead sheet
A lead sheet is a form of music notation that specifies the essential elements of a popular song: the melody, lyrics and harmony. The melody is written in modern Western music notation, the lyric is written as text below the staff and the harmony is specified with chord symbols above the...
, can be created by the following text:
C C7 | F |
c+2 bb2 bb8 a8 f2.
The reading of this text is: Chords C and C7 equally spaced in the first bar, and F in the second bar. A melody of c (the + means an octave above middle C, the 2 means a half-note), bb2, meaning a B-flat half-note, bb8, meaning a B-flat eighth-note, f2., meaning an F dotted half-note. Other meta-data can be supplied, such as for style specification, but is not required.
Tone Categorization
Impro-Visor categorizes tonesMusical tone
A musical tone is a steady periodic sound. A musical tone is characterized by its duration, pitch, intensity , and timbre . The notes used in music can be more complex than musical tones, as they may include aperiodic aspects, such as attack transients, vibrato, and envelope modulation.A simple...
that can be played over any chord into one of four categories. This serves two purposes: (i) as visual feedback to the user, where each category is rendered as a different color, and (ii) as a basis for lick generation. The categories are:
- Chord tones: tones that are in the chord, and which are thus the most consonantConsonance and dissonanceIn music, a consonance is a harmony, chord, or interval considered stable, as opposed to a dissonance , which is considered to be unstable...
with it (shown as black on the right) - Color tones: tones that are not in the chord, but which are also consonant with it (shown as green on the right)
- Approach tones: tones that are neither of the above, but which approach one of the above chromatically (shown as blue on the right)
- Other tones: none of the above (shown as red on the right)
The idea is that, aided by visual clues, the musician can learn to appreciate the degree to which a melody will be sonorous over a chord progression prior to hearing it.
Grammatical Lick Generation
Categories of notes discussed above are one of the key ingredients in automating the generation of melodies, which can be used by the musician in constructing solos. The other key ingredient is a context-free grammarContext-free grammar
In formal language theory, a context-free grammar is a formal grammar in which every production rule is of the formwhere V is a single nonterminal symbol, and w is a string of terminals and/or nonterminals ....
having terminal symbols for each of the four categories, along with a few other terminal symbols for convenience. The grammar defines ways in which the melody space can be filled probabilistically by tones of various durations. By associating a probability with each grammar rule, the distribution of generated melodies can be controlled, for example to create melodies that are simple or complex, relatively consonant or dissonant, etc. The user indicates the chord progression, and the grammar drives the melody generation over that progression. The figure at the right demonstrates an example generated lick. This particular grammar is constructed so as not to produce any discordant notes (notes in the "other" category above), thus no red notes appear in the figure.
Grammar Learning
Version 4 added a feature for learning a grammar from a corpus of transcribed solos. The learned grammar loosely approximates the playing style of the soloist by creating abstract melodies from the solos, which can be re-instantiated into similar melodies through the grammar. Connections between learned abstract melodic fragments are represented as a Markov chainMarkov chain
A Markov chain, named after Andrey Markov, is a mathematical system that undergoes transitions from one state to another, between a finite or countable number of possible states. It is a random process characterized as memoryless: the next state depends only on the current state and not on the...
, which is encoded into the stochastic context-free grammar
Stochastic context-free grammar
A stochastic context-free grammar is a context-free grammar in which each production is augmented with a probability...
.
Auto-Accompaniment
Impro-Visor automatically creates accompaniment, such as piano, bass, and drums, from the chord sequence on a leadsheet (a capability similar to, but currently not as full-featured as that of Band-in-a-BoxBand-in-a-Box
Band-in-a-Box is a MIDI music arranger software package for Windows and Mac OS produced by PG Music Incorporated. It was first introduced in 1990 for the Atari ST. Since then, PG MUSIC has been a recipient of numerous awards....
). The style of accompaniment is derived from a set of pattern specifications using a textual notation similar to that for melodies. For example, a ride cymbal pattern common to swing jazz would be notated as
x4 x8 x8 x4 x8 x8
with x4 signifying a quarter-note hit and x8 an eighth-note hit.
The swung note aspect, wherein eighth-notes on the beat get approximately twice the value off the beat, is rendered automatically by a numeric swing parameter, such as .67, which indicates that the beat is divided as .67 + .33 = 1. A similar pattern notation is used for chord comping
Comping
Comping is a term used in jazz music to describe the chords, rhythms, and countermelodies that keyboard players or guitar players use to support a jazz musician's improvised solo or melody lines....
and bassline
Bassline
A bassline is the term used in many styles of popular music, such as jazz, blues, funk, dub and electronic music for the low-pitched instrumental part or line played by a rhythm section instrument such as the electric bass, double bass, tuba or keyboard...
patterns. In the latter type of pattern, a note category coding scheme similar to that for the grammatical notation is used to provide probabilistic creation of basslines.
See also
- Chord chartChord chartA chord chart is a form of musical notation that in addition to writing out non-embellished melody, describes harmonic and rhythmic information. It is the most common form of notation used by professional session musicians playing jazz or popular music. It is intended primarily for a rhythm section...
- Chord progressionChord progressionA chord progression is a series of musical chords, or chord changes that "aims for a definite goal" of establishing a tonality founded on a key, root or tonic chord. In other words, the succession of root relationships...
- Grammar inductionGrammar InductionGrammatical induction, also known as grammatical inference or syntactic pattern recognition, refers to the process in machine learning of learning a formal grammar from a set of observations, thus constructing a model which accounts for the characteristics of the observed objects...
- Lead sheetLead sheetA lead sheet is a form of music notation that specifies the essential elements of a popular song: the melody, lyrics and harmony. The melody is written in modern Western music notation, the lyric is written as text below the staff and the harmony is specified with chord symbols above the...
- Lick (music)Lick (music)In popular music genres such as rock or jazz music, a lick is "a stock pattern or phrase" consisting of a short series of notes that is used in solos and melodic lines...
- Musical improvisationMusical improvisationMusical improvisation is the creative activity of immediate musical composition, which combines performance with communication of emotions and instrumental technique as well as spontaneous response to other musicians...
, discussion of improvisation in music - ScorewriterScorewriterA scorewriter, or music notation program, is software used for creating sheet music.A scorewriter is to music notation what a word processor is to text.-Comparison with multitrack sequencer software:...
, also contains the list of most NotationMusical notationMusic notation or musical notation is any system that represents aurally perceived music, through the use of written symbols.-History:...
programs - Stochastic context-free grammarStochastic context-free grammarA stochastic context-free grammar is a context-free grammar in which each production is augmented with a probability...
, a type of grammar used by Impro-Visor to generate phrases
External links
- Video tutorial
- Independent review of Impro-Visor (March, 2007)
- Independent review of Impro-Visor (Outside Notes, August, 2009)
- Independent review of Impro-Visor (Linux Magazine, March, 2010)
- Independent review (elgitar.com)
- Sample solo rendering (leadsheet and MIDI sound)
- Yahoo! Impro-Visor users' group
- Impro-Visor homepage
- Download from SourceForge