Page  29 ï~~TRAILS: An Interactive System for Sound Location Nicola Bernardini & Peter Otto Centro Ricerca, Produzione e Didattica Musicale Tempo Reale, Florence, Italy Tel. 39.55.702444 FAX 39.55.717712 Abstract TRAILS is an acronym for Tempo Reale - Audiomatica Interactive Location System. It is a software-hardware integrated system for sound spatialization in non-dedicated or acoustically treated spaces (concert halls, amphitheaters,open spaces, etc.). TRAILS can read a score describing spatialization "paths" for multiple audio inputs and execute it in real time, interacting with external and conditional commands and controls whose functions are described in the score itself. Sound movements are specified by calling either user-defined location functions or by calling functions from a predefined library of location types. 1. Introduction TRAILS is a matrix of Voltage Controlled Amplifiers (VCAs) designed for applications in the domain of spatial location and movement in space of sound events. TRAILS was conceived Tempo Reale during the month of March 1988 by a work group initially constituted by Peter Abramowitsch, Vito Asta, Luciano Berio, Nicola Bernardini, Maurizio Cavalli, Brian Evans, Peter Otto, Miller Puckette and Joel Settel. In September 1988 the structure of the control software was substantially revised by a work group constituted by Vito Asta, Nicola Bernardini, Maurizio Cavalli, Roger Dannenberg and Peter Otto. The hardware was designed and realized by the firm Audiomatica of Florence, Italy. The high level portion of the first version of the TRAILS software was developed by Peter Abramowitsch, assisted by Paolo Aiello, Nicola Bernardini and Alex Bozman. The low level portion was developed by Maurizio Puggioni. A second version of the software (named TRAILS Two) uses the same dedicated TRAILS hardware but substantially improves the control structure and the related software. It was developed by Nicola Bernardini assisted by Paolo Aiello, Franco Saba and Piero Chiodaroli. Concurrent to the development of TRAILS Two software, the TRAILS project has generated another machine, MiniTRAILS, which is a smaller dynamic audio matrix for simpler, more limited applications. The MiniTRAILS hardware was also developed by Audiomatica, running software written by Maurizio Cavalli. In addition, a generalized real time control console for use with TRAILS and other MIDI controllable technologies was developed by Peter Otto and Audiomatica running firmware written by Maurizio Cavalli. 2. Application Constraints The constraints of the TRAILS project were the following: a. design, construct and run the system within extremely severe time constraints (6 months) and fairly severe cost constraints (< 70,000 U.S. dollars) b. professional audio reproduction (S/N > 90 dB, flat frequency response, low distortion) c. discreet, simultaneous dynamic mixing and distributive control over a large number of audio inputs (> 24) with a target resolution of 1 ms at any stage of the system d. satisfactory performance in a listening environment with little or no prior acoustic treatment e. portable, outdoor performance capability f. human manageability, allowing a large horizontal and vertical flexibility for loudspeaker placement within the concert environment while maintaing ease of manipulation of musical and technical parameters. 2.1 An analog-digital hybrid system To satisfy constraints a, b and c we decided to adopt a hybrid hardware approach: analog technology for the audio path and digital technology for its control. We discarded an all-digital approach after a long study and evaluation period. While being extremely flexible, the development of such a system was considered not appropriate because of the following factors: 1. insufficient computing power of the DSP chips available at the time of design 2. cost constraints not met with the development of dedicated VLSIs or gate-array technology 3. time constraints not met due to the complexity of the development. 29

