Background to Tao's design and implementation

During my Music Technology masters degree at the University of York I was impressed by freeware audio and synthesis tools such as Csound. One of the things that impressed me about Csound in particular was that it was a synthesis language and allowed a finite set of primitive building blocks to be assembled in an infinite number of ways.

However, my experience as a musician playing a variety of acoustic instruments told me that whilst Csound's unit generator approach was quite powerful, it also had several shortcomings. For example, when playing an acoustic instrument such as a guitar or even just experimenting with `found sounds' there is something very direct and intuitive about the mode of experimentation. If you want something to make a louder and brighter sound you just hit it harder!

Whilst Csound's unit generator approach does allow you to design instruments with input parameters and feed different values into these inputs in a score, it doens't allow you to think directly in terms of forces, velocities, spatial positioning of excitations etc. So I wanted to set out to design a synthesis program which would carry on the tradition of programs like Csound, in providing an open-ended synthesis language, but would be capable of creating much more tangibly physical instruments. Another item which was high on the agenda was to be able to visualise the instruments.

Tao arose out of my interests in a number of different areas including musical performance, electroacoustic music, computer modeling of complex dynamical systems, cellular automata, and computer graphics.

I have thought for a long time that whilst GUIs (graphical user interfaces) are invaluable tools in certain situations there are still many things which are more elegantly expressed in text/language form. Take general computer programming languages for example, or the rapidly growing number of `mark-up languages' such as HTML, XML, VRML. Text is a very powerful tool for communicating structured ideas and has the advantage that it can serve as the basis for more user friendly GUI-based tools to sit on top.

It is for this reason that I concentrated my efforts on designing a text based interface to Tao which would be simple to use, clear to read and above all accessible to musicians with some degree of technical competency (having used tools such as Csound for example). Having stated this however it is likely that the format of the language and the lack of a GUI will be addressed in the future, along with several other aspects of the user interface.

Tao was originally developed as part of my DPhil at the University of York, England and then subsequently during a one year visiting research fellowship to the Australian Centre for the Arts and Technology at the Australian National University in Canberra.

My DPhil addressed the question of precisely why it is that digitally synthesised sounds often lack the warmth, life, and organic qualities of acoustically produced sounds, whether musical in the traditional sense or not. What came out of this work, apart from a thesis of course, was Tao.

As mentioned earlier on I wanted a system which would be capable of producing organic sounds. The term organic is quite difficult to define precisely but my thesis Synthesis of Organic Sounds for Electroacoustic Music: Cellular Models and the TAO Computer Music Program does a better job of addressing the issues than I have scope to do here. Very briefly though the term organic is used to refer to sounds which are:

  • complex
  • fluid
  • dynamic
  • coherent
  • lively
  • suggestive of physical and energetic causality

The term coherence is used to refer to the fact that in sounds produced by physical means, the transient behaviour, the perception of the sound having been produced by some physical mechanism and the overall character of the sound hang together very well. This cannot be said of many digitally synthesised sounds, even those produced by some physical modeling techniques. This problem of synthesising complex, coherent and organic sounds was the main focus of the whole project.

The original design goals which have been adhered to throughout Tao's development were to produce a system which would have the following features:

  • capable of synthesising a wide variety of acoustic and instrumental-like sounds with organic qualities;
  • relatively straightforward to use, making physical modeling accessible to those without a strong maths or physics background without compromising the power or flexibility of the tool;
  • based around a flexible and open-ended synthesis language following in the tradition of other synthesis languages such as Csound (this objective is ongoing, the current synthesis language used by Tao is only one possible language for controlling it).


©1999,2000 Mark Pearson m.pearson@ukonline.co.uk April 30, 2000