Comp

This page contains comping-related settings for the current part. Comping is an abbreviation for accompanying. Comping is enabled by selecting the Comp mapping function in the parts list. In the Comp function, playing a single note on the input device produces a chord on the output device, specifically a tetrachord or a triad. The current song position determines the chord type. Which note is played determines the frequency range of the chord, i.e. higher notes result in higher chords. Specifically, the input note is used as the bottom of a one-octave window within which the output chord is voiced. The chord is inverted as needed to keep it within the specified window. The output notes all have the same velocity as the input note. The chord voicing and variation are configurable, and the chords can also be arpeggiated.

The performer's input to the Comp function is primarily rhythmic. An effective chordal accompaniment can be achieved by playing a single note with suitable rhythm. It may be desirable to vary the input note (and thereby vary the frequency range of the output chords) for dramatic effect and to account for the range of the soloist or other performers.

The Comp function is also useful for self-accompaniment, e.g. on a keyboard instrument. This is achieved by creating a split consisting of two parts, one set to Comp and the other set to Lead. Both parts receive their input from the same device, but occupy different zones of the input device. For example to play Lead with the right hand and Comp with the left hand, assuming a split point of C4, you might give the Lead part a zone of C4 to G9 and the Comp part a zone of C−1 to B3.

The Comp part is normally played with only one input note at time. Multiple input notes at once are permitted, and may create interesting effects, but at the risk of too many simultaneous output notes exceeding the polyphony of the output device.

Voicing

This setting determines the chord voicing. For close voicing, the chord is inverted as needed to fit within a one-octave window, the bottom of which is determined by the input note, as explained above. For other voicings, the close voicing is still computed, but serves as a preliminary stage: one or more notes of the close voicing are then dropped an octave, as shown in the table below. Drop 2 and drop 3 voicings are characteristic of guitar. Note that this setting only affects tetrachords; triads always use close voicing.

VoicingNotes droppedCmaj7
CloseNoneC4 E4 G4 B4
Drop 22nd from topG3 C4 E4 B4
Drop 33rd from topE3 C4 G4 B4
Drop 44th from topC3 E4 G4 B4
Drop 2 32nd and 3rd from topE3 G3 C4 B4
Drop 2 42nd and 4th from topC3 G3 E4 B4
Drop 3 43rd and 4th from topC3 E3 G4 B4
Drop 2 3 42nd, 3rd and 4th from topC3 E3 G3 B4

Variation

This setting determines if and how chords vary. Two variations are defined for each chord type. The variations are referred to as A and B. Typically A is a more conventional spelling, whereas B alters one or more chord tones, e.g. for the major seventh chord type, A is 1 3 5 7 and B is 2 3 5 6, effectively substituting a 69 chord. The variations are a matter of taste, and may be customized by editing the chord dictionary. The variation schemes are shown below. The "A to B" and "B to A" schemes are only distinguishable if Chord change resets alternation is enabled.

SchemeBehavior
A onlyOnly the A variation of the chord is output.
B onlyOnly the B variation of the chord is output.
A to BThe output chord alternates between the A and B variations. If "Chord change resets alternation" is enabled, a change of chord resets the alternation to A.
B to AThe output chord alternates between the B and A variations. If "Chord change resets alternation" is enabled, a change of chord resets the alternation to B.

Chord change resets alternation

This setting determines whether a change of chord resets the alternation state for the "A to B" and "B to A" variation schemes. In these schemes, successive input notes alternate the output chord between the two variations defined for the current chord type.

DisabledThe alternation is never reset. This lets the performer create arbitrary patterns of chord variation. This option is more challenging, but also more expressive. Note that in this case, the "A to B" and "B to A" schemes are indistinguishable.
EnabledThe alternation is reset to a known state at the start of each new chord. This makes it easy to maintain a consistent pattern of variation.

Arpeggio Period

The notes of a chord can be played in sequence instead of simultaneously, forming an arpeggio. The speed of the arpeggio is determined by the arpeggio period, i.e. the duration of the pause between successive arpeggio notes, expressed as a fraction of a whole note. Because it's a period, not a frequency, smaller values result in faster arpeggios. If the period is zero, arpeggiation is disabled. The drop list lets you select common fractional values, e.g. an 1/8 note. You can also type a fraction or floating-point value in the edit box; see durations.

The arpeggio speed can be varied at any time, including during an arpeggio. With precise timing, an arpeggio can be gradually sped up or slowed down. This technique lets you realistically emulate strumming, e.g. on guitar. It's easier to achieve the needed precision via a physical remote control, assigned to the Comp Arp Period MIDI target. In some cases it may be preferable to control the arpeggio period in a quantized manner instead of continuously. In this case the Comp Arp Period Quant MIDI target should be used instead. It selects the arpeggio period from the following list of durations:

1/1whole
1/2half
T1/2triplet half (1/3)
1/4quarter
T1/4triplet quarter (1/6)
1/8eighth
T1/8triplet eighth (1/12)
1/16sixteenth
T1/16triplet sixteenth (1/24)
1/32thirty-second
T1/32triplet thirty-second (1/48)
1/64sixty-fourth

Arpeggio Order

This setting determines the order of the notes when a chord is arpeggiated. The options are listed in the table below.

OrderDescription
DefaultThe chord's notes are played in their default order, which is determined by the chord type, voicing, and variation.
AscendingThe chord's notes are played in ascending order, from lowest to highest.
DescendingThe chord's notes are played in descending order, from highest to lowest.
AlternateThe arpeggio alternates between ascending and descending order. This is useful for emulating guitar strumming.
RandomThe chord's notes are played in random order, avoiding repeated notes. This is useful for emulating guitar fingerpicking.

Arpeggio Repeat

This setting determines whether chord arpeggios are repeated.

DisabledThe arpeggio stops when all of the chord's notes have been played, after which continuing to hold the input note has no effect.
EnabledThe arpeggio repeats for as long as the input note remains pressed.

Arpeggio repeat can be combined with auto play, resulting in continuous automated arpeggios. The effect is similar to a music box. It's more interesting if the arpeggio order is random.

Arpeggio Adapt

This setting causes arpeggios that span a chord change to adapt to the change. Ordinarily an arpeggio's notes are determined solely by the chord during which it begins, and remain constant. Consequently if an ordinary arpeggio spans two chords, it may clash with the latter chord. Adaptive arpeggios avoid this potential clash. When the chord changes, any unplayed arpeggio note that's not found in the new chord is replaced with the nearest unused note from the new chord.

In the following example, an arpeggio is evenly split between two chords, i.e. its first two notes occur during Cmaj7 and its remaining notes occur during Dbmaj7. In the ordinary case, G and B clash with Dbmaj7, whereas in the adaptive case, they're replaced with the nearest notes of Dbmaj7's arpeggio. Notice that the adapted arpeggio spells C+(b9) rather than Cmaj7. Adaptive arpeggios combine chords, resulting in hybrids which may be nonstandard and/or dissonant.

AdaptCmaj7Dbmaj7
NoC4 E4G4 B4
YesC4 E4Ab4 Db5

Note that for adaptive arpeggios to work properly, the fix held notes feature must be disabled, because otherwise it would correct the entire arpeggio, preventing hybrids. Adaptation takes harmonic anticipation into account, i.e. a given part can update its arpeggios early (or late) relative to other parts. Adaptation works best with one-shot arpeggios; a repeating arpeggio can only adapt during its first pass.