The Elementary Signal Engine

The Elementary Signal Engine (ESE) is a real-time electroacoustic instrument for the synthesis of sound particles and waves. It was designed as POC for a PhD thesis.

ESE Menu



Visual Operating Manual

Getting Started with the ESE

ESE Manual. Procedural Wavehole Programmers 01

ESE Manual. Wavehole Procedural Programmers 02

ESE Precise Morphing

Wavehole Tuplet Patterns

ESE Micropolyphony

Pitch Interval Morphs

Overtone Singing Example

ESE Sound Examples

Design philosophy

The ESE was inspired by the 1950’s electronic sound studios in which, a manual approach to composition was the prime modus operandi. The ESE is not a software plug-in and does not rely on external sequencer hosts in order to function. It is a self contained composition environment. The term elementary signal is a concept first coined by Denis Gabor in part one of his 1946 paper Theory of Communication in which he described sound quanta and elementary signals. This is one of the theoretical underpinnings of sound particle synthesis, which granular synthesis is a modality of.


The ESE design is conceived with real-time composition and performance in mind. It has been designed with the assumption that users come to the ESE from different artistic and technical backgrounds.


It consists of two main components. The Particle Wave Stream (PWS) generator and the Wavehole control system.

Particle Wave Stream synthesis (PWS)

The PWS provides independent layers (four currently) of particle formant synthesis. Its main purpose is for generating pitch-synchronous sound events. The main difference between an ordinary wave-orientated synthesiser (subtractive, FM, additive) and the PWS is that the latter’s event durations can be adjusted independently from the fundamental frequency. This feature allows for both particle and wave behaviour. The PWS is able to generate sound classes and phenomenologies such as those created using VoSim, FOF and Pulsar synthesis. Because it is pitch-synchronous it is also able to generate classic wave-orientated timbres.

The Wavehole Filter

The Wavehole is a family of time-domain filters, which are phase synchronised to each PWS’ fundamental frequency layer. Wavehole patterns are organised temporal structures, which can consist of thousands of sound particles. Patterns can be created manually, procedurally or generatively and then morphed seamlessly from one to another in order to create intricate dynamic compositions of sound. The wavehole filtering system consists of Waveholes (individual event amplitude), Wavepans (independent spatial location), Wavefields (individual particle formant frequency) and Waveshadows (individual event processing).


I began designing the PWS in MaxMSP in 2001 because of the lack of real-time particle synthesis instruments. Audiomulch and a couple of other applications, implemented real-time granular processing but none offered the pure synthesis of sound particles. Pulsar (Roads, 2000) synthesis had emerged but the implementations were buggy and ran on very restricted Mac Os 9 hardware using SuperCollider. The only alternative options were Csound, which was/is available on a wide set of computer platforms. I had considerable experience with the Csound FOF generators (Clarke, J.M. 2000), (Byrne-Villez, P. 2000) and wanted to create a similar sound world but in real-time with a more immediate interface and flexible compositional features. The first versions of the PWS were created between 2000 and 2002 using MSP and presented at the Modular 2002 conference at TVU in London, UK.


  1. This, looks and sounds amazing, looking forward to the release!

  2. perevillez

    Thank you!. Hopefully should be released in the spring.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s