Page  30 ï~~objective of professional quality audio fidelity without difficulty (point b). The reduced costs of such an approach have also led to a modular conception allowing a fairly expanded system (32 inputs and 32 outputs), thus surpassing the requirements of point c. The reduction of the matrix using a central 8 channel mix bus (24 x 8 x 24 or 32 x 8 x 32) was also a cost-cutting consideration that was proven well-advised due to human perceptual inability to clearly delineate a very large number of separate, simultaneous "sound paths". A decision was made to keep accessible the eight internal buses (by means of send-receive jumpers) thus leaving the system open to future external processing, using customized DSP retrofits or commercial effects devices. 2.2 The "Brute Force" approach Among a wide variety of constraints, the necessity to use the system in outdoor and non-treated spaces (points d, and e) led us to consider the so-called Brute Force approach (Fedorkow, G., Buxton, W. & Smith, K.C. 1978). The Brute Force approach consists of using a large number of loudspeakers to expand the homogeneous listening area of sound space location effects. Improvements in recent years in the availability, size and quality of sound reinforcement technologies seemed to indicate a reconsideration of this approach. Furthermore, such an approach allows the construction of a vivid "sonic geography" using spaces neither designed nor normally well-suited for concert activity. 2.3 A mixture of real and non-real time Last but not least, being able to perform instrumental music with real-time controlled sound space location and to keep manageable the large number of parameters involved led us to design and realize a system that operates in both real and non-real time. Man-machine interaction is in real time via MIDI controls modifying the execution of a computer score written and compiled in non-real time. TRIALS software allows MIDI signals to be mapped to all controllable temporal and spacial dimensions. 3. The Hardware The physical characteristics of TRAILS are described in this paragraph. The TRAILS system consists of a hybrid dedicated hardware, called ALS (Audio Location System), and a control structure managed by general purpose microcomputers. 3.1 ALS Fig. 1 describes the internal structure of ALS. 123.............. 222324 Signal Out 24Can. mix bus OUTPUT SECTION Au Â~i~ ut -1-" Mix bus _________ Aux. in, 24VCA Aux. in, out 24 VCA Blocks liINPUT SECTION 8 vca block k(each 8 VCAs) 18vca block 12.I ISignal in 2 1 2 3 4.......... 24 Figure 1: ALS audio signal path 30

Page  31 ï~~ALS is subdivided in two main units (2 4-unit 19" rack-mount): the input and the output sections. It is a 384 VCA matrix in a 24 x 8 x 24 configuration. 24 audio inputs are available for assignment among 8 central buses. The busses are then distributed among 24 outputs. These 384 VCAs are digitally controlled by 384 separate 10-bit resolution DACs. Each bus is jumpered externally to allow effects processing in the audio path. 3.2 Control Systems Fig. 2 illustrates the original control system of TRAILS. MIDI vca control M 80286 1MIDI652) Real time comand processing, IEEE 488 interpolation, patch change, Par allel Mac II or SE external control processing. FRONT END: user i/o, non- Software assignable fader bank real-time compiler, graphical display, editor. Fig. 2: the TRAILS control system The first version of the TRAILS system was controlled by two cascaded host computers: an AT-286 controlled by a Macintosh SE. The communication between the AT and the Macintosh was managed through an IEEE-488 parallel channel (GPIB-channel). In TRAILS Two the control structure has been unified and now consists of a single 386-25 mhz computer (an Olivetti M380 xp7) which controls ALS directly. 4. The Software The paragraphs that follow describe the software structures designed and developed for the application. 4.1 Development environments 4.1.1 TRAILS The TRAILS software was developed for distinct applications, one in a Macintosh environment (high level) and the other in an MS-DOSTM environment (low level). 4.1.1.1 Macintosh Environment The Macintosh portion was developed in C (Lightspeed C compiler). The MIDI interface drivers come from the CMU MIDI Toolkit (Dannenberg 1986) augmented with additional functions. 4.1.1.2 MS-DOSM Environment The MS-DOSh portion was developed in Macro Assembler 8086 (MASM) for optimal efficiency of the interpolation routines. 4.1.2 TRAILS Two The Trails Two software was entirely developed in C. The development and simulation of the system was done under UNIXTM System V while the actual application runs under MSDOSTm. The MIDI I/O (presently running under MS-DOSTM only) includes code from the CMU MIDI Toolkit (Dannenberg 1986) augmented by additional functions. The source code and documentation of TRAILS Two are available to TRAILS users for further modifi-cations, ports to other machiW and specialized applications.

Page  32 ï~~4.2 Software Structures Fig. 3 describes the general structure of the software. Score File (ASCII) Reader Symbolic Sequential Score Graphic Motion Representation Graphic Physical Speaker Location Representation ERRORS Fig. 3: TRAILS and TRAILS Two software structures TRAILS and TRAILS Two can both be schematized as two interacting software blocks: 1. a front end that manages the user interface 2. a run-time scheduler that manages VCA control in real time (i.e. during the actual performance). 4.2.1 The Front-End The TRAILS front-end is composed of: 1. a compiler of TRAILS language scores 2. a command processor 3. a system state display (run-time only). 4.2.1.1 The TRAILS compiler The TRAILS language compiler is constituted by a lexical analyzer and an LALR parser developed with the UNIX"M utilities YACC and LEX. The definition of the TRAILS language grammar and lexicon follows conventions used in MUSIC-like languages (Mathews 1969) for defining time-tagged events. Some characteristics, however, set TRAILS apart from MUSIC-like languages: a. the possibility of substitution of most numerical constants with variables generated by realtime controllers. Such variables are evaluated during real-time instruction instantiation and are followed during the complete duration of it. b. the presence of intrinsic conditional expressions (when, loop until, etc.). 4.2.1.2 The command processor The TRAILS command processor is tailored to the standards of each specific operating system shell (finder for Macintosh, Kom shell for systems like MS-DOSTM and UNIX"). It is easily expandable and it contains all the commands needed for an efficient management of the system in concert performance. 4.2.1.3 Run-time Display The TRAILS run-time display was developed using the graphic 32

