A SequenceEngine is an interface for generating lists of sequences (a.k.a. tracks).

SequenceEngine implementations

Name Type Multivoice Chord offsets Wildcards Description
PadSequenceEngine Melodic Yes n/a No Plays chords that last as long as the current chord, no pattern needed
ChordSequenceEngine Melodic Yes Yes No Plays chords based on a pattern
ArpeggioSequenceEngine Melodic No Yes No Uses pattern depending on current chord length
MelodySequenceEngine Melodic No Yes Yes Generates a melody from a pattern for each distinct chord section
FreePatternSequenceEngine Melodic No No No Uses a pattern based on pitch offsets
FreeMultiPatternSequenceEngine Melodic Yes No No Uses multiple patterns based on pitch offsets
PatternSequenceEngine Melodic No Yes Yes Supports transition tones
MultiPatternSequenceEngine Melodic Yes Yes Yes Supports transition tones
DrumSequenceEngine Rhythmic Yes No No Provides drum machine functionality


  • Type - type of track generated; melody-typed tracks can be freely transposed while playing (sequence pitches are treated as transposeable halftones), rhythm-typed tracks may not be transposed (sequence pitches are treated as instrument selectors)
  • Multivoice - if true, more than one sequence can be generated; if false, only one sequence can be generated
  • Chord offsets - if true, pattern pitches are interpreted as chord offsets (which adapt to the current chord); if false, pattern pitches are treated as halftones (0 = c, 1 = c#, etc., which don't adapt to the current chord)
  • Wildcards - if true, at least one wildcard character is supported as part of patterns; if false, no wildcards are supported

Add new comment