Wolkenpumpe, like so many other “components” implemented on top of Sound Processes and available in Mellite, was originally a standalone project.
I first started moving my live improvisation practice from the analog domain to digital computers and software around 2004. I think Blind Operators, a short-lived hybrid analog/computer project with Martin Kuentz, may have been the first time I employed an initial Max/MSP patch that would form the basis of Wolkenpumpe. I then reimplemented the patch in SuperCollider, when version 3 became open source. It was a fixed “matrix” of sound generators and filters that could be enabled and configured using a MIDI controller, following the spirit of my earlier analog practice with music cassette walkmen, various filtering and distortion modules, loopers, and mixer. The matrix then become more dynamic, as a variable number of modules could be added, and soon after the fixed grid layout of modules became too constraining. I moved to a SwingOSC based interface written in Java, with the sound processing still happening in the SuperCollider server. In the new interface, one could place modules anywhere on the screen, and wire them up with patch cords. I began operating them with a graphic tablet. Some years later, around 2008, I began implementing my new SuperCollider client ScalaCollider, and consequently Wolkenpumpe obtained a new form in the Scala programming language, now using a much more dynamic pan-and-zoom interface, and the visual module representations algorithmically positioned using a force-directed (physics-inspired) layout. In the following years, Sound Processes was iterated in close relation to my PhD, and Wolkenpumpe was adapted to the new framework. If I counted correctly, this would have been Wolkenpumpe generation 6. While it is still continously developed in the context of my improvisation practice, I still consider the current version within the “6th generation”.
{date: 210113, keywords: [ _, history ]}
Wolkenpumpe is named after the poem (1920) of dadaist Hans / Jean Arp. I do not remember why I picked it exactly—after all, it is a machine to produce sound clouds—but at the time I was very interested in Dada and Surrealism, and I had been reading a collection of poems by Arp. Strangely, the organic amoeba-like visual structures typical of the current version only came much later than the name was chosen; the original version had rigid rectangular blocks. An alternative name is Pompe de Nuages or just Nuages, and if you look into the source code, the types usually begin with Nuages
.
{date: 210113, persons: Hans Arp, keywords: [ _, name, dada, cloud, amoeba, poem ]}
A video tutorial for Mellite.
Wolkenpumpe is essentially a modular synth kind of system. It distinguishes sound generators (that do not necessarily require sound input from within the patch), filters, and sink / outputs. The categories are fluid. Your repertoire of generators, filters, and sinks sits in lists that can be brought up in the interface, or one can simply type their names from the text interface. At any point on the display, you can create and delete these processes, and interconnect them with virtual wires. Every process exposes a number of parameters that can be either manually adjusted, or patched into other processes.
Is Wolkenpumpe a live coding system? Perhaps not in the narrow sense; one rarely writes new functions from scratch during a performance, although it is technically possible (and I used to have a pop-up code editor around for while). At least in my practice, I create macroscopic sound structures by assembling the prepared building blocks. These blocks are not static, I adjust them to the necessities of the gig, or I make specific selections for the kind of project. I continually experiment with new processes. As an open source system, it is fully programmable, and someone could take Wolkenpumpe and make entirely different music with it than emerges from the typical structures employed by me.
Since this approach is not unlike patching in a system like PD, if you imagine that you bring up prior written abstractions, and since many things can be done via keyboard control and text input, Wolkenpumpe could be called a live coding'ish system. But then, does the audience become a viewer? Do they visually see what is happening? I rarely project the screen, although many people find it visually pleasing, and it certainly has its distinct aesthetic quality. Sometimes I sit in a space, and people can walk around, and they usually notice the interface, they look over my shoulder, and after the concert I get questions about Wolkenpumpe, and how to interpret the moving amoebas. I somehow find that nicer than forcing the visual channel on the audience. Since the visual interface is fully independent of the sound synthesis layer, it would also be possible to develop a second view only for the audience that is less technical and more abstract / poetic?
{date: 210113, keywords: [ _, practice, interface, live coding, modular synthesizer, visual, audience ]}
“NuagesPad”
In my improvisation practice, usually each player employs their own self-developed instrument, and I have come to appreciate this heterogeneity. Often the systems/instruments are wired together, cross-feeding audio signals that allow complex feedback and mutual influence. On the other hand, this approach is limiting, and I am interested in exploring how playing together “in the same virtual space” could work, if it is not understand as a form of being “synchronously” engaged in a causal relation that produces a “unified" piece.
This working-together-in-independence would be a form where distance among the players can be kept, where they can remain “inassimilable”. Sharing then is a constant circulation and curious spacing to one another without being totalised (as described by Jean-Luc Nancy in Being Singular Plural).
{date: 210114, keywords: [ _, speculative ]}
I imagine this to be possible by augmenting the interface with visual markup to see the different players operating. In the simplest case, there would still be one audio engine, but multiple views can be attached, so every player can focus on different parts of the overall sound structure.
{date: 210114, keywords: [ _, speculative ]}
{date: 210114, keywords: [ _, speculative ]}
{date: 210114, keywords: [ _, speculative ]}
{date: 220918, keywords: [ _, simularr ]}