Synesthesia - Ein neuer Zugang zur Klangsynthese

Synesthesia ist ein Prototyp einer neuartigen grafischen Benutzeroberfläche für einen Softwaresynthesizer. Das Programm entstand im Rahmen meiner Bachelorarbeit. Dabei habe ich mir zum Ziel gesetzt, eine grafische Benutzeroberfläche zu konzipieren und zu implementieren, welche mittels einer einfachen Bedienung einen neuen Zugang zu elektronischer Musik bietet. Es sollten damit sowohl Sequenzer- als auch Synthesizerfunktionen genutzt werden können. Die Oberfläche sollte dabei als Grundlage für ein noch zu entwickelndes Multitouch-Interface dienen.

Das Frontend der Software ist in Java geschrieben und benutzt Java 3D für die Darstellung der 3D-Oberfläche. Als Synthesizer-Backend kam SuperCollider zum Einsatz. Das Frontend schickt bei Interaktion mit der GUI Steuerdaten als OSC-Pakete unter Benutzung der NetUtil-Bibliothek an SuperCollider, welches dann daraus die Klänge erzeugt oder modifiziert. Die Anwendung ist somit ein gutes (und wohl einzigartiges) Beispiel für die Kombination aus Java-3D-Oberfläche, OSC-Messaging und SuperCollider.

Detaillierte Beschreibung der Bedienung

Wie die Oberfläche aufgebaut ist und die Bedienung funktioniert, wird in meiner Kolloquiumspräsentation erklärt. Ersichtlich wird das aber auch im Video:

Video

Ein kurzes Video zeigt die Anwendung in Aktion:

Screenshots

synes-screenshot-1 synes-screenshot-2

Downloads

Synesthesia

Voraussetzung zum Starten von Synesthesia ist, dass eine Java Virtual Machine wie die von Sun installiert ist. Des weiteren muss SuperCollider auf dem System vorhanden sein. Der Download ist hier möglich.
Ansonsten stehen hier die Quellcode-Dateien und die kompilierte Java-Anwendung zum Download bereit:

Bachelorarbeit zur "Entwicklung einer neuartigen graphischen Oberfläche eines Software-Synthesizers"

Meine Bachelorarbeit, die sich mit der computergestützten Klangsynthese sowie der GUI-Entwicklung beschäftigt, und in der auch die Entwicklung des Prototypen beschrieben wird, steht hier zum Download bereit:

Seite zuletzt bearbeitet am 06.05.2010 14:33 Uhr