Saxony

[live electronics, improvisation, software, physical computing]

Concept and Overview

A modern take on James Tenney’s Saxony, originally realized with Adrián Carro, as a project for Gary Berger’s Interaktion Instrument und Live-Elektronik class in January, 2020. Later that month, along with Yi Lu and Adrien Zanni, I created a second version of the project for Yi's MA saxophone performance recital.

Tenney's original 1978 version was performed using a 12 second analog tape feedback loop; however, for this implementation I realized the concept using a two-channel tape style looper built in Max with midi control, plus a custom 8 channel spatialization tool with integrated touchOSC controller. This implementation enabled me to have a creative influence on the performance as well, creating a much more dynamic situation where the underlying processes at work (feedback and multichannel diffusion) could be shaped in real-time.

→ jump to:

Original Notes and Score

Technical Implementation

  • The saxophone performance was recorded into one of two buffer objects (digital tape loops).

  • Each buffer featured independent input gain, feedback percentage, output gain, and panning controls.

  • The panning algorithm used Max’s [Nodes] object, where each of the 8 speakers was represented as a node, and the crosshair represented the sound position; the square root of the output (i.e. (1 - the normalized distance to the center of the node)1/2) controlled the amplitude of the buffer for each speaker. By adjusting the radius of the nodes, I could create anything from omnidirectional to highly localized sound.

  • All parameters could be automated with a random walk (LFNoise) control with variable speed and gain (+/- scale factor to multiply the original value by), thus allowing me to create a more dynamic mix.

  • During the performance, I recorded the deeper/simpler bass tones from the first section into the first buffer and the more ornate parts that followed into the second buffer. This allowed me to keep the foundation available (by turning the input down to 0% and feedback up to 100%) and mix it dynamically throughout the piece, while setting a lower feedback percentage for the second buffer so those elements took on a more ephemeral quality.

  • The main parameters (microphone routing, buffer input/feedback/output gain, randomization speed/gain) were all controlled with a Behringer BCF2000 motorized Midi controller - the motorized faders allowed for feedback to the controller in case any parameters were set from the patch, i.e. on initialization. The spatializer controls were managed from a custom TouchOSC app.

  • v2.0 (for Yi Lu’s MA performance - a collaboration with Adrien Zani) added ambisonic reverb via Spat; Adrien handled the Klangregie (managing the overall balance between levels of the buffer playback, live mic input, and ambisonic reverb).


Photos

add screenshot of max patch and touch osc interface

Media

Saxony v2.0 (binaural version, PLEASE WEAR HEADPHONES)

- with Yi Lu (Saxophone) and Adrien Zanni (Tonregie)

Custom Midi Controller

This project also inspired the design and construction of a custom MIDI controller prototype built using a Teensy 3.2 microcontroller realized as part of Michi Egger’s Auffuhrungsraxis 3 course. The design included dual sets of controls (60 mm faders with high resolution 14 bit MIDI output, a joystick with the centering spring removed (for panning control), potentiometers, buttons, and RGB LEDs for feedback), one for each looping buffer. In the end, I successfully built, programmed, and tested a prototype to control a single buffer; the next step is to send the PCBs to be professionally fabricated.

MIDI controller schematic
MIDI controller back side PCB layout
Fabricated MIDI controller