A Brief Survey of the Current Applications of ENPSkip other details (including permanent urls, DOI, citation information)
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 3.0 License. Please contact firstname.lastname@example.org to use this work in a way not covered by the license. :
For more information, read Michigan Publishing's access and usage policy.
Page 00000616 A Brief Survey of the Current Applications of ENP Mika Kuuskankare, and Mikael Laurson Department of Doctoral Studies in Musical Performance and Research, Sibelius Academy mika.kuuskankare @ siba.0 Centre for Music Technology, Sibelius Academy laurson@ siba.0 Abstract The center of attention in this paper is a computer-based music notation application Expressive Notation Package (ENP). ENP is among the various music related software packages developed at Sibelius Academy. ENP is of central importance in the music related applications collected under the umbrella of PWGL (PWGL is a free cross-platform visual programming language with a strong emphasis on music and sound related applications). ENP is an important bridge between the different software components inside PWGL. It allows these packages to inter-operate by using ENPs versatile representation of musical objects. There is a close integration between ENP and PWGLSynth (the synthesis environment of PWGL). The rule-based language called PWGLConstraints, in turn, can be used to calculate (i.e., compose) musical material with the help of ENP. Furthermore, ENP-Script, a music scripting language, can be used to automatically analyze a score using multiple view-points. It is also possible to visualize the analysis information directly on the score. This paper gives an overview of the current status of ENP and gives concrete examples of some of its applications. 1 Background ENP (Kuuskankare and Laurson 2002) is a music notation program written in Lisp. It is a software package that has a mouse driven graphical user interface based on direct editing. The main motivation behind ENP is to meet the needs of computer aided composition, music analysis and synthesis control. According to Glendon Diener (Diener 1990), music notation programs have three basic types of use: Compositional, archival, and analytic. In its current state ENP can be used: 1. to represent complex music notation including 20th century music 2. to algorithmically generate musical structures: scores, parts, chord, and notes 3. to automatically analyze a musical score using multiple view-points 4. to textually describe a score and the individual notational objects 5. to display music theoretical analysis information, e.g., Schenkerian graphs 6. to manipulate a score through a GUI based on direct editing 7. to use scores as user interface components 8. to visually create custom notational attributes that are immediately usable without recompiling and 9. to add, remove, and modify information using an intelligent scripting language. ENP is used as a notational front-end in PWGL (Laurson and Kuuskankare 2002). There exist a version for both Mac OS X and Windows XP operating systems. Besides PWGL, there are also other Lisp-based composition environments that provide music notational capabilities. Each of these systems has their own unique features and approach to music representation. OpenMusic's (Assayag et al. 1999) approach is the simplest: it provides a simplil ed music notation comparable to its predecessor, PatchWork (Laurson 1996). Only a handful of basic notational attributes are provided and the user interface quite restricted. In the form of CMN (Schottstaedt 1997), Common Music (Taube 1991) provides a powerful music notation system that can represent a wide range of music. However, the interface to music notation in CMN is purely text-based, thus it is only intended for viewing, and not for editing. PWGLs approach is unique in several different ways. It provides a music notation package with a GUI based on direct editing. It also allows the use of its musical structures (both low-level, e.g., notes, chords; and high-level, i.e., score) in other packages, such as PWGLConstraints (Laurson and Kuuskankare 2005a) and PWGLSynth (Laurson, Norilo, and Kuuskankare 2005). It is also possible to generate and manipulate the musical objects using PWGLs graphical patch language. 616
Page 00000617 The rest of the paper is organized as follows. First, we give a brief introduction to the notational capabilities of ENP. Next, we enumerate some of the most important applications. The paper ends with some concluding remarks. 2 ENP in Brief ENP is intended to represent Western musical notation roughly from 17th century onward including 20th century notation. ENP supports an array of notational styles. An ENP score is built out of hierarchical object structures. Typically, an ENP score consists of parts, a part consists of voices, a voice consists of measures, etc. The objects that contain the actual pitch material are chords. Chords also can contain information about additional attributes. These attributes, called ENP-Expressions, are of primary importance in terms of our software. They can be used in a wide range of applications: (1) display music analytical information; (2) attach arbitrary textual annotations to objects; and (3) dynamically inspect and visualize data contained by the notational objects. Figure 1 gives an example of a score written in traditional metric notation with some standard expression markings, such as accents, slurs, and dynamics. The score shows a typical setting for guitar, where there are multiple voices written in a single staff-system. guitar model, can be displayed in an ENP score. An elaborate interpretation is generated with the help of both standard expressions and some special macro-note expressions (Laurson and Kuuskankare 2005b). When the score is played the control information is calculated automatically. J=38 - O. L............................................................I I I I........................ SI -I ENP-guitar vlm vlap vla vlarp Chitarra Transciption par Andres Segovia Tango opus 156 No. a Guitar Guitar TV Isaac Albeniz 1860-1909:: Figure 2: A score written for a virtual guitar containing both standard and non-standard expressions. Also, there are some macro-note expressions to create complex arpeggio gestures. 3.2 Computer-assisted Composition ENP has been used as a computer-assisted composition tool along with PWGLConstraints. For example, in his work, Hodoi to Ergo, composer Kimmo Kuitunen uses ENP to visualize the ideas behind large-scale durations (Kuitunen, Kuuskankare, and Laurson 2005). Figure 3 shows one potential solution to a compositional constraints problem prepared by Magnus Lindberg. The pitch material of this excerpt is calculated with the help of ENP and PWGLConstraints. Figure 3: An example constraints problem prepared by Magnus Lindberg. The pitch material shown in the ENP score is calculated using PWGLConstraints. 3.3 Computer-assisted Music Analysis There are several sophisticated music analysis applications available (e.g., HumDrum, Huron (2002); athenaCL, Figure 1: An instrumental part containing three voices displayed in a single staff-system. (Isaac Albeniz: Tango, op. 156; transcribed for guitar by Andres Segovia.) 3 ENP Applications 3.1 Sound Source Control ENP has already been used as a tool in several different projects as an intelligent sequencer to produce control information to various instrument models realized with the help of PWGLSynth (there is a close integration between ENP and PWGLSynth). One of the unique aspects of ENP is that control information can be drawn directly on the score. Figure 2 shows how control information, specialized to a classical 617
Page 00000618 Ariza (2005)) that use text based representation as a starting point. This kind of an approach is usually adequate for analysis questions that are statistical in nature. However, text-based approach makes verifying the result more difl - cult because the analysis result is provided without the corresponding notational counterpart. In ENP, in turn, it is possible to use a set of specialized graphical devices to visualize the analysis information directly in the score. An ENP score can be processed with ENP-script (Kuuskankare and Laurson 2004) that can access a rich set of information, such as, pitch, duration, dynamics, expressions, timing. The user can also map over different levels of notational objects, such as, measures, beats, chords, and notes in the score. This kind of an approach resembles the container-iterator idea found, for example, in CPNView (Donncha 0 Maidin 1999; Donncha 0 Maid[n and Margaret Cahill 2001). Figure 4 shows the starting-point for our scripting example (an excerpt of a piece by Arnold Schoenberg without any articulations or other markings). Here, we use an ENP-script to analyze and manipulate the score using two different stand-points. First, we analyze the pitch and rhythm information in order to I11 the score with some of the articulations found in the original score (e.g., in the original score there is always a slur between two notes if they form a larger interval than an octave). In this example we concentrate only on a few types of articulations: grave accents, slurs and crescendos. Second, we use the script to D nd and mark the 12-tone set forms of the passage. K rA W I called Groups. Groups can be used to mark a continuous collection of notational objects in the score and give them a common identity. In this case the common identity is the set form, e.g., 'P4R', 'P10'.1; 1. scripting rule (*?1?2 (?if (when (and (> (abs (- (m?2) (m?1))) 12) (not (prev-rest??2))) (add-expression 'slur?1?2))) "slur"); 2. scripting rule (*?1 (?if (when (= (beaming-level?1) 2) (add-expression 'accent-grave?1))) "accent"); 3. scripting rule (*?1?2?3?4?5?6 (?if (when (and (= (beaming-level?1) 2) (= (beaming-level?6) 2)) (add-expression 'crescendo?1?2?3?4?5?6))) "crescendo") A A A A (P4R) P1P0R SAAAA Figure 5: The ENP score given in Figure 4 D lled with some analysis information (set forms) and articulations with the help of ENP-script. Figure 4: Suite fiir Klavier, op. 25 by Arnold Schoenberg containing only the pitch and rhythm information. Below we give a part of the script that is used to perform the analysis. An ENP-script is typically constructed out of a number of so called scripting rules. One scripting rule generally deals with one aspects, for example, in this case the D rst scripting rule inserts the slurs in the resulting score and the second scripting rule, in turn, inserts the accents (see Figure 5). The set forms are marked with special ENP-expressions 4 Conclusions This paper provided an overview of the current state of Expressive Notation Package (ENP), a music notation program used in PWGL. We covered some of ENP's exist'The naming convention used here is taken from the New Grove Dictionary (Sadie and Tyrrell 2001) where the different aspects of the series are indicated with P (prime), R (retrograde), I (inversion), and RI (retrogradeinversion). 618
Page 00000619 ing applications dealing with computer assisted-composition, computer-assisted music analysis, and sound source control. It is convenient to have a system with witch analytical information can be represented directly as part of music notation. This kind or representation, however, is suitable for only certain kind of data. For example, statistical analysis information is virtually impossible to display this way. Thus, ENP should be integrated with some statistical package such as R2 (Cribari-Neto and Zarkos 1999), to allow the possibility to represent any kind of statistical information that can be retrieved from an ENP score (e.g., pitch histograms). Computer-assisted Instruction (CAI) is another interesting area in terms of ENP. CAI refers to a system of educational instruction performed almost entirely by computer. There are many advantages to using computers in educational instruction: they provide instant interaction with a student and also allow students to proceed at their own pace. The facilities in ENP, including its integration with PWGLConstraints and PWGLSynth, make it an ideal CAI tool. Sophisticated tutors for basic music theory, solfige, post-tonal music theory, interactive harmony teachers, ear trainers and other assignments could be created with the help of ENP. For the needs of CAI ENP should also provide specialized Content Authoring Tools (CAT). CAT provide teachers with the means to create new educational material by enabling to arrange different kinds of visual and textual components to create interactive training content. Acknowledgment The work of Mikael Laurson has been supported by the Academy of Finland (SA 105557). References Ariza, C. (2005). An Open Design for Computer-Aided Algorithmic Music Composition. Ph. D. thesis, New York University, New York, NY, USA. Assayag, G., C. Rueda, M. Laurson, C. Agon, and 0. Delerue (1999, Fall). Computer Assisted Composition at IRCAM: From PatchWork to OpenMusic. Computer Music Journal 23(3), 59-72. Cribari-Neto, F. and S. G. Zarkos (1999). R: Yet another econometric programming environment. Journal of Applied Econometrics 14, 319-329. Diener, G. R. (1990). Modeling Music Notation: A Three Dimensional Approach. Ph. D. thesis, Stanford University. Donncha 0 Maidin (1999). Common Practice Notation View: a Score Representation for the Construction of Algorithms. 2R is a language and environment for statistical computing and graphics. Proceedings of International Computer Music Conference, 248-251. Donncha 0 Maidin and Margaret Cahill (2001). Score Processing for MIR. International Symposium on Music Information Retrieval, 59-64. Huron, D. (2002). Music information processing using the humdrum toolkit: Concepts, examples, and lessons. Computer Music Journal 26(2), 15-30. Kuitunen, K., M. Kuuskankare, and M. Laurson (2005). Large Scale Duration Organization in 'Hodoi to Ergo'. In Proceedings of International Computer Music Conference, pp. 713 -716. Kuuskankare, M. and M. Laurson (2002, September). ENP2.0 A Music Notation Program Implemented in Common Lisp and OpenGL. In Proceedings of International Computer Music Conference, Gothenburg, Sweden, pp. 463-466. Kuuskankare, M. and M. Laurson (2004). Intelligent Scripting in ENP using PWConstraints. In Proceedings of International Computer Music Conference, pp. 684-687. Laurson, M. (1996). PATCHWORK: A Visual Programming Language and some Musical Applications. Studia musica no.6, doctoral dissertation, Sibelius Academy, Helsinki. Laurson, M. and M. Kuuskankare (2002, September). PWGL: A Novel Visual Language based on Common Lisp, CLOS and OpenGL. In Proceedings of International Computer Music Conference, Gothenburg, Sweden, pp. 142-145. Laurson, M. and M. Kuuskankare (2005a). Extensible Constraint Syntax Through Score Accessors. In Journees d'Informatique Musicale. Laurson, M. and M. Kuuskankare (2005b). Micro textures with macro-notes. In Proceedings of International Computer Music Conference, pp. 717-720. Laurson, M., V. Norilo, and M. Kuuskankare (2005, Fall). PWGLSynth: A Visual Synthesis Language for Virtual Instrument Design and Control. Computer Music Journal 29(3), 29-41. Sadie, S. and J. Tyrrell (Eds.) (2001). The New Grove Dictionary of Music and Musicians. London: Macmillan. Schottstaedt, B. (1997). Common Music Notation. In Beyond MIDI, The Handbook of Musical Codes. MIT Press, Cambridge, Massachusetts. Taube, H. (1991, Summer). Common Music: A music composition language in Common Lisp and CLOS. Computer Music Journal 15(2), 21-32. 619