- 267 -Mazzola, Guerino / Noll, Thomas / Lluis-Puebla, Emilio: Perspectives in Mathematical and Computational Music Theory 
  Erste Seite (1) Vorherige Seite (266)Nächste Seite (268) Letzte Seite (454)      Suchen  Nur aktuelle Seite durchsuchen Gesamtes Dokument durchsuchen     Aktuelle Seite drucken Hilfe 

3 Rubato: Interactive Theory Testing

Rubato is an interactive graphical software tool for music analysis and artificial performance (see http://www.rubato.org). It was developed by Guerino Mazzola and Oliver Zahorka on the NeXTStep Operating System and ported by us to OpenStep and Mac OS X, where we develop it further in an OpenSource project.4

 
4  
The reader should not be confused by the fact that there are two complementing software development activities operating under the label »Rubato«: This paper and the three articles by Noll, Fleischer and Nestke in this volume refer to a collection of classical windows-and-buttons based interfaces and Objective-C modules for music analysis and performance available for Mac OS X, whereas the paper by Göller and Milmeister refers to a collection of Java modules for data visualization and manipulation, for software distribution and operation and for music analysis and performance, not yet publicly available at the time of this writing. This latter software is called »Distributed Rubato«
A main idea of its design was that it should be easy to use by providing a windows-based graphical user interface people are used to, and that it must be extendible. Following a component based approach, it accepts modules created by other research and development groups to allow a discourse which is competitive in theory and collaborative in terms of tool usage.

Rubato’s architecture is that of an application framework with a frame application and dynamically loadable plug-in modules, so-called Rubettes®. The frame provides basic data storage and data access capabilities. It defines and establishes protocols for loading Rubettes, setting up their graphical interfaces, and accessing their data and functionalities. A Rubette by contrast provides a graphical interface to its functionality, giving the user the opportunity to change some theory settings, calculate results for a given musical score and examine them interactively.

The implementation language and development environments for Rubato and the Rubettes are Objective-C, the Macintosh Cocoa-Frameworks, InterfaceBuilder and ProjectBuilder, important tools for building applications on the Mac OS X platform. The embedding of FScript5

 
5  
http://www.fscript.org
, a scripting component for accessing the Objective-C runtime environment, opens Rubato and its Rubettes for many kinds of customizations.

3.1 Configuration Levels

Configuration in Rubato is more difficult than in Humdrum. The reason for this is that - differently from a Humdrum tool - it has a state, on which the results of a scripting command depend and which in its own may be changed by scripting commands. Compared to Humdrum’s shell-scripting, on the one hand scripting in FScript could work in a much finer granularity6

 
6  
Any method of any runtime object can possibly be called.
on the other hand Rubettes as reasonable scripting targets are much more complex and difficult to program.

The following customization and programming levels can be identified:

  • Visual configuration: That Rubettes have a state can be exploited by the frame application in so far as newly loaded Rubettes can be put in a previously saved state. This way a collection of configured Rubettes could be loaded and applied to new musical material.7
     
    7  
    This feature is not implemented yet.

Erste Seite (1) Vorherige Seite (266)Nächste Seite (268) Letzte Seite (454)      Suchen  Nur aktuelle Seite durchsuchen Gesamtes Dokument durchsuchen     Aktuelle Seite drucken Hilfe 
- 267 -Mazzola, Guerino / Noll, Thomas / Lluis-Puebla, Emilio: Perspectives in Mathematical and Computational Music Theory