Many Hands: Computer-assisted piano performance

Bob Gluck 2008

Piano performance analysis in "Many Hands" interface, designed with Max/MSP

"Many Hands" is a series of software interfaces that allow a pianist to shape the unfolding of a range of electronic music resources ­ sounds, processes, events and electronic instruments and devices ­ in response to that pianistıs playing. The software interprets data about real-time performance ­ how fast is the playing, how dense are the chords or clusters, how long are melodic phrases, relative rhythmic steadiness, and basic harmonic analysis. The basic data from which this more complex information is calculated ­ which note is being played at what volume level ­ is generated by use of a piano data-tracking device (Yamaha Disklavier or a conventional acoustic piano fitted with a Moog PianoBar). It is this data that is used by the "Many Hands" software interface to calculate more complex information that can be used to expand the nature of piano performance.

Moog PianoBar, photo from Moog Musicbelow: Moog Little Phatty, above: Moog control voltage processor,
computer and interfaces / piano on right

"Many Hands" is being used in several compositional and performance contexts. One of these is the performance interface "Many Hands II", which is a component in the performance of 'Awakening the Sleeping Giant', a new interpretation by Bob Gluck of Herbie Hancockıs 1972 composition 'Sleeping Giant'. For this and other compositions, "Many Hands II" is supplemented by a second interface that offers digital processing of the real-time acoustical sound of the piano, transmitted by means of a Barcus Berry pick-up placed on the pianoıs soundboard. Thus, the pianist utilizes the computer to receive and process both performance information and an audio stream.

In "Many Hands II", the performance data analysis offers dynamic control over filter parameters shaping the timbre of arpeggiated sequences on the Moog Little Phatty, in one or both of two ways - shape the filter parameters based on the piano playing (how fast, how large the chords, how long the strings of melodic line...) and/or influence the notes included in the arpeggios.

phrase length -> overload
density -> cutoff
how fast -> resonance
average pulse (bpm) -> amount of modulation

These algorithmically determined parameter settings can be overridden by adjusting sliders on a MIDI mixer.

The performer may choose to select the notes to be arpeggiated from the Moog's own keyboard or from the acoustic piano keyboard, in which case, the piano performance functions in two ways simultaneously: independently and as an external pitch controller for the Moog.

Here's a brief mp3 example.

Various aspects of the Moogıs sounds are also influenced by a CP251 control voltage processor, which also generates white noise that is used as both a sound element and a random control voltage generator.

The PianoBar also sends MIDI data to its own sound module, whose audio output is processed with a digital delay stomp box and a wah wah pedal.


In addition, "Many Hands II" includes these components:

- recording and playback of real-time piano performance data (not audio), stored as two banks of MIDI information. Recording begins by tapping a pedal once or twice (depending upon the bank selected); replay begins by touching one of the top two keys on the piano keyboard. Playback is either performed by a Disklavier, whose solenoid motors initiate the movement of the piano hammers, or through a MIDI sound module, using piano sounds.

Here's a brief mp3 example.

Here's a lengthier mp3 recording of a solo interpretation of Herbie Hancock's "Sleeping Giant" that incorporates some of these features.

- one additional element of "Many Hands" is an improvisation module which generates continually changing variations of three-note riffs played by the pianist. A series of additional process can be selected that creates additional variations riffs of those notes further up the keyboard.
The digital audio processing interface includes multiple delays, harmonizer, hi-pass filter, comb filter and other processing algorithms. The pianist can also record and replay three banks of real-time audio from music played on the piano (in addition to the two banks of recordable and replayable MIDI data).

The relative volume of the output from each of these processing algorithms, as well as settings for parameters related to each of the processors, is controlled by a miniature, multi-channel MIDI mixer that rests on top of the piano.

Delay 1 -> delay feedback
Delay 2 -> delay feedback
Harmonizer -> transport, delay and feedback
Pitch stretch 1 -> modulation frequency
Pitch stretch 2 -> (modulation frequency is set by mouse clicks)
Amplification of mic'd piano
Comb filter -> a cluster of parameters (delay, gain ...)
Hi-pass filter -> center frequency
Mutation (quasi fuzz box processing) -> modulation frequency

"Sideways", a 2008 CD by the Bob Gluck Trio includes an example of solo piano processed with the Pitch Stretch 1 algorithm from "Many Hands" 'Yet Another Pharoah'.

For the performance of another composition, Bennie Maupinıs 'Quasar' (1972), the software interface includes a multi-track sound cloud generator, the various sound components of which move around in relative pitch direction. Much of the sounds were from processed shofar.

Here's a brief mp3 example from a Trio performance in Spring 2007, with Michael Bisio (bowed bass) and Dean Sharp (drums). A screenshot of the software interface may be found below.

An additional work that draws upon "Many Hands" is 'Piano Concentrate', in which the the pianist's playing functions not only on its own, but as triggers for the playback of pre-recorded standard MIDI files of music ranging from Bach to the Beatles. The software analyzes types of chordal triads (major, minor, diminished, augmented, suspended fourth), each of which is assigned to trigger MIDI file playback mode in a particular manner: forward, backward, pitch sequence scramble, looped, start play at a randomly selected point. The speed and volume of playback follows the piano performance. Playing a cluster starts and stops replay. Specific notes trigger the playback of a second bank of standard MIDI files.

[Return to home page]