Skip to main content

Harmonic and Melodic Patterns

In the previous tutorial, you learned the basics of Flow and created a simple generative drum beat. In this tutorial, you will add musical context to that beat and learn how to create complex and structured patterns using high-level states that can contain nested states and transitions.

Pattern Overview

You will make a generative musical pattern similar to the one demonstrated in the Music Modeling chapter. It consists of four parallel parts:

  • The harmony: a sequence of chords that defines the tonality and mood, played on whole notes;
  • The arpeggios: a pattern of notes that plays on top of the chord progression and adds rhythm, played on sixteenth notes, with two different arpeggios for extra variety;
  • The melody: a series of notes that creates a tune, played on dotted quarter notes;
  • The modulations: modulation values that affect the sound of the notes, played on every four whole notes.

Each part will have its own state machine that will generate notes and modulation values according to the rules you set.

The following state machine diagram illustrates this pattern:

Parallel state machine with four parts representing harmony, arpeggio, melody and modulations playing simultaneously

First, let's configure the MIDI track that will host Flow and a synthesizer plug-ins.