Page  33 ï~~resources of the Macintosh Toolbox. For Trails Two, the extended usage of the semigraphical library curses (available under both UNIXTm and MS-DOSTM) allowed a portable definition of the run-time display. 4.2.2 The run-time portion The run-time portion controls real-time score execution, merging incoming MIDI for control and synchro-nization purposes. It was realized with non-preemptive schedulers which control VCA writing, interpolation, I/O servicing, etc. The Trails Two scheduler was modeled after the cause scheduler described by Dannenberg (1988). 5. Future Developments TRAILS future developments include: - ports to various host machines (in particular, TRAILS Two on Macintosh II) - further development of a graphical front-end (using tools such as Windows, OSF-Motif, Xwindows, etc.) - a graphic score preprocessor written for HyperCard on the Mac. 6. Conclusions TRAILS is an experimental system for dynamic sound localization. The system is intended to serve as a platform from which new theoretical and technological research in the field may be conducted. It has performed well in diverse concert locations and holds promise for composers who wish to explore sound localization in concert, theatrical and cinematic venues. 7. Acknowledgements Special thanks must go to Lucia Asplanato who ran the secretarial offices and organized consultations and the internal seminars for this project. The Centro Tempo Reale is supported by funds of the Regione Toscana and the municipality of Firenze. Additional funding comes from the sponsorship of: MONTE DEI PASCHI DI SIENA BANCA TOSCANA BANCA NAZIONALE DEL LAVORO CASSA DI RISPARMIO DI FIRENZE 8. Bibliographic References Dannenberg, R. (1986). "The CMU MIDI Toolkit" Proceedings of the 1986 International Computer Music Conference. San Francisco: Computer Music Association. Dannenberg, R. (1988). "A Real-time Scheduler for Musical Applications". Proceedings of the 1988 International Computer Music Conference. San Francisco: Computer Music Association. Fedorkow, G., Buxton, W. & Smith, K.C. (1978). "A Computer-Controlled Sound Distribution System for the Performance of Electroacoustic Music" Computer Music Journal 2 (3). Mathews, M. (1969). The Technology of Computer Music. Cambridge, Mass. MIT Press. 33