You are on page 1of 4

an incoming event and a clock tick.

Therefore, event streams quickly as a play button, this is critical for the feasibility SPIN/DRIFT: A REAL-TIME SPATIALIZED GRANULAR
such as the user interface and external control interfaces of these applications.
SYNTHESIS ALGORITHM WITH PARTICLE SYSTEM PHYSICS &
should be considered when designing the sequence fac- As the compiler technology is reaching maturity, fur-
torizer. ther research will be focused on building extensive, adapt- BEHAVIOURS
able and learnable libraries of signal processing primitives
for the system. Interaction with various software plat- Michael Norris, New Zealand School of Music
4.3.1. Heterogenous Clock Rates in Sequences Jason Post, New Zealand School of Music
forms is planned. This takes the form of OSC commu-
Consider a case where each control signal is associated nication as well as code generation Kronos can be used
with a different clock source. We would still like to main- ABSTRACT overlap-added to produce the output signal. If the output
to build binary format extensions, which can be used as
hop size is some non-unity multiple of the input hop
tain the audio section as a sequence, but this is no longer plugins or extensions to other systems. LLVM integra- This paper introduces spin/drift, an algorithm that
size, the result is a time-stretched or time-compressed
possible for the control section, as each iteration responds tion opens up the possibility of code generation for DSP applies a novel particle-systems approach to granular
version of the input. Hop-size jitter may be introduced
to a different activation state. and embedded devices. Finally, the visual programming synthesis. spin/drift extends conventional granular
to avoid strong frequency components at the hop-size
In this case, the reactive factorization must compute a interface will be pursued further. synthesis techniques by using the concepts of an
period. If, however, input or output times are sufficiently
distinct activation state for each iteration of the sequence. emitter that generates particles, both of which can be
randomized, stochastic textures or collages may result
If there is a section of the iteration with an invariant acti- endowed with independent, automated spatial
6. REFERENCES (cf. Trevor Wisharts term brassage [5]).
vation state, this section can be factored into a sequence trajectories within virtual 2D space. Trajectories may be
While some algorithms allow for basic spatialization
circular (spin) or linear (drift), or may combine
of its own. [1] A. Blindpeer, Introducing Kronos - A Novel Ap- of grains using randomized pan factorscreating a
aspects of both (e.g. spirals). Particles may be given
Such sequence factorization can be achieved via hyl- proach to Signal Processing Languages, in Proceed- cloud of grains distributed across stereo spaceonly a
absolute trajectories or trajectories relative to the angle
opmorphism, which is the generalization of recursive se- ings of the Linux Audio Conference, F. Neumann and handful of authors have attempted to model the
of the emitter (e.g. to create centrifugal forces). Particle
quences. The theory is beyond the scope of this article, but V. Lazzarini, Eds. Maynooth, Ireland: NUIM, 2011, complexity of visual CGI particle systems with granular
trajectories may also be affected over their lifetime by
based on the methods in literature[6], any sequence can be pp. 916. synthesis. David Kim-Boyle [6] has implemented a
environmental forces such as gravity and viscous drag.
split into a series of two or more sequences. In audio con- Max/MSP algorithm for spatialized granular synthesis
[2] , Visualization of Signals and Algorithms in Spatialization is achieved with a combination of
text, this can be leveraged so that any activation-invariant using the Jitter particle system objects (jit.p.shiva,
Kronos, in Proceedings of the International Confer- dynamic VBAP encoding, filtration and reverberation
code as possible can be separated into a sequence that can jit.p.vishnu and jit.p.bounds) to model spatial trajectories
ence on Digital Audio Effects, York, United Kingdom, cues, and output to an equidistant octophonic speaker
be maintained throughout the compilation pipeline. The for grains. A further development by Kim-Boyle [7]
array, though this is easily extended to other speaker
activation-variant sections must then be wholly unrolled. 2012. applies the boids flocking algorithm [8] to grain arrays
setups. The potential implications for the fields of sonic
This allows the codegen with activation state filtering to to provide a non-linear, biologically inspired model to
[3] A. Blindpeer and M. Laurson, Unified Model for Au- art and sound design are also discussed, with particular
produce highly efficient code. grain trajectories. While Kim-Boyles prior work
dio and Control Signals, in Proceedings of ICMC, references to Denis Smalleys taxonomy of
provides a strong conceptual and technical basis for this
Belfast, Northern Ireland, 2008. cyclic/centric motion and growth processes.
current project, we seek to extend his work by providing
5. CONCLUSIONS finer control of geometrical abstractions and dynamic
[4] , A Method of Generic Programming for High
1. INTRODUCTION & PRIOR ART spatialization techniques, particularly allowing the
This paper presented an overview of Kronos, a musical Performance DSP, in DAFx-10 Proceedings, Graz,
Austria, 2010, pp. 6568. automation of emitter and particle trajectories within
signal processing language, as well as the design of its Particle systems have been a key component of both polar (spin) and Cartesian (drift) coordinate
reactive signal model. Kronos is designed to increase the [5] J. McCartney, Rethinking the Computer Music Lan- Computer-Generated Imagery (CGI) since the early systems. Other closely related work includes Blackwell
flexibility and generality of signal processing primitives, guage: SuperCollider, Computer Music Journal, 1980s, most notably developed by William T. Reeves in & Youngs Swarm Granulator [9] and Wilsons
limiting the vocabulary that is requisite for programming. vol. 26, no. 4, pp. 6168, 2002. the movie Star Trek: The Wrath of Khan [1]. These adaptation of this with Andrew Lewis BATBoids [10]
This is accomplished chiefly via the type system and the systems manage and control the behaviours of multiple which implements flocking granular algorithms within a
polymorphic programming method as well as the unified [6] S.-C. Mu and R. Bird, Theory and applications of particles with independent, though related, spatial massively multichannel speaker array.
signal model. inverting functions as folds, Science of Computer trajectories. Particle systems are most often used for
The reactive factorization algorithm presented in this Programming, vol. 51, no. 12, pp. 87116, 2004. simulating environmental effects such as clouds, mist, 2. CONCEPTUAL AND TECHNICAL ISSUES
paper can remove the distinction between events, mes- [Online]. Available: http://www.sciencedirect.com/ rain, fire and tornados. These systems are now available
sages, control signals and audio signals. Each signal type science/article/pii/S0167642304000140 to prosumers through off-the-shelf commercial
A number of issues arise in modelling CGI particle
packages such as Adobe After Effects or Apple Motion.
can be handled with the same set of primitives, yet the systems with granular synthesis:
[7] Y. Orlarey, D. Fober, and S. Letz, Syntactical and In the audio domain, the concept of an audio
code generator is able to leverage automatically deduced 1. The ear is less discriminating than the eye in
semantical aspects of Faust, Soft Computing, vol. 8, particle or grain was first clearly established in
signal metadata to optimize the resulting program. tracking spatial trajectories of audio objects.
no. 9, pp. 623632, 2004. writings by Gabor [2] and Xenakis [3] and has now
The concepts described in this paper are implemented 2. Most typical surround-sound speaker arrays
become a standard technique in digital sound processing.
in a prototype version of the Kronos compiler which is [8] Z. Wan and P. Hudak, Functional reactive program- (e.g. 5.1) are limited in the precision of sound
Details of the most common techniques and their
freely available along with a visual, patching-based interface[2]. ming from first principles, in Proceedings of the localisation, and most lack the Z dimension.
applications are extensively covered in Curtis Roads
For a final version, the compiler is currently being re- ACM SIGPLAN 2000, ser. PLDI 00. ACM, 2000, 3. CGI particles tend to have longer lives (often on
Microsound [4]. The use of granular synthesis in
designed, scheduled to be released by the summer of 2013. pp. 242252. the order of seconds) than audio grains, with
electroacoustic musicin which audio recordings and/or
The compiler will be available with either a GPL3 or a clear trajectorial changes to their properties.
live sound are granulated to form extreme time-
commercial license. [9] M. Wright, A. Freed, and A. Momeni, OpenSound 4. Some visual characteristics do not map well to
stretched versions or abstract textureshave become an
Some new developments of a redesigned compiler were Control: State of the Art 2003, in Proceedings of audio characteristics (e.g. particle trails,
important tool in the toolkit of composers and
detailed, including strategies for handling massive vec- NIME, Montreal, 2003, pp. 153159. glow, colour, rotation, transparency, etc),
improvisors alike.
tors. This is required for a radical improvement in com- although, vice versa, there are audio
The basic algorithm is straightforward: short grains
characteristics that are not convincingly
pilation times for applications that involve block process- (typically on the order of 2060ms) are formed by
mappable to visual characteristics.
ing, FFTs and massive ugen banks. As Kronos aims to windowing portions of a time-domain audio buffer
While the fine degree of control afforded by spin/drift
be an environment where compilation should respond as which may be synthesised from a wavetable or derived
may be seen as, in some cases, exceeding the
from an audio stream or soundfile. These are then
psychoacoustic limits of human aural tracking abilities,

304 | 2013 ICMC idea | SHORT PAPERS 305 | 2013 ICMC idea | SHORT PAPERS
not to mention the capabilities of most typical 5. CONTROL PARAMETERS
multichannel arrays to convincingly localize sound, the
authors contend that the flexibility and degree of control 5.1. Coordinate system and typical trajectories
of such a system has clear application in the fields of
acousmatic composition, live electronics and sound spin/drift uses a coordinate system whose basic unit of
design. Most importantly, with the normalization of distance is the Speaker Array Radius (SAR), equal to the
multichannel systems in cinemas and the proliferation of distance from the centre of the speaker array to the
massive multichannel systems in institutions worldwide, perimeter of the array. A value of {0,0} is therefore the
sound processing techniques that allow for the centre of the array, {1,0} the rightmost speaker, and
automation of sophisticated trajectories of sound beyond {0,1} the front-centre speaker. A number of control
the possibilities of manual fader-pushing will become parameters may be set in either Polar or Cartesian
increasingly important in the domain of sonic art. coordinates. Both emitter and particles can move while
the soundfile is being granulated, and this motion can be
3. CYCLIC/CENTRIC MOTION in circular form (called spin: angular velocity in
degrees/second) or linear (called drift: a displacement
vector measured in SAR/second). Additionally, the
Denis Smalley, in his article on spectromorphology
emitter and particles can have both spin and drift, and
[11], develops a typology of motion and growth
the emitter can also have a spin increment, creating an Figure 1. Centrifugal motion (over 1 sec). Emitter Figure 4. (6 secs). Emitter initial location={0,0},
processes that may be present in sound-based
Archimedean spiral trajectory. Global accelerative forces initial location={2,0}, spin=360/sec. Particle spin=360/sec, spin increment=1 SAR/sec. Particle
composition. Of these processes, one category, velocity=3 SAR/sec, angle of emission=0 (relative) trajectories=0 (i.e. at points along emitter trajectory).
include a gravitational pull vector (in SAR/second2) and
cyclic/centric motions, is of particular relevance to this
viscous drag (which slows particle velocity over time).
project. This category includes processes such as
rotation, spin, spiral, vortex, and centrifugal motion, 6. USER INTERFACE
These processes are defined as giving the impression of 5.2. Typical Granular Synthesis Parameters
motion related to a central point. This can be achieved Figure 5 shows the main control GUI, which includes a
A number of the expected control parameters for a
through spectromorphological variation alone, but is draggable emitter object and graphical updates of the
standard granular synthesis algorithm are implemented
frequently aided by spatial motion.1 These spatial particle locations. The control parameters are set as
in spin/drift:
motions, however, are difficult to achieve in a standard standard MaxMSP floating-point objects, and have been
1. Grain duration and variance (in ms)
DAW, requiring complex fader automation. With exposed to a pattr object for preset management and
2. Hop size and variance (in ms)
spin/drift, however, true multichannel rotations, spins, preset interpolation. It is also a trivial development to
3. Initial buffer readhead position, readhead jitter
spirals, vortices and centrifugal motions are trivial. expose the parameter controls to some kind of MIDI or
(ms), and time-stretch amount (% of real-time)
4. Grain envelope type, amount and skew OSC controller.
4. IMPLEMENTATION 5. Emitter base pitch shift and drift, particle pitch
shift variance and drift (semitones)
spin/drift has been implemented as a Max/MSP patch 6. Grain gain and variance (dB)
running on OS X with audio output routed to an
equidistant octophonic speaker array2. A buffer~ object 5.3. Novel Granular Synthesis Parameters
is first populated with a soundfile or live sound. A
custom-coded Max external (spindrift~) is responsible Unconventional control parameters implemented in this Figure 2. Emitter initial position {4,0} and spin
for calculating the differential equations, locating and version of spin/drift include: 360/second. Particle distance of emission = 1 SAR,
updating emitter location and state, generating the array 1. Initial emitter location, spin (/sec), and drift spin 360/second around emitter location.
of particles and their state using stochastic formulae, and (SAR/sec)
keeping track of particle birth, life and death. It also 2. Emitter spin increment (i.e. spiral)
calculates the velocities and accelerative forces within 3. Particle distance of emission and variance
the parameter values and ranges set by the user. It from emitter location
maintains an array of grain instances and trajectories, 4. Particle angle of emission and variance Figure 5. GUI controls for spin/drift
and produces audio output by using a multichannel (degrees), and whether the angle is absolute or
granular synthesis algorithm in which each grain is relative to current emitter angle
dynamically spatialized with Pulkkis Vector Base 7. FUTURE DEVELOPMENTS
5. Particle spin and drift, and whether to spin
Amplitude Panning (VBAP) [12]. Distance encoding of around current emitter location or {0,0}
grains is applied using dynamically controlled lowpass 6. Gravitation pull and/or viscous drag (SAR/sec2) An intended and relatively straightforward development
filtration and effects bus level (with threshold, base 7. Reverberation (see Implementation) applied is the extension of spin/drifts pantophonic (2D)
value and rolloff able to be set by the user). The effects dynamically, related to calculated distance of soundfield into a periphonic (3D) soundfield through the
bus is routed via separate outlets from spindrift~ which, grain position use of an equidistant spherical or hemispherical speaker
in this patch, are sent to a convolution reverb whose Figures 14 show example trajectories (albeit somewhat array. As a further extension, the spatial locations could
impulse response may be chosen by the user for simplified) that are easily accomplished in spin/drift. be encoded through some kind of space-agnostic
simulation of the required space. Trajectories are plotted on a Polar grid. The emitter system such as Ambisonics, assuming the presence of an
trajectory is indicated with a dotted line, while particle Ambisonics decoder for playback.
trajectories are indicated with dashed lines. NB: Another intended development is the creation of a
Figure 3. Emitter initial position {4,0} and spin modular system of particle behaviours, as seen in many
1
[11, pp. 115117], p. 116 Speakers and head are not to scale! 360/second. Particle spin -22.5/sec around {0,0}.
CGI particle systems. These behaviours are a set of
2
Future versions will allow for arbitrary speaker algorithms that can be applied in series, in arbitrary
placements. See Future Developments.

306 | 2013 ICMC idea | SHORT PAPERS 307 | 2013 ICMC idea | SHORT PAPERS
not to mention the capabilities of most typical 5. CONTROL PARAMETERS
multichannel arrays to convincingly localize sound, the
authors contend that the flexibility and degree of control 5.1. Coordinate system and typical trajectories
of such a system has clear application in the fields of
acousmatic composition, live electronics and sound spin/drift uses a coordinate system whose basic unit of
design. Most importantly, with the normalization of distance is the Speaker Array Radius (SAR), equal to the
multichannel systems in cinemas and the proliferation of distance from the centre of the speaker array to the
massive multichannel systems in institutions worldwide, perimeter of the array. A value of {0,0} is therefore the
sound processing techniques that allow for the centre of the array, {1,0} the rightmost speaker, and
automation of sophisticated trajectories of sound beyond {0,1} the front-centre speaker. A number of control
the possibilities of manual fader-pushing will become parameters may be set in either Polar or Cartesian
increasingly important in the domain of sonic art. coordinates. Both emitter and particles can move while
the soundfile is being granulated, and this motion can be
3. CYCLIC/CENTRIC MOTION in circular form (called spin: angular velocity in
degrees/second) or linear (called drift: a displacement
vector measured in SAR/second). Additionally, the
Denis Smalley, in his article on spectromorphology
emitter and particles can have both spin and drift, and
[11], develops a typology of motion and growth
the emitter can also have a spin increment, creating an Figure 1. Centrifugal motion (over 1 sec). Emitter Figure 4. (6 secs). Emitter initial location={0,0},
processes that may be present in sound-based
Archimedean spiral trajectory. Global accelerative forces initial location={2,0}, spin=360/sec. Particle spin=360/sec, spin increment=1 SAR/sec. Particle
composition. Of these processes, one category, velocity=3 SAR/sec, angle of emission=0 (relative) trajectories=0 (i.e. at points along emitter trajectory).
include a gravitational pull vector (in SAR/second2) and
cyclic/centric motions, is of particular relevance to this
viscous drag (which slows particle velocity over time).
project. This category includes processes such as
rotation, spin, spiral, vortex, and centrifugal motion, 6. USER INTERFACE
These processes are defined as giving the impression of 5.2. Typical Granular Synthesis Parameters
motion related to a central point. This can be achieved Figure 5 shows the main control GUI, which includes a
A number of the expected control parameters for a
through spectromorphological variation alone, but is draggable emitter object and graphical updates of the
standard granular synthesis algorithm are implemented
frequently aided by spatial motion.1 These spatial particle locations. The control parameters are set as
in spin/drift:
motions, however, are difficult to achieve in a standard standard MaxMSP floating-point objects, and have been
1. Grain duration and variance (in ms)
DAW, requiring complex fader automation. With exposed to a pattr object for preset management and
2. Hop size and variance (in ms)
spin/drift, however, true multichannel rotations, spins, preset interpolation. It is also a trivial development to
3. Initial buffer readhead position, readhead jitter
spirals, vortices and centrifugal motions are trivial. expose the parameter controls to some kind of MIDI or
(ms), and time-stretch amount (% of real-time)
4. Grain envelope type, amount and skew OSC controller.
4. IMPLEMENTATION 5. Emitter base pitch shift and drift, particle pitch
shift variance and drift (semitones)
spin/drift has been implemented as a Max/MSP patch 6. Grain gain and variance (dB)
running on OS X with audio output routed to an
equidistant octophonic speaker array2. A buffer~ object 5.3. Novel Granular Synthesis Parameters
is first populated with a soundfile or live sound. A
custom-coded Max external (spindrift~) is responsible Unconventional control parameters implemented in this Figure 2. Emitter initial position {4,0} and spin
for calculating the differential equations, locating and version of spin/drift include: 360/second. Particle distance of emission = 1 SAR,
updating emitter location and state, generating the array 1. Initial emitter location, spin (/sec), and drift spin 360/second around emitter location.
of particles and their state using stochastic formulae, and (SAR/sec)
keeping track of particle birth, life and death. It also 2. Emitter spin increment (i.e. spiral)
calculates the velocities and accelerative forces within 3. Particle distance of emission and variance
the parameter values and ranges set by the user. It from emitter location
maintains an array of grain instances and trajectories, 4. Particle angle of emission and variance Figure 5. GUI controls for spin/drift
and produces audio output by using a multichannel (degrees), and whether the angle is absolute or
granular synthesis algorithm in which each grain is relative to current emitter angle
dynamically spatialized with Pulkkis Vector Base 7. FUTURE DEVELOPMENTS
5. Particle spin and drift, and whether to spin
Amplitude Panning (VBAP) [12]. Distance encoding of around current emitter location or {0,0}
grains is applied using dynamically controlled lowpass 6. Gravitation pull and/or viscous drag (SAR/sec2) An intended and relatively straightforward development
filtration and effects bus level (with threshold, base 7. Reverberation (see Implementation) applied is the extension of spin/drifts pantophonic (2D)
value and rolloff able to be set by the user). The effects dynamically, related to calculated distance of soundfield into a periphonic (3D) soundfield through the
bus is routed via separate outlets from spindrift~ which, grain position use of an equidistant spherical or hemispherical speaker
in this patch, are sent to a convolution reverb whose Figures 14 show example trajectories (albeit somewhat array. As a further extension, the spatial locations could
impulse response may be chosen by the user for simplified) that are easily accomplished in spin/drift. be encoded through some kind of space-agnostic
simulation of the required space. Trajectories are plotted on a Polar grid. The emitter system such as Ambisonics, assuming the presence of an
trajectory is indicated with a dotted line, while particle Ambisonics decoder for playback.
trajectories are indicated with dashed lines. NB: Another intended development is the creation of a
Figure 3. Emitter initial position {4,0} and spin modular system of particle behaviours, as seen in many
1
[11, pp. 115117], p. 116 Speakers and head are not to scale! 360/second. Particle spin -22.5/sec around {0,0}.
CGI particle systems. These behaviours are a set of
2
Future versions will allow for arbitrary speaker algorithms that can be applied in series, in arbitrary
placements. See Future Developments.

306 | 2013 ICMC idea | SHORT PAPERS 307 | 2013 ICMC idea | SHORT PAPERS
order, to affect the trajectories of the emitted particles. [8] C. W. Reynolds, Flocks, herds and schools: A FORMAL SEMANTICS FOR MUSIC NOTATION CONTROL FLOW
As an example, particle behaviours might include: distributed behavioral model, in ACM
1. Bounded spaces and edge effects (e.g. SIGGRAPH Computer Graphics, 1987, vol. 21,
bouncing trajectories) pp. 2534. Zeyu Jin Roger Dannenberg
2. Interparticle attraction or repulsion [9] T. Blackwell and M. Young, Self-organised
Carnegie Mellon University Carnegie Mellon University
3. Randomized motion (e.g. drunken walks) music, Organised Sound, vol. 9, no. 2, pp. 123
4. Dynamical non-linear systems (e.g. Lorenz 136, 2004. School of Music, Pittsburgh, PA Computer Science Department, Pittsburgh, PA
attractors, cellular automata) [10] Wilson, Scott, Spatial Swarm Granulation. zeyuj@andrew.cmu.edu rbd@cs.cmu.edu
5. Flocking systems (boids, swarms) [Online]. Available:
6. Vortex and other wind motions (may not be so http://eprints.bham.ac.uk/237/1/cr1690.pdf.
effective in audio) [Accessed: 07-Feb-2013]. ABSTRACT
Two other developments that would reap artistic [11] D. Smalley, Spectromorphology: explaining
benefits: sound-shapes, Organised sound, vol. 2, no. 2, pp. Music notation includes a specification of control flow,
1. A non-linear method for creating grains instead 107126, 1997. which governs the order in which the score is read us-
of the current fixed hop-size with variance. [12] V. Pulkki, Virtual sound source positioning using ing constructs such as repeats and endings. Music theory
We imagine some kind of swarm or burst vector base amplitude panning, Journal of the
provides only an informal description of control flow no-
algorithm could be applied to the creation times Audio Engineering Society, vol. 45, no. 6, 1997.
tation and its interpretation, but interactive music systems
of grains to further simulate environmental
need unambiguous models of the relationships between
effects
2. Quantization of the readhead to the nearest the static score and its performance. A framework is in-
attack transient to avoid the traditional troduced to describe music control flow semantics using
theories of formal languages and compilers. A formaliza- Figure 1: Control flow definition in Reads book
smoothness of granular envelope attack
portions in most granular synthesis algorithms tion of control flow answers several critical questions: Are
Finally, we intend to implement a multi-voice version the control flow indications in a score valid? What do the
that will manage multiple soundfiles/buffers control flow indications mean? What is the mapping from a gap between often simplified theoretical ideals and ac-
simultaneously, each buffer being fed to an performance location to static score location? Conven- tual practice, especially in modern works. In practice, we
independently moving emitter. This would allow for a tional notation is extended to handle practical problems, find nested repeats, exceptions and special cases indicated
truly symphonic approach to spatialized, trajectorial and an implementation, Live Score Display, is offered as by textual annotations, multiple endings, and symbols for
granular synthesis. Such an approach would have strong a component for interactive music display. rearrangement.
implications for a macrostructural use of spin/drift, by We encountered this gap between theory and practice
taking into account the tensional and teleological aspects in the implementation of music notation display software.
1. INTRODUCTION
of varying spatial motions, energies and articulations. We needed a formal (computable) way to relate notation
Music notation has been evolving for centuries, creating to its performance, and we found conventional notions too
The spindrift~ object and sample Max/MSP patch will limiting to express what we found in actual printed scores.
a symbolic system to convey music information. Early
be available for download from http://michaelnorris.info To address this problem, we developed new theoretical
in late 2013. music notation contained only lines and notes, which are
sufficient for communicating pitches and durations. It was foundations based upon models of formal language and
later that bar lines and time signatures emerged, grouping compilation, and we applied these developments to the
8. REFERENCES implementation of a flexible music display system.
music into measures and introducing the idea of beats.1
The notation for music control flow, like repeats and co- Music control flow is the reading order of measures
[1] W. T. Reeves, Particle systemsa technique for das, came even later. Control flow helps to identify repeat- affected by control symbols including the time signature,
modeling a class of fuzzy objects, in ACM measures, repeats, endings, etc. It can also be viewed for-
ing structures of music and eliminates duplication in the
SIGGRAPH Computer Graphics, 1983, vol. 17, mally as a function f that maps the performed beat k to a
printed score. In the Classical period, control flow nota-
pp. 359375. location of a score, <m, b>, a measure and beat pair. f (k)
tion is closely tied to music forms such as binary, ternary
[2] D. Gabor, Acoustical quanta and the theory of describes the reading order of the score. In principle, we
and sonata and is more of a musical architecture than a
hearing, Nature, vol. 159, no. 4044, pp. 591594,
means of saving space.2 Conventional practice for control can rewrite the score in the order f (1), f (2), . . . to cre-
1947.
flow notation is well established. The literature [6, 15] has ate an equivalent score with no control flow (other than
[3] I. Xenakis, Formalized Music [Teils., engl.]:
formalized the notation in all kinds of ways and there is reading sequentially). We call this the flattened score
thought and mathematics in composition. Indiana
University Press, 1971. little conflict among definitions. However, traditional mu- or performance score. Audio recordings and MIDI se-
[4] C. Roads, Microsound. MIT press, 2004. sic theory has not explored the possibilities of expanded quences are both in the order of the flattened representa-
[5] T. Wishart, Audible design: a plain and easy or enriched representations for control flow, and there is tion of the corresponding score.
introduction to practical sound composition. 1 Far
Existing music theory devotes little attention to con-
Orpheus the Pantomime, 1994.
beyond formalizing the notion of beats, music notation led to
trol flow, and in fact, there does not seem to be even a
the discovery of time as an independent dimension that did not de-
[6] D. Kim-Boyle, Sound Spatialization with Particle pend upon physical actions. In particular the musical rest is the first standard term for the concept of control flow. To define
Systems, in Proceedings of the 8th International direct representation of nothingness existing over time, or of time it- the meaning of control flow symbols, the conventional
Conference on Digital Audio Effects (DAFX-05), self. Composers developed this concept centuries before the scientific practice is to use words and visuals to illustrate the read-
2005, pp. 658. revolution, Kepler, Newton, graphs with a time axes, etc. [3]
2 For example, In practically all the sonatas of the earlier period the ing order. For example, Read uses arrows to mark the true
[7] D. Kim-Boyle, Spectral and Granular exposition is repeated, as is indicated by the repeat-sign at its end, which reading order (see Figure 1) [15]. This approach defines
Spatialization with Boids, in SEAMUS National is also helpful for the reader in finding the end of the exposition ... [2] both the syntax and meaning.
Conference, Ames, Iowa, 2007.

308 | 2013 ICMC idea | SHORT PAPERS 309 | 2013 ICMC idea | SHORT PAPERS

You might also like