ChordSequenceEngine

The ChordSequenceEngine is a SequenceEngine that uses a pattern (provided by the configured PatternEngine) in which you specify chord offsets to use. Each offset from the pattern will be used to play a chord generated by using the given chord offset and adding all offsets provided in the "offsets" tag to it, one for each chord pitch. Example: let's suppose you have configured this SequenceEngine to use the chord offsets 0, 1, 2, 3 (which would be a normal chord plus the base tone transposed one octave up). If the pattern contains a "1" for the current tick, the SequenceEngine will create a chord using the chord offsets 1, 2, 3, 4.

The ChordSequenceEngine randomly chooses one of the provided "patternEngine" tags and uses it to render a pattern. Then a multi-voice sequence will be rendered using this pattern.

Configuration

Tag Attribute Type # Example Description
offets - list of ints 1 0,1,2,5 The chord offsets to play for each note.
normalizeChords - boolean 0-1 false Specifies that chords should be normalized. Defaults to true. Available since version 0.3.
patternEngine class class 1 StringPatternEngine The name of the PatternEngine implementation to use.
patternEngine - - 1-n - The configuration of the PatternEngine implementation.

Configuration example


<sequenceEngine class="ChordSequenceEngine">
  <offsets>0,1,2</offsets>
  <patternEngine class="RandomFragmentPatternEngine">
    <patternTicks>48</patternTicks>
    <patternString>A1,A2,A1,A3</patternString>
    <pattern group="A">0,-,-,0,-,-,0,-|0,-,0,-,-,0,-,-|0,-,-,0,-,0,-,-</pattern>
  </patternEngine>
</sequenceEngine>

Add new comment