chord

[Class]
  `chord`

A specialized pattern that returns sub-pattern periods as lists of chord elements.

See generic pattern initializations for documentation on additional keyword initializations to the pattern.

#### Examples:

Example 1. Cycle of randomized chords.

    (define pat1
      (new cycle
           :of (list (new chord
                          :of (new heap :notes '(c5 d ef f g af bf c6)
                                   :for (new random :of '(4 5))))
                     (new chord
                          :of (new heap :notes '(c4 d ef f g af bf c5)
                                   :for (new random :of '(4 5))))
                     (new chord
                          :of (new heap :notes '(c3 d ef f g af bf c)
                                   :for (new random :of '(4 5)))))))

    (define (play-pat reps pat amp tempo)
      (let ((rhy (new cycle :of '(e e e s))))
        (process repeat reps
                 for r = (rhythm (next rhy) tempo)
                 each k in (next pat)
                 output (new midi :time (now)
                             :keynum k
                             :amplitude amp
                             :duration (* r .75))
                 wait r)))

    (events (play-pat 40 pat1 .8 120) "test.mid")
    ⇒ "test.mid"

#### See also:

- Pattern classes [Topic]