21
RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich [email protected] [email protected] www.encyclospace.org 1996 2001 2006 Guerino Mazzola Oliver Zahorka Jörg Garbers Stefan Göller Stefan Müller Gérard Milmeister Florian Thalmann Karim Morsy Julien Junod Ruhan Alpaydin

RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich [email protected] [email protected] [email protected] 1996 2001 2006 Guerino

Embed Size (px)

Citation preview

Page 1: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

RUBATO composer

Seminar

Guerino MazzolaU Minnesota & Zü[email protected]   [email protected]     www.encyclospace.org        

1996

2001

2006

Guerino MazzolaOliver Zahorka

Jörg GarbersStefan GöllerStefan Müller

Gérard MilmeisterFlorian Thalmann

Karim MorsyJulien Junod

Ruhan Alpaydin

Page 2: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• Concept

• Rubato for NeXT& Mac

• Rubato composer

• Writing Rubato composer rubettes

Page 3: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• Concept

• Rubato for NeXT& Mac

• Rubato composer

• Writing Rubato composer rubettes

Page 4: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• analytical expressive performance

• musical analysis of scores

• logical & geometric operations

• composition

Page 5: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

L

S

S

L

composition

performance

math. operations

analysis

sound files

Page 6: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

need unlimited communication!

Universal data format: Denotators and Forms

• object-oriented programming• form ~ class• denotator ~ instance

• topos theory• form ~ functor• denotator ~ addressed point

Each denotator carries its own form

Four types of forms: simple, limit, colimit, powerset

Mariana Montiel

Page 7: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• Concept

• Rubato for (NeXT&) Mac

• Rubato composer

• Writing Rubato composer rubettes

Page 8: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

Os X

MetroRubette

☞ RUBATO®

Page 9: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino
Page 10: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

Anja Volk-Fleischer‘s work with MetroRubette (PhD 2002 thesis Die analytische Interpretation)http://www.cs.uu.nl/people/volk

Chantal Buteau‘s work work with MeloRubette (PhD 2003 thesis A Topological Model of Motivic Structure and Analysis of Music: Theory and Operationalization. Dissertation, Zürich 2003)

Page 11: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• Concept

• Rubato for NeXT& Mac

• Rubato composer

• Writing Rubato composer rubettes

Page 12: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

Main improvements of Rubato composer:• Java replaces Objective C (platform independence!)

• dynamic creation of rubette networks

• rubette format standardized:

• input/output of denotators• properties• views

• rubette repertory increased and diversified

• rubette writing simplified

• forms and denotators can be created dyamically

☞ Rubato composer (1)define denotators, forms, networksrubettes: melody, rhythmize, set, ModuleMap, etc.

simpleexam

ple

Page 13: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

Pierre Boulezstructures Ia (1952) analyzed by G. Ligeti

thread (« Faden »)

The composition is a system of threads!

☞ Rubato composer (2) Boulez structures network

bouleztest11alllmidi

Page 14: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

fourth movement: Coherence/Opposition

Page 15: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

☞ Rubato composer (3)

Florian Thalmann‘s BigBang rubette:

towards gestural musical composition

of transformations and deformations

Page 16: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• Concept

• Rubato for NeXT& Mac

• Rubato composer

• Writing Rubato composer rubettes

Page 17: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino
Page 18: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• integrating a rubette class into rubato

• documentation about rubato classes

• a simple rubette code

• contact us...

Page 19: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• Integrating a rubette class into rubato1. Define a directory DDD where to work.

2. Put a copy of rubato.jar into DDD.

3. Write a java class XXXRubette.java for a rubette named XXXRubette.

4. Put XXXRubette.java into DDD.

5. Write a manifest file XXXManifest containing the name XXXRubette.

6. Put XXXManifest into DDD.

7. Open a Terminal window.

8. Change the directory to DDD by command cd DDD

9. Compile the java file by the command javac -classpath rubato.jar XXXRubette.java

10. Now, you should have these four files in directory DDD: XXXRubette.java, XXXRubette.class, rubato.jar, XXXManifest

11. Create the jar file for this new rubette by command jar cvmf XXXManifest XXXRubette.jar XXXRubette.class

12. When the jar file is generated, drag it to the directory ~/rubato/Plugins (1. cd to your home directory 2. command mkdir rubato 3. command mkdir Plugins

13. Now, you can open rubato.jar and see the new XXXRubette.

Page 20: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• integrating a rubette class into rubato

• documentation about rubato classes

• a simple rubette code

• contact us...

1. Go to• www.rubato.org• go to the rubato composer site• download the javadoc, sources etc.• for rubettes go to the rubettes site

2. Refer to Milmeister‘s book!

Page 21: RUBATO composer Seminar Guerino Mazzola U Minnesota & Zürich mazzola@umn.edu mazzola@umn.edu guerino@mazzola.ch  1996 2001 2006 Guerino

• integrating a rubette class into rubato

• documentation about rubato classes

• a simple rubette code

• contact us...

• PassItOnRubette.java

• PassItOnManifest