Interlocking Pulses

Andreja Andric 2018/2019

Caution if you are wearing headphones: extremely loud sounds

To perform on any device with a web browser, ideally on a smartphone. Variable duration. Uses HTML5 Web Audio API. It is currently compatible with most modern desktop browsers, Chrome on Android phones and Chrome or Safari on iPhones.

The work consists of a melody which periodically develops and subsides through numerous cycles, through interpolation of rows of repeated notes taken from the harmonic row. The swipe interface on the smartphone provides opportunity for gestures familiar from popular mobile phone applications like Tinder, thereby contributing to the stage aspect of the performance. The melody is always given in two interlocking voices, most often in parallel octaves, but sometimes also in parallel fifths, fourths or in contrary motion, as will be explained below. The notes repeat in mutually similar rhythms that again seem to interlock and thereby create different sound colors, pulsations and interferences. The scale for the top voice is in just intonation, consisting of 15 notes spanning two octaves, and tuned according to the following fractions with respect to the given ground frequency: 1/1 6/5 5/4 4/3 3/2 8/5 5/3 2/1 12/5 10/4 8/3 6/2 16/5 10/3 4/1, which can be approximated by C, D#, E, F, G, G#, A, C, D#, E, F, G, G#, A, C. The sound resolution is 44100 samples per second, but only 1 bit per sample, which, apart from the characteristic noisy sound, creates a direct link between tone intervals and resulting sound color. See the source code and the accompanying commentary for details. The program repeats the current state of the melody until the performer makes a change.

How to play: Change the melody and move forward through the list of harmonics with > and < buttons or Swipe left/right. The melody of the current cycle should be gradually constructed from the notes from the harmonic row. Not all notes from the row are available for each cycle: as will be mentioned below, a random selection of the available notes is created for each cycle, to make an individual spectrum of that cycle. You have to traverse the entire row of the cycle forward and backward before moving to the next cycle. You can move repeatedly forward and backward through short subsegments of the row, especially if the cycle itself is short. You can also rotate the odd notes one or multiple times to the left or to the right, exploring the different melodic variants of the same note set. After traversing the entire row and coming back to the first note, move to the next cycle by pressing the Cycle / New button or use swipe up or swipe down motion on the swipe panel. On each cycle change, the gap between the repeated notes and the number of the notes added with each move through the harmonic row are selected at random by the program. Also on each cycle change, as stated above, the selection of notes from the harmonic row (its spectrum) is chosen at random. In addition, on cycle changes, one or more of the following three additional changes may be done, to increase the variety of the sound material:

  1. Change the tonality by changing the Ground Frequency by choosing the New button. The New button picks ground frequency at random from within the range between 60Hz and 120Hz. If the ground frequency is different from 60Hz (the starting ground frequency), then return to 60Hz by using Back button.
  2. Double or halve the length of the repeating time cell, by doubling or halving either the Note count or the Duration. Generally stick with Note count of 32 and Duration of 64ms. Occasionally reduce note count to 16 or increase duration to 128. Less often, or never go for other values.
  3. Change the polyphony type from parallel octaves to fifths, fourths or contrary motion by choosing the New button. As with ground frequency above, the New button chooses a polyphony type at random, different from parallel octaves. As above, if the polyphony type is different from parallel octaves, return to parallel octaves with the Back button.


Swipe Panel

Last updated January 30th 2019