Douglas Geers

Research: Treembre

front page | main research page | bio | music | contact info

NOTE: This is an old project.  Please see my main research page for more recent projects and software.

3. Treembre: A Hierarchical Approach to Sound Timbre Construction
The Treembre project is a realtime graphical interface for creating and manipulating sound timbres. Working from the established premise that any complex sound can be dissected into a set of simultaneous dynamic sine waves, Treembre gives a sound designer or composer the ability to arrange and manipulate these simple waves within the paradigm of a hierarchical tree structure (Figure 1.) Thus, while each component of the sound retains its individuality, these units may be grouped into larger entities. This grouping allows one to create intelligent relations among the sound's components and manipulate these collections as single regions. The tree-like interface allows the user to quickly and easily create these relations and accomplish complex sound processing tasks, listening to the evolution of the sounds with every adjustment made.

[Treembre screen 
shot here]

Treembre interface (SGI 02)

Treembre was written in C for SGI Irix platform, using XWindows and Motif interface tools. The program generates sound data based upon the location of tree nodes or "leaves" within a Cartesian plane in which frequency rises from left to right and amplitude rises from bottom to top (Figure 1.) Currently, each node of the tree represents one sine wave component of the current sound. Since complex sounds may be composed of thousands of such waves, my intent is to eventually allow the nodes to represent groups of sine wave components. These groups could be specified by any desired criteria, such as frequency bands, overtone series, amplitude ranges, and so on. Ideally, the user would be able to "open" and "zoom in" to one set of these waves at a time, manipulate it, "zoom out", choose another, and so on. This would combine the ease of the current interface with a more precise degree of control while avoiding the information overload that would result from viewing all of the frequency components simultaneously.

Another goal is to eventually allow one to create and save multiple configurations and then use realtime controls and/or algrorithmic processes to interpolate among these, creating highly organized and rich sound structures. Given the ever-increasing speed of microprocessors, I believe this is a realistic plan.

In its present form, the Treembre application is able to continuously play sound based upon the current configuration of its nodes and will adjust in realtime as any node or group of nodes is moved on the screen. It synthesizes the sound in a two-step process: First it traverses the tree to gather the current data for each node's frequency and amplitude. Then it sends the sound data to RTcmix, the realtime sound synthesis and processing environment created by Brad Garton and Dave Topper at Columbia University. RTcmix captures the sound data and synthesizes the composite texture using simple additive synthesis of wavetable sine oscillators. Another simple alteration would be to allow for substitution of any desired wavetable shape during sound playback, to enrich the resulting timbre with added partials; but this has not been explored yet.

Originally written on the SGI Irix platform, Treembre was ported to the Linux platform by
Brad Garton in 1999.

For more information on Treembre, please email me at

Other examples of my research include Appliance, a system for interactive performance with sculptures; Juicer, a realtime DSP instrument; and Ripples, a stochastic composition system.

  • A brief bio of Doug
  • Go to Doug's front page
    All music and visual images on this website are protected by copyright and may not be used without the expressed written consent of Douglas Geers. © 1999 Douglas Geers.