The inaugural International Conference on Music Communication Science 5-7 December 2007, Sydney, Australia http://marcs.uws.edu.au/links/ICoMusic OVERCOMING SOFTWARE INERTIA IN DATA SONIFICATION RESEARCH USING THE SoniPy FRAMEWORK David Worrall Sonic Communications Research Group, University of Canberra david.worrall@canberra.edu.au ABSTRACT It has been assumed that the much-needed development of data sonification software would occur from the adaptation of sound synthesis software, principally that developed for computer music. As the software demands of data sonification research grow, some limitations of this approach are becoming evident. This paper outlines an extendable software framework, called SoniPy, which attempts to redress some of those limitations. 1. INTRODUCTION Whilst some data sonification software that has been engineered from first principles, for example for individual experiments entailing clearly defined tasks such as accurate monitoring [1] or graphic user-interaction [2], this type of software has become relatively uncommon. Cheaper data storage and faster computation has enabled the implementation of a certain level of abstraction away from low-level audio synthesis routines and the generality and reusability that this abstraction affords. The software tools being used for this purpose have principally been adopted from the field of computer music which, given the head-start created by the historical alliance between composers and engineers in its development, is perhaps not surprising. Principal of these software tools was the Music series and its children, dominant of which today are Csound [3], Supercollider [4], Max/MSP [5] and its younger half-brother PD [6]. A defining feature of this family is the bifurcation of the music-making process: composing routines in which abstract musical ideas are expressed in (text and/or graphic) 'scores' on the one hand, and the use of those scores to control sound synthesis 'orchestras' that are optimized for the intensively repetitive tasks of generating digital soundwaves on the other. Throughout this evolution, composers have used various computer languages for exploring musical ideas, much as they might use a piano in their 'dot-based' compositional practice. Software functions as a tool for thought; for generating and articulating abstract structural ideas, which are then expressed in sound. [7] Composer Barry Truax put it like this: In order to work with computers, practically everyone had to become a programmer, or at least work with one, as there were no standard tools and few texts. ... for me, the digital domain means something totally open-ended, limited only by my ability to program compositional ideas... In fact, I've never really used any one else's software for composition ... you'll probably never need to develop your own at all. Neither path seems preferable, but I wonder where the new ideas will come for you? [8] Today, irrespective of the field of endeavour, two computer-related characteristics can be recognised. Firstly, a manufacturer's global hardware or software system upgrade can render current or previous work unrealisable, especially when the work depends upon interfaces to low-level systems, such as those for audio processing. This seems to occur every five or so years and can lead to developers banding together to maintain recently outdated software, at least long enough for them to scan the horizon for other, hopefully more resilient tools. Once the new tools are adopted, the task of translating the essential parts from the older to the newer system is undertaken with varying degrees of enthusiasm. Secondly, modern computational environments are now so complicated that it has become almost impossible for an individual to learn all that is needed, in the depth and diversity required, for them to undertake significant development work on their own. 2. COMPOSITION AND SONIFICATION COMPARED Computer music composition and data sonification share the need for sophisticated real-time sound synthesis: the 'orchestras' referred to in the Introduction. However, whilst music's abstract structures can be expressed within a software environment used to generate 'scores' to be played by 'orchestras', in data sonification, concrete, sometimes voluminous, data has to be acquired, analysed and filtered in a timely manner before any such 'score' generation or direct application to resonant models can occur. Faced with the need to communicate with external musical data, the computer music community universally adopted the MIDI [9] and OSC [10] 'score' protocols. However no such protocols exist for non-musical data, nor, given it's diversity, are they ever likely to. Furthermore, the sorts of software tools required for such numerical analysis and data storage and Proceedings of ICoMCS December 2007 Page 180