Page  1 ï~~{TranSpell} Kazuaki Shiota University of Cincinnati College-Conservatory of Music shiotak@email.uc.edu ABSTRACT This paper presents further development of the {TranSpell} real-time performance system which was begun in 2005 and built using Max/MSP [1][2]. {TranSpell} allows users to synthesize by extracting overtones based on two fundamentals in real-time. The software is designed for composing a spectrally-based or microtonal music. The goal of this application is to create smooth transitions between two notes via extracted overtones within a dual-harmonic context in real-time. The TranScript language for parameter scriptwriting and console window, real-time quantization, polymetric tempi, refined MIDI protocol, pitch table storage and representation functionality, multi-channel system, convolution, optimized microtonal aspects, and multiple-instance capability have been newly implemented and provide composers and performers with a better musical environment not only to create works, but also to play for live performance. 1. INTRODUCTION In 2005, I used {TranSpell} for composing music for fixed media, films, and installations. Such pre-recorded sound files were incorporated with my live electronics music, but {TranSpell} was not capable of dealing with live performances. In 2006, the problem was solved, and I was able to perform with {TranSpell} at my Master's Recital as well as various concerts. NeXT Ens, the electro-acoustic chamber music ensemble, also performed a work using {TranSpell} at several universities in the United States of America. In 2007, I performed my composition, "Internal rhythm" with tap shoes at the International Computer Music Conference held at Copenhagen, Denmark. Although {TranSpell} at that time was already capable of using TranScript that is a scripting language to accomplish the total control of {TranSpell}, I found that several features still needed to be improved besides expanding new functions. The insufficient editing environment of TranScript and the limited timbral variety have been improved, and realtime quantization, multiple-instance capability, and interaction with MIDI devices paved the way for the new performance possibilities. A description of the {TranSpell} and its theory in short follows. 2. {TranSpell} Transpell (noun and verb) coined by the author, is paraphrases either the method, or its action. Transpell is characterized by two features, which are overtone extraction theory and temperament conversion, and the software, called {TranSpell}, enables the users to control those features. Figure 1. {TranSpell} 2008. 2.1. Overtone Extraction Theory "Overtone Extraction Theory is a basis of a synthesis method that extracts common overtones based on two fundamentals. It is easy to imagine the possibility of intersections occurring, within +/- 50 cents, between the two overtone series especially within the higher frequency range. But, it would be difficult to precisely account for the overlap of partials between the two fundamentals." [3] Taking the working efficiency into consideration, I began to program an interactive system to extract overtones based on two fundamentals. Thus, {TranSpell} was born in 2005. Consequently, the pair of extracted partials functions as microtonal leading tones to each other that create smooth transitions between the two fundamentals. For the further information about the Overtone Extraction Theory, please refer to my papers. 2.2. Temperament Conversion Since {TranSpell} enables the users to tune each note in the main window, I added another function to exchange pitch components by means of converting a temperament into another temperament. In summary, those two methods provide the structure of {TranSpell}, and its musical capabilities have been developed since then. 3. COMMAND LINE AND CONSOLE WINDOW The command line scripting and console window enables users to execute all the commands of TranScript residing in the main window. I would like to introduce several frequently-used commands of the many available.

Page  2 ï~~3.1. Overtone Extraction In order to extract overtones based on two fundamentals, the user needs to set the pitch of the two fundamentals in TranScript. Ex-1 sets the first fundamental as Cl with typing either typing 24.0 as MIDI pitch value or 5.00 as octave-point-pitch-class. Ex-1 [pitch 24.0 ] The second fundamental is set by means of setting the interval between the two fundamentals. Ex-2 sets 5 semitones or 500 cents. Ex-2 [ interval -m 5.0 ] So, the first fundamental is set as Cl and the second fundamental is set as F 1. U (command-equal) switches the extracted partials between the two fundamentals appearing in the main window. 3.1.1. Pitch Table Storage and Representation Functionality {TranSpell} allows the users to save the partials as a graphical and a text formats so that they can print out these pitch tables. UP (command-P) converts the entire TranScript into a series of those formats. So, this saving function may clarify the ambiguity of cent values of microtonal pitches on music scores. 3.2. Arithmetic Operations In the earlier TranScript, the users had no choice but to write a real number to create the perfect 5th interval in the pure ratio (Ex-1). Ex-1 [ interval -m 7.019551 ] Now, the users allow setting the interval with arithmetic operations so that they can directly apply the partial number to set the interval. Ex-2 simplifies the value to achieve the same result. Ex-2 [ interval -p 3/2 ] Consequently, the users can trace back to the fundamental from the partial using a fraction, and it also improves the editing efficiency. 3.3. {TranSpell} Instruments The command line allows users to control all the attributes of the {TranSpell} instruments. Among four types of instruments, users are to play sounds of MIDI sound modules. The cent value is supported by the pitch bend control so that the users can simulate the designated instruments in uncommon tuning systems. {TranSpell} enables the MIDI sound modules to play with any combination of the other {TranSpell} instruments. 3.3.2. Drone Instrument The drone instrument consists of bandpass filters to be filtered a sustain sound to get a sense of pitch. [ dronetype ] sets the sound to be filtered. The sound source can be chosen among white noise, pink noise, sawtooth wave, grains, and sound file. Ex-1 sets pink noise to be filtered. Ex-2 sets the amplitude of the drone 1.0 which is 10th of the maximum value. Ex-1 [ drone-type pink] Ex-2 [ drone-amp 1.0 ] 3.3.3. Percussion Instrument The percussion instrument consists of bandpass filters to be filtered impulses. The decay time depends on the bandwidths. Ex-1 divides a cycle of the downbeat by 8. Ex-2 sets the tempo 60. Ex-1 [ meter 8 ] Ex-2 [ tempo 60.0 ] 3.3.4. FM Instrument The FM instrument allows the users to deal with FM synthesis. The following commands are attributed to the FM instrument followed by the 17 arguments for the corresponding notes: fm-harmonicity, fm-modulationindex, fm-amplitude, fm-attack, fm-decay, fm-sustain, and fm-release. 3.4. Editing Efficiency of Arguments The users occasionally had to type 17 arguments in a row to set each sound attributed parameter such as the FM instrument. This horizontal juxtaposition of arguments caused errors, so it became necessary rearrange the editing scheme in order to improve the efficiency of editing. For that reason, the list editor window, sound attribute window, and duplication functions were newly implemented. 3.4.1. List Editor Window The list editor window vertically juxtaposes each argument. This configuration visually helps the user find the specific argument to edit. 3.4.2. Sound Attribute Window The users can set the sound attributed parameters with using mouse on Max's multislider object. It allows users to change all the parameters at once, but it is not highly designed to set detailed parameter for each slider. For 3.3.1. MIDI Sound Module This new instrumental function enables users to play acoustic sound with using MIDI sound modules. The following TranScript sets the piano (sound bank No. 0) as the instrument. [ midi-instrument 0 ]

Page  3 ï~~that reason, the sound attribute window has been newly implemented within {TranSpell}. This window displays all the sound attributes of one of the 17 notes and allows users to use the tab key to quickly select the target attribute to edit. 3.4.3. Duplication If all the values for each note are the same, it is quite redundant to type the same thing for 17 times. [ resonance <arg1 > <arg2> <arg3>... <argl17> ] The new version, however, allows users to apply the first argument to duplicate all the 17 notes at once. [ all resonance <arg> ] 4. RHYTHMIC ASPECT {TranSpell}rhythmic implementation was expanded by means of the real-time quantization and polymetric tempi. These functions assist performers in accurate performance. 4.1. Real-Time Quantization In general, quantization often appears in MIDI sequencing software. Usually it functions quantizing the notes, which were manually recorded by MIDI device, into periodic information. Based on the idea, {TranSpell} is capable of quantizing notes in real-time by means of delaying the incoming MIDI data until the internal clock ticks in a designated rate. As a result, all the incoming notes that the user plays in any manner are rhythmically quantized as well as synchronized. Consequently, the real-time quantization creates stable rhythms effortlessly. 4.2. Polymetric Tempi {TranSpell} is able to create various types of polymetric tempi with any combination among the following four elements: 1) single tempo generated with a MIDI device which is manually controlled (1-a) or automated MIDI data playback (1-b), which is in either single or polymetric tempi. 2) To choose whether (1-a) or (1-b) applies to real-time quantization or not. 3) Any combination of {TranSpell} instruments loop in a single tempo (3-a) or in a polymetric tempi (3-b). 4) To choose whether (3-a) or (3-b) is quantization or not. The following two examples, Ex-1 and Ex-2, demonstrate how the polymetric tempi function in performing and compositional aspects. Ex-1: the user plays a MIDI keyboard (1-a) with realtime quantization (2-a) while the loop of the MIDI sound module plays back in another tempo (3-a) with being quantized (4-b). Since both tempi are independent, this configuration structuralizes polymetric tempi. In terms of the ratio between the two media, {TranSpell} accepts floating-point numbers (i.e., ratio 4.001 against 6.98). Thus, the combination of using realtime quantization and the polymetric tempi enable performers to fulfill the unachievable rhythmical expressions. Ex-2: the multi layers of instruments loop (3-b) are unquantized (4-b). Since each tempo is different, this combination automates creating notes by means of a phase-in-out configuration. Saving the incoming notes as SMF (Standard MIDI File) format can be used in a score editing software such as Finale and Sibelius to print out the score. 5. MIDI PROTOCOL MIDI Protocol has been extended to a controllability of MIDI devices and capability of converting between SMF and TranScript. 5.1. SMF-to-TranScript Converter {TranSpell} can convert SMF format into TranScript. For example, "An Irish Lullaby" saved as SMF format can be converted into TranScript so that the users can edit the data in detail. One of the functions is designed to reintroduce the original tuning system of the traditional music or to convert into a different tuning system, such as 5, 7, 8, 9, 10, and 1 1t-ET, to transform another temperament. The other function is to change timbre. Due to the new implementation of the convolution, multi-channel system and multipleinstance capability, pure timbre became able to easily metamorphose into diverse timbres. 5.2. TranScript-to-SMF Converter {TranSpell} was already able to convert TranScript into SMF since 2007. In the new version of {TraSpell}, the TranScript-to-SMF Converter was optimized: the memory latency has been minimized to be able to collect accurate MIDI data. For example, the users are able to create a SMF of "An Irish Lullaby" in the original Irish tuning system. TranScript i "An_Irish_Lullaby.mid" Thus, the TranScript-toSMF conversion has been optimized and the compatibility between TranScript and SMF was newly established. 5.2.1. Tonal Music Language { TranSpell} enables users to use the tonal music language with using Roman numerals. The following TranScript is to play an Irish traditional chord progression. [ tuning tonal ], [ i ], [ i ], [bVII ], [ v ], [ i ], [ i ], [bVII ],[v ],[i]. Prepending [ resolution 8tet ] before the chord progression starts in the TranScript, the temperament changes into 8t-ET (8 tones per octave, equal temperament) from 12t-ET, and the result of the sound can be saved as SMF format. In addition to converting temperament, 8t-ET creates the true meaning of octatonic scale that all the intervals are the same

Page  4 ï~~distance from each other rather than consists of sequence of half step and whole step. Therefore, This accessibility of tonal music provides the users with creating not only tonal music but also different temperament configurations. 5.3. Tactile Control The users can interact the sound attributes of {TranSpell} with MIDI controllers so that this multitask function can initiate them into a different method of performance capability. For example, the following TranScript assigns ch-1 to the resonance parameter via MIDI control number 91 (Ex-1), and ch-2 to the cent modification parameter via MIDI control number 92 (Ex-2). Ex-1 [ midi-control 1 91 resonance ] Ex-2 [ midi-control 2 92 cent-modification ] 6. MULTI-CHANNEL SYSTEM The number of available audio output channels increased from two to eight. The users are able to select the number of the speakers and its localization on the Multi-Channel Window. Each of the 17 notes is individually allocated an orbit, which includes circular, spiral, and random movements. The following are the sample TranScripts to configure the number of channels and type of orbit for each note. Ex-1 sets the 8-channel configuration. Ex-2 assigns ch-1 to the circulating orbit traveling (1.5 cps). Ex-3 assigns ch-2 to the spiral orbit (3.5cps). Ex-4 assigns ch-17 to random orbit (10 cps). Ex-1 [ channel 8 ] Ex-2 [ orbit-type 1 circulate 1.5 ] Ex-3 [ orbit-type 2 spiral 3.5 ] Ex-4 [ orbit-type 17 random 10 ] So, this multi-channel system enhances the ambient character of {TranSpell} which stereo system could not achieve. 7. CONVOLUTION {TranSpell} became capable of convolving sounds between various sources. Ex-1 convolutes original sound sources with pink noise. Ex-2 convolutes with granular synthesis that users can configure the detailed setting with the granular command. Ex-3 convolves with a sound file of bagpipe. Ex-4 convolves with a pulse to create either a rhythm or tremolo effect. Ex-1 [ convolution pink ] Ex-2 [ convolution granular ] Ex-3 [ convolution soundfile bagpipe.aif ] Ex-4 [ convolution pulse + original ] Thus, the timbre of {TranSpell} has been refined with the convolution, and it provides the users with more timbral possibilities of using {TranSpell} instruments for their compositions and performance. 8. MULTIPLE-INSTANCE CAPABILITY Multiple {TranSpell} is capable of running simultaneously as long as the RAM allows. This allows musicians to create more advanced texture. In terms of the synchronization with multiple {TranSpell} s, a MIDI device synchronizes them by means of sending MIDI data to all the running {TranSpell} s. 9. CONCLUSION AND FURTHER DEVELOPMENT I have developed {TranSpell} and compose music with it since 2005 with being conscious of functions that future users might want to use. Taking all the newly implemented functions such as multi-channel system, convolution, real-time quantization, especially polymetric tempi, into consideration, the performance capability of {TranSpell} has been substantially expanded since 2007. In the further development of the multiple-instance capability, all the overtones appearing on each {TranSpell} will link together to extend the length of the partials. With this function, the number of the extracted partials will become unlimited as long as the RAM allows. So, I hope it will contribute to composing spectrally-based compositions and performance. For the next step, I am planning to distribute {TranSpell} with documentation including tutorials. See www.ccm.uc.edu/computermusic. 10. REFERENCES [1] Shiota, Kazuaki "{TranSpell} ", Proceedings of the International Computer Music Conference, New Orleans, USA, 2006. [2] Shiota, Kazuaki "{TranSpell} ", Proceedings of the International Computer Music Conference, Copenhagen, Denmark, 2007. [3] Shiota, Kazuaki "The Overtone Extraction Theory based on Two Fundamentals", Proceedings of the College-Conservatory of Music Music Theory and Musicology Society, Student Conference, Cincinnati, USA, 2008.