Schlagwort-Archiv OMChroma

VonLaura Peter

Whitney Music Box mit OMChroma/OMPrisma in OpenMusic

Die Whitney Music Box ist eine sonifizierte und/oder visuelle Darstellung einer Reihe zusammenhängender Sound-Elemente. Diese Elemente können musikalisch gesehen beispielsweise chromatisch oder harmonisch zusammenhängen. In der visuellen Darstellung wird jedes dieser Elemente mit einem Kreis oder Punkt dargestellt (siehe Abbildung 1). Diese Punkte kreisen je nach eigener zugewiesener Frequenz um einen gemeinsamen Mittelpunkt. Je kleiner die Frequenz, desto kleiner der Radius des Umlaufkreises und desto höher die Umlaufgeschwindigkeit. Jedes Sound-Element repräsentiert in einer harmonischen Reihe Vielfache einer festgelegten Grundfrequenz. Sobald ein Element einen Umlauf um den Mittelpunkt vollbracht hat wird der Sound mit der zu repräsentierenden Frequenz ausgelöst. Durch die mathematische Beziehung zwischen den einzelnen Elementen gibt es Momente während der Ausführung der Whitney Music Box in denen bestimmte Elemente gleichzeitig ausgelöst werden und Phasen, in denen die Elemente konsekutiv wahrgenommen werden können. Zu Anfang und am Ende werden alle Elemente gleichzeitig ausgelöst.

Abbildung 1: Whitney Music Box – visuelle Darstellung

Im Rahmen dieses Projekts wird OMChroma für die Synthese der einzelnen Soundelemente verwendet (siehe Abbildung 2). Die Synthese-Klassen von OMChroma erben von OpenMusic’s class-array Objekt. Die Spalten in dem Array beschreiben die einzelnen Komponenten innerhalb der Synthese. Die Reihen repräsentieren Parameter, die den einzelnen Komponenten lokal oder dem gesamten Prozess global zugewiesen können. Für die Whitney Music Box werden Elemente gebraucht, die die einzelnen Tonhöhenabstufungen und die zeitliche Versetzung der einzelnen Tonhöhenabstufungen umsetzt. Dabei wird eine OMChroma-Matrix als Event angesehen. Ein solches Event repräsentiert eine Tonhöhe und die Sound-Wiederholungen innerhalb der globalen Dauer der Whitney Music Box. Die globale Dauer wird zu Anfang festgelegt und beschreibt zugleich die Umlaufzeit der niedrigsten Frequenz bzw. der zuvor festgelegten Startfrequenz. Jede Matrix repräsentiert eine Frequenz, die ein Vielfaches der Startfrequenz ist. Die Umlaufzeit eines Soundelements ergibt sich durch die Formel:

duration(global) / n

Dabei ist n der Index der einzelnen Soundelemente bzw. Matrizen. Je höher der Index, desto höher ist auch die Frequenz und desto kleiner die Umlaufzeit. Die Wiederholungen der Sound-Elemente, wird durch den Parameter e-dels festgelegt. Jede Komponente einer Matrix erhält ein unterschiedliches Entry-Delay. Diese Entry-Delays stehen in einem regelmäßigen Abstand von duration(global) / n zueinander.

 

Abbildung 2: Anwendung von OMChroma

Ohne Spatialisierung hört sich die Whitney Music Box mit OMChroma wie folgt an:


In Abbildung 3 wird dargestellt, wie die gesammelten Matrizen oder Sound-Events mit der Bibliothek OMPrisma spatialisiert werden. Dabei wurde sich an der visuellen Darstellung der Whitney Music Box orientiert. Dabei sind Sound-Elemente mit niedriger Frequenz weiter vom Mittelpunkt entfernt und Soundelemente mit hoher Frequenz kreisen umso näher um den Mittelpunkt. Mit OMPrisma soll diese Darstellung im Raumklang umgesetzt werden. Das heißt, Sounds mit niedriger Frequenz sollen sich weiter entfernt anhören und Sounds mit hoher Frequenz nah am Hörer. Im OpenMusic-Patch wurden zusätzlich Elemente mit geradem Index weiter nach vorne & weiter nach rechts positioniert und analog Elemente mit ungeradem Index weiter nach links und nach hinten positioniert, um die Sounds gleichmäßig im Raum zu verteilen. Die Klassen von OMPrisma bieten zudem noch Presets für die attenuation-function, air-absorption-function und time-of-flight-function an. Diese wurden eingesetzt, um zusätzlich zu der Positionierung im Raum noch mehr Gefühl von Räumlichkeit zu schaffen.

Abbildung 3: Anwendung von OMPrisma

In Stereo hört sich die Whitney Music Box beispielsweise wie folgt an:


In Abbildung 4 wird dargestellt, wie die gesammelten OMChroma- und OMPrisma-Matrizen über die chroma-prisma-Funktion zusammengelegt. Die Liste aller gesammelten Matrizen werden über einen om-loop zurückgegeben und über die synthesize-Funktion als Sound gerendert (siehe Abbildung 5).

Abbildung 4: chroma-prisma

Abbildung 5: loop und synthesize

Der OpenMusic-Patch sowie Soundbeispiele können unter folgenden Links abgerufen werden:

Projektdateien Stand: 12.10.2023

Github Repository

VonAndres Kaufmes

Räumliche Granularsynthese mit Hilfe von stochastischen Prozessen

Räumliche Granularsynthese mit Hilfe von stochastischen Prozessen

VPRS – Visuelle Programmierung der Raum/Klangsynthese

Prof. Dr. Marlon Schumacher

Abschlussprojekt von Andres Kaufmes 

HfM Karlsruhe – IMWI (Institut für Musikinformatik und Musikwissenschaft)

SoSe 2023

_____________

Für das Abschlussprojekt im Seminar „Visuelle Programmierung der Raum/Klangsynthese“ wurden die Open Music Libraries OMChroma, OMPrisma, Alea und OM-Sox verwendet. OMChroma wurde mit Hilfe der Klasse „FOF-1“ zur Klangsynthese verwendet und OMPrisma zur räumlichen Spatialisierung mit Hilfe der Klassen „Pan“ und „DBAP“. Die Library „Alea“ diente zur zufälligen Steuerung ausgewählter Parameter, mit OM-Sox wurden schließlich Reverb und Delay zum Signal hinzugefügt.

Om-Patch.

Abildung: Open Music Patch

Der Open Music Patch ist wie folgt aufgebaut: Der durch die FOF-1 Klasse synthetisierte Klang wird durch Sox-Lowpass gefiltert und durch Sox-Normalize normalisiert und in eine Soundfile geschrieben. Der Buffer wird nun in die Spatialisierungsklassen (Pan und DBAP) eingespeist, welche dann das nun spatialisierte Signal erneut als Soundfile speichern. Die Parameter des FOF-1 Objekts werden durch ein „BFP-to-Distribution“ Objekt der „Alea“ Library gesteuert, welches die gleiche Hüllkurve wie das FOF-1 Objekt als Input nutzt, um so Parameter für die Klangsynthese zu erstellen. Die ursprüngliche Idee, einen binauralen Renderer zu nutzen ließ sich aufgrund von Kompatiblitäts-Problemen mit der Software leider nicht implementieren, daher wurde mit den „Pan“ und „DBAP“ Objekten gearbeitet. Das Pan Objekt wird ebenfalls durch ein BFP-to-Distribution Objekt der Alea Library gesteuert. Am Ende der Signalkette fügt ein Sox-Process Objekt noch Reverb und Delay zum Audiosignal hinzu.

Klangbeispiel