Milmeister | The Rubato Composer Music Software | E-Book | www.sack.de
E-Book

E-Book, Englisch, 301 Seiten

Reihe: Computational Music Science

Milmeister The Rubato Composer Music Software

Component-Based Implementation of a Functorial Concept Architecture
1. Auflage 2009
ISBN: 978-3-642-00148-2
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark

Component-Based Implementation of a Functorial Concept Architecture

E-Book, Englisch, 301 Seiten

Reihe: Computational Music Science

ISBN: 978-3-642-00148-2
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark



Both modern mathematical music theory and computer science are strongly influenced by the theory of categories and functors. One outcome of this research is the data format of denotators, which is based on set-valued presheaves over the category of modules and diaffine homomorphisms. The functorial approach of denotators deals with generalized points in the form of arrows and allows the construction of a universal concept architecture. This architecture is ideal for handling all aspects of music, especially for the analysis and composition of highly abstract musical works. This book presents an introduction to the theory of module categories and the theory of denotators, as well as the design of a software system, called Rubato Composer, which is an implementation of the category-theoretic concept framework. The application is written in portable Java and relies on plug-in components, so-called rubettes, which may be combined in data flow networks for the generation and manipulation of denotators. The Rubato Composer system is open to arbitrary extension and is freely available under the GPL license. It allows the developer to build specialized rubettes for tasks that are of interest to composers, who in turn combine them to create music. It equally serves music theorists, who use them to extract information from and manipulate musical structures. They may even develop new theories by experimenting with the many parameters that are at their disposal thanks to the increased flexibility of the functorial concept architecture. Two contributed chapters by Guerino Mazzola and Florian Thalmann illustrate the application of the theory as well as the software in the development of compositional tools and the creation of a musical work with the help of the Rubato framework.

Milmeister The Rubato Composer Music Software jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1;Foreword;5
2;Preface to the Springer Edition;7
3;Preface;8
4;Introduction;9
5;Overview;11
6;Contents;13
7;Part I Concepts and Theory;19
7.1;Overview of Music Theories;20
7.2;The Representation of Music;24
7.2.1;Types of Representation;24
7.2.2;Symbolic Representation of Music;26
7.2.2.1;Electronic Scores;27
7.2.2.2;MIDI;30
7.2.2.3;Musical Representation Languages;31
7.2.2.4;Language of General Concepts;35
7.3;Architecture of Concepts I: Principles;36
7.3.1;Pure Architecture;36
7.3.1.1;Selection;37
7.3.1.2;Conjunction;38
7.3.1.3;Disjunction;38
7.3.2;Architecture with Primitives;39
7.3.3;Examples;41
7.3.3.1;Macro Notes;42
7.3.3.2;Frequency Modulation;43
7.3.3.3;Full Score;44
7.4;The Category of Modules;47
7.4.1;From Monoids to Modules;47
7.4.1.1;Monoids;48
7.4.1.2;Groups;49
7.4.1.3;Rings;49
7.4.1.4;Modules;53
7.4.2;Categories;57
7.4.2.1;Definition;57
7.4.2.2;Functors;59
7.4.2.3;Natural Transformations;61
7.4.2.4;Yoneda's Lemma;64
7.4.2.5;Limits and Colimits;65
7.4.2.6;Topoi;68
7.5;Architecture of Concepts II: Forms and Denotators;70
7.5.1;Forms;70
7.5.2;Denotators;72
7.5.3;Computational Category Theory;73
7.5.3.1;Data Types in Programming Languages;73
7.5.3.2;The Role of Diagrams;76
7.6;Software Components for Computational Theories;79
7.6.1;Types of User Interface;80
7.6.2;Rubato Composer: Computational Theories;83
7.7;Historical Overview;85
7.7.1;presto;85
7.7.2;``Classic'' Rubato;87
7.7.3;Experiments in Java;89
7.7.4;Rubato Composer;90
8;Part II The Implementation;91
8.1;Overview;92
8.2;Architecture;94
8.2.1;Overall Structure;94
8.2.2;The Rubato Composer Universe;96
8.2.3;Java Packages;98
8.3;Modules and Morphisms;100
8.3.1;Modules and their Elements;100
8.3.1.1;The Module Interface;100
8.3.1.2;The ModuleElement Interface;104
8.3.2;Module Morphisms;108
8.3.2.1;The ModuleMorphism Interface;108
8.4;Forms and Denotators;117
8.4.1;Requirements;117
8.4.2;Forms;118
8.4.2.1;Form Class;119
8.4.2.2;SimpleForm Class;121
8.4.2.3;LimitForm and ColimitForm Classes;121
8.4.2.4;PowerForm and ListForm Classes;122
8.4.3;Denotators;122
8.4.3.1;SimpleDenotator Class;125
8.4.3.2;LimitDenotator Class;126
8.4.3.3;ColimitDenotator Class;127
8.4.3.4;PowerDenotator and ListDenotator Classes;127
8.4.4;Tools and Operations;128
8.4.4.1;Construction of Forms and Denotators;128
8.4.4.2;Paths;130
8.4.4.3;Module Mapping and Structural Replacement;131
8.4.4.4;Reforming;132
8.4.4.5;Address Changing;135
8.4.4.6;List and Set Operations;136
8.5;Tools and Utilities;138
8.5.1;Low-Level Mathematical Tools;138
8.5.1.1;Numbers;138
8.5.1.2;Matrixes;139
8.5.2;Repository and Predefined Universe;139
8.5.3;MIDI Sequencer and Synthesizer;141
8.5.4;Scheme Interpreter;142
8.5.5;XML as File Format for Rubato Composer;143
8.6;Rubato Composer GUI;145
8.6.1;Terminology;145
8.6.2;The Implementation of Networks;146
8.6.3;Running a Network;148
8.6.4;Macro Rubettes;151
8.6.5;Tools;154
8.6.6;The Plug-In System;154
9;Part III Rubato Composer in Practice;159
9.1;Overview;160
9.2;A Tutorial;161
9.3;First Applications in Rubette Construction;175
9.3.1;Rubettes for Macro Objects;175
9.3.2;The Wallpaper Rubette;178
9.3.3;The Alteration Rubette;184
9.3.4;Counterpoint Theory;187
9.3.5;Music Composition;188
9.4;The BigBang Rubette;190
9.4.1;Spontaneous Algorithmic Composition;190
9.4.1.1;Facts about Geometric Composition Strategies;191
9.4.2;Gestural Interaction Concept;192
9.4.2.1;Gesture Theory;192
9.4.2.2;Application of Gesture Theory;194
9.4.3;Modular Views;195
9.4.3.1;View Concept;195
9.4.3.2;Note representation;196
9.4.3.3;Basic Functionality and Navigation;200
9.4.3.4;Layers;200
9.4.4;Implemented Gestures;201
9.4.4.1;Geometrical Transformations;202
9.4.4.2;Wallpapers;203
9.4.4.3;Alteration;205
9.4.5;The BigBang Rubette in Context;206
9.5;Creative Analysis of Boulez's Structures;208
9.5.1;Boulez's Creative Analysis Revisited;208
9.5.2;Ligeti's Analysis;208
9.5.3;A First Creative Analysis of Structure Ia;210
9.5.3.1;Address Change;211
9.5.3.2;Primary Parameter Address Changes;212
9.5.3.3;Secondary Parameter Address Changes;213
9.5.3.4;The First Creative Analysis;215
9.5.4;Implementing Creative Analysis in Rubato Composer;216
9.5.4.1;The System of Boulettes;218
9.5.5;A Second More Creative Analysis and Reconstruction;220
9.5.5.1;The Conceptual Extensions;221
9.5.5.2;The BigBang Rubette;226
9.5.5.3;A Composition;228
9.6;Conclusion and Outlook;233
9.6.1;Lessons Learned;233
9.6.2;Things To Do;234
9.6.3;Ideas for Future Work;235
10;Part IV Appendix;237
10.1;User's Manual;238
10.1.1;Introduction;238
10.1.2;Concepts;238
10.1.2.1;Rubato Composer's World of Objects;238
10.1.2.2;Rubettes;239
10.1.2.3;Networks;241
10.1.2.4;Macro Rubettes;242
10.1.2.5;Tools;243
10.1.3;Using Rubato Composer;243
10.1.3.1;Starting up;243
10.1.3.2;General Usage;243
10.1.3.3;Main Window;244
10.1.3.4;Main Menu and Toolbar;245
10.1.3.5;Network;247
10.1.3.6;Tools;249
10.1.3.7;Scheme Tools;256
10.1.3.8;Preferences;257
10.1.3.9;Recurring User Interface Elements;258
10.1.4;Core Rubettes;262
10.1.4.1;Rubette Description Schema;262
10.1.4.2;List of Core Rubettes;263
10.1.5;Built-in Non-Core Rubettes;274
10.1.6;Writing Rubettes;276
10.1.6.1;Developing with the Rubato Framework;276
10.1.6.2;Rubette Interface;278
10.1.7;Rubette Example;284
10.1.7.1;Specification;284
10.1.7.2;The LatchRubette class;284
10.1.7.3;Packaging a Plug-In;289
10.1.8;Types of Module Morphisms;290
10.1.9;The Rubette Java Interface;292
10.1.10;Example LatchRubette class;293
10.1.11;Keyboard Shortcuts;296
10.1.12;Rubato Scheme;297



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.