Jan Buchholz, Jonathan Klein


coJIVE - Ein Softwaresystem für computergestützte Jazzimprovisation

coJIVE ermöglicht es, einem breiten Publikum, gemeinsam aktiv an einer Jazzsession teilzunehmen, ungeachtet ihrer musikalischen Vorbildung


coJIVE - collaborative Jazz Improvisation Environment [link 01]

coJIVE - collaborative Jazz Improvisation Environment

Technik

Technische Beschreibung

"coJIVE" wurde in zwei Teilen entwickelt: Ein Backend implementiert die musikalische Theorie, während ein Frontend die Sessionkontrolle sowie die Interaktion mit den Nutzern übernimmt.

Das Backend wurde als Mac OS Framework in C++ entwickelt. Seine Hauptaufgabe ist die Analyse der Akkordstruktur, mit der für jeden Akkord eine Skala und damit eine Wahrscheinlichkeitsverteilung über die verfügbaren Noten abgeleitet werden kann. Dazu enthält das Backend eine objektorientierte Repräsentation von musikalischen Elementen und Strukturen (Noten, Akkorde, etc.). Zusätzlich implementiert es so genannte Muster (kurze Abfolgen von Akkorden, die in einer gewissen Beziehung zueinander stehen) und Regeln, die zur Erkennung der Muster dienen. Diese Muster und Regeln nutzen auch Jazzmusiker für die Analyse einer Akkordstruktur. Die Akkordstrukturen diverser Jazzlieder wurde in einem speziellen XML- Format gespeichert, das vom Backend gelesen und interpretiert werden kann. Eine Datenbank mit Akkord-Voicings ermöglicht es dem Backend, verschiedene Versionen eines Akkordes zu bestimmen.

Das Frontend wurde in Form einer Mac OS Anwendung in Objective-C mittels Apples Entwicklungs-Framework Cocoa entwickelt. Es ist verantwortlich für den Ablauf der Session, die Darstellung von visuellen Informationen, die Kommunikation mit den Instrumenten über die MIDI-Schnittsstelle und die Audio-Ausgabe. Es nutzt dabei die vom Backend bereitgestellten Informationen (Akkordstruktur, Wahrscheinlichkeitsverteilungen, etc.).

"coJIVE" wurde in einem nutzerbezogenen Prozess entwickelt, in dem mehrere Benutzerstudien durchgeführt wurden. Die so erhaltenen Information sind in die Weiterentwicklung des Systems geflossen.

Hardware / Software

"coJIVE" wurde auf Dual-G5 Power Macs mit 23 Zoll Cinema Displays und Mac OS X entwickelt. Als Instrumente wurden ein MIDI Keyboard und ein Buchla Lightning II System eingesetzt. Die an den Instrumenten befestigten LEDs wurden über Teleo Module via USB gesteuert. Die Audio-Ausgabe erfolgte mittels der Open Source-Software SimpleSynth.

Kontext

Hochschule / Fachbereich

RWTH Aachen
Informatik

URL der Hochschule

» http://www.rwth-aachen.de [link 02]

Betreuer des Projekts

Prof. Dr. Jan Borchers

Kommentar des Betreuers

"coJIVE" ist ein System für das gemeinsame Jazzmusizieren. Es basiert auf einer Idee, die ich selbst das erste Mal 1997 im "WorldBeat"- System in einer äußerst vereinfachten Version umsetzte. Damals konnte ein Spieler zu einem vorgegebenen Bluesstück selbst mit zwei elektronischen Schlägeln auf einem virtuellen Vibraphon improvisieren; seine musikalischen Eingaben wurden dabei auf die aktuelle Harmonie hingebogen. "coJIVE" stellt eine viel umfassendere Arbeit dar, die diese Idee aufgreift und komplett neu umsetzt. Hier können zwei Spieler zu einer Jazzbegleitung spielen, und das System korrigiert nicht nur die melodischen Eingaben jedes Spielers, sondern stimmt auch die Eingaben der beiden Spieler untereinander ab; so bietet es beispielsweise Unterstützung bei der im Jazz so wichtigen Rollenaufteilung zwischen Solist und Begleitung, die sich im Verlauf einer Performance immer wieder ändert. Im Ergebnis stellt "coJIVE" ein System dar, das Menschen eine bislang unmögliche Erfahrung beschert: Sie improvisieren zu Jazz - und obwohl sie ein "echtes" Instrumenten-Spielgefühl haben, entsteht Musik, die anhörbar ist! Mit anderen Worten: Sie improvisieren ohne Angst vor falschen Noten. (Oder ganz kurz gesagt: Lionel Hampton sein in drei Minuten).

Was ist an diesem Projekt so besonders? Zunächst die oben bereits erwähnte Gelegenheit, Menschen eine ganz neue Erfahrung zu vermitteln. Zweitens die äußerst sorgfältige Linie, mit der dieses Projekt die Balance zwischen Computerkontrolle und menschlicher Initiative hält: Der Mensch lenkt, der Computer unterstützt. Bei allzuvielen anderen modernen Multimediaprojekten übernimmt der Computer selbstherrlich die Kontrolle, generiert, agiert und läßt den Menschen dabei als Startknopfdrücker passiv stehen. Das ist eine Form von Kunst mit dem Computer; mir gefällt die menschenzentriertere Sicht von "coJIVE" besser.

Drittens ist der erstaunliche Tiefgang dieses Systems zu bewundern: Wo "WorldBeat" lediglich ein paar feste Akkord-zu-Noten-Abbildungen enthielt, setzt "coJIVE" eine komplette Jazztheorie in seiner Modellierung um. Hier wurden nicht ein paar oberflächliche musikalische Tricks implementiert, sondern die verbreitetste Jazz- Grundtheorie der Berklee School Of Jazz in ein Improvisation Guidance System umgesetzt. Aber nicht nur die harmonische Dimension, sondern auch die melodische (spezielle Notenfolgen aus der Jazzlehre) sowie rhythmische Besonderheiten und viele weitere Aspekte dieser Musikrichtung wurden im Design berücksichtigt. Dies führte zu einem System, das nicht nur dem amüsierten Laien, sondern sogar einem Musiker mit Jazzerfahrung noch etwas Neues bieten kann. Ich erlebte dies selbst, als ich das System bei einer der Vorführungen ausprobierte: Auf einmal durch behutsame Unterstützung neue und bessere 4-Note-Voicings zur Melodie zu greifen, war auch für mich als angehender Jazzpianist ein tolles Erlebnis.

Schließlich wurde auch bei der technischen Umsetzung der Benutzerschnittstelle sehr gut gearbeitet und das System beispielsweise neben dem Graphical User Interface mit zusätzlichen, physikalischen Anzeigen (wie einer Solo/Comping-LED) für die improvisierenden Jazzer ausgestattet. Ein weiteres Indiz für eine task- und benutzerzentrierte, sinnvolle Multimediaarbeit. Dies wurde auch durch die Auszeichnung von "coJIVE" mit dem "Europrix Top Talent Award 2005 Quality Seal" bestätigt.

Seminar / Kurzbeschreibung

Das System entstand in einem Rahmen, der für mich selbst als Experiment zählte - und erfreulicherweise überaus erfolgreich war: Zwei Informatikstudenten, einer mit Expertise im User Interface Design, einer mit professionellen Kenntnissen in der Jazzlehre, fanden sich für dieses Projekt als Diplomarbeits-Team zusammen.  Ueber insgesamt neun Monate befragten, entwarfen, implementierten, testeten, verwarfen und reimplementierten die beiden das "coJIVE- System" in einem Prozeß, der als vorbildlich gelten darf: In gleich mehreren interaktiven Zyklen von Entwurf, Implementierung und Evaluierung mit Benutzern stellte das Team immer wieder sicher, dass sie sich weiterhin auf dem richtigen Weg befanden, was die Funktionalität und Benutzerschnittstelle von coJIVE anging. Es freute mich, daß die beiden diese Designprinzipien, die in unseren Vorlesungen vermittelt werden, so gut und erfolgreich umsetzten - und das Endprodukt profitierte davon ganz eindeutig, wie man in Herrn Buchholz' Ausarbeitung lesen kann, die die einzelnen Prototypen sehr klar dokumentiert.

Zuordnung Forschungsbereich

"coJIVE" ist ein interaktives System, das in der Zukunft als Exponat oder Übungsstation Einsatz finden könnte. Hauptforschungsbereich ist die Mensch-Maschine-Interaktion, aber mit einem klaren Fokus auf Interaktion mit Musik, weshalb Berührungspunkte zur Computermusik bestehen. Daneben ist die didaktische Komponente des Systems hervorzuheben: Durch das Spiel lernt der Benutzer etwas über Jazzmusik.

  • › digital sparks 2006 [link 03]

» http://media.informa…aachen.de/cojive.html [link 04]

  • › A video describing coJIVE's features and mode of operation. [17 MB ] [link 05]