Skip to content

News Arts and Science Teaching Media Library Services IEM - intern Contact
  You are not logged in Link icon Log in
You are here: Home » Kunst & Forschung » Signalverarbeitung » Audiomorphing » Audiomorphing

Audiomorphing

Michael Strauß

Einleitung

Audio-Morphing ist eine Methode, einen kontinuierlichen Übergang zwischen zwei Klängen zu schaffen, wobei auf halbem Wege nicht die Summe dieser Klänge, sondern ein neuer Zwischenklang entsteht, der charakteristische Elemente beider Sounds beinhaltet.
Zur Veranschaulichung eignet sich ein Vergleich mit der Bildverarbeitung. Dort ist Image-Morphing spätestens seit der Verwendung in
Pop-Musikvideos ein Begriff.

Beispiele für Image-Morphing:
Video1     Video2       

Audio-Morphing mittels Additiver Synthese in MATLAB

Primäres Ziel:
Ein kontinuierlicher Übergang zwischen 2 Klängen ist zu schaffen, wobei auf halbem Wege nicht die Summe beider Klänge, sondern ein neuer Zwischenklang entsteht, der charakteristische Elemente beider Sounds beinhaltet.
Erweitertes Ziel:
Der Morph soll zeitverzerrt spielbar sein; man soll beliebig zwischen den beiden Klängen, bezüglich ihrer Grundfrequenz und ihrer Formant-Struktur, hin- und her-blenden können; die Grunfrequenzen beider Klänge sollen verstimmbar sein; ein eventuelles Vibrato eines Klanges soll regulierbar sein. Die Berechnungszeit soll das 10- bis 20-fache der Dauer des Morphs nicht überschreiten.
Voraussetzungen:
Die Informationen über Amplitude, Frequenz und Phase jedes Teiltones, zu äquidistanten Zeitpunkten (Hoppsize ca. 10ms) analysiert, stehen für beide Klänge zur Verfügung (ADDAN-Files). Die zeitliche Änderung dieser Werte muß in Relation zur Abtastungs klein sein (d.h. die Modulationsfrequenzen der Partialamplituden- oder frequenzen sollen (10 Hz sein).
Implementation:
Graphische Benutzeroberfläche und Berechnung des Morphs in MATLAB.
Das Projekt lässt sich in 3 grosse Bereiche unterteilen:

1.)    Aufbereitung und Interpretation der Analyse-Daten von z.B. ADDAN-Programm

Einlesen der ADDAN-Files in getrennte Arrays für Amplitude und Frequenz.
Das Format hat folgende Form:

Zu äquidistanten Zeitpunkten wurde eine Fourieranalyse des Klangs durchgeführt.
Diese Daten sind in einem Block zu 4 Spalten gegliedert. Am Beginn jedes Blocks, steht ein zweispaltiger Header.

HEADER:
Spalte1: Anzahl der zu diesem Zeitpunkt erfaßten Partialtöne
Spalte2: Zeitl. Abstand zum Beginn der Analyse in Sekunden. Aus zwei aufeinanderfolgenden Werten
         errechnet sich die Hoppsize.

BLOCK:
Spalte1: Partialtonnummer (z.B. #1 ist der Grundton, usw.)
Spalte2: Frequenz des Partialtons in Hz
Spalte3: Amplitude des Partialtons
Spalte4: Phasenlage des Partialtons in rad


93    0.010000
2    313.983185    0.0000000000    0.118013
3    750.146301    0.0000008939    -2.143736
5    833.472961    0.0000000000    1.247839
6    1556.562012    0.0000008095    -1.178104
.............    ............    .........
.............    ............    .........
123    20366.035156    0.0000000000    0.867947
125    20676.453125    0.0000000000    1.373021
129    21238.779297    0.0000000000    -1.739129
113    0.020000
1    293.758972    0.0000000000    0.643329
2    313.983185    0.0000009247    0.996602
3    750.146301    0.0000000000    1.007047
4    917.409790    0.0000000000    1.030398
5    833.472961    0.0000009433    -2.932181
6    984.734131    0.0000008421    2.553927
7    1447.274292    0.0000000000    1.425474
.............    ............    .........
.............    ............    .........
.............    ............    .........

2.)    GUI = Graphische Oberfläche zur Bedienung des Programms

Je ein Mehrfach-Diagramm (verschiedene Farben) für folgende Verläufe - per Maus editierbar:
-    zeitlich auf Add.Synth.1 normierte Time-Stretch-Table für für ADDAN File 1+2
-    zeitlich auf Morph-Zeit normierte Frequenz-Morph-Table
     zeitlich auf Morph-Zeit normierte Amplituden-Morph-Table
-    zeitlich auf Morph-Zeit normierte Pitch-Tune-Table für für ADDAN File 1+2
-    zeitlich auf Morph-Zeit normierte Gain-Table für ADDAN File 1+2
-    zeitlich auf Morph-Zeit normierte Amplituden-Auto-Vibrato-Intensitäts-Table für ADDAN File 1+2
     zeitlich auf Morph-Zeit normierte Amplituden-Kreuz-Vibrato-Intensitäts-Table für für ADDAN File 1+2
-    zeitlich auf Morph-Zeit normierte Frequenz-Auto-Vibrato-Intensitäts-Table für ADDAN File 1+2
    zeitlich auf Morph-Zeit normierte Frequenz-Kreuz-Vibrato-Intensitäts-Table für für ADDAN File 1+2

3.)    Klang-Generierung  =  Morphing + Additive Synthese

Die Analysedaten eines Klanges bestehen aus einem Ensemble von je einemPartial-Amplituden-Vektor und einemPartial-Frequenz-Vektor pro Abtast-Periode ( z.B. 10 ms ). Die Vektorlänge enspricht der Anzahl der Teiltöne.
Das Morphing von 2 Klängen funktioniert wie folgt:
Zu einem bestimmten Zeitpunkt werden die Frequenz- undAmplituden-Vektoren von einem Klang A und einem Klang B mit den aus 2 Tabellen abgelesenem Frequenz-Morph-Faktor (FMFaktor) bzw. den Amplituden-Morph-Faktor (AMFaktor) zu jenem Zeitpunkt, und gewichtet die Partial-Frequenzen von A mit dem FMFaktor, diePartial-Frequenzen von B mit (1 - FMFaktor), die Partial-Amplitude von A mit dem AMFaktor, die Partial-Amplitude von B mit (1 - AMFaktor), und addiert die Partial-Frequenz_Paare bzw. die Partial-Amplituden-Paare von A und B. Zusätzlich werden von beiden Klängen, in einem bestimmten Zeit-Ausschnitt, noch die Mittelwerte ihrer Partial-Amplitudenund -Frequenzen berechnet. Damit kann man das Vibrato(Tremolo) eines Klanges zusätzlich verstärken oder abschwächen. Die Tonhöhe lässt sich transponieren, indem man die Partial-Frequenzen der Quell-Klänge mit einem Verstimmungs-Faktor multipliziert.

Die Additive Synthese wurde mittels eines Simulink-Modells realisiert.

model

Die vorberechneten Amplituden- und Frequenzverläufe werden zwischen 2 Abtast-Perioden ( z.B. 10 ms ) noch 441 mal linear interpoliert ( SampleRate = 44100 Hz ) und bilden dann die Steuerdaten (atemp, ftemp) für die Oszillatoren. Für die Additive Synthese gilt:
 
Da sich die Einschwingvorgänge am Anfang eines Instrumental-Tones mittels Additiver Synthese nur mittelmäßig gut realisieren lassen, wird vom Original-Soundfile auf die Additive Synthese übergeblendet.

Weitere Infos unter: http://iem.kug.ac.at/~strauss/audiomorphing/

© 2000, zuletzt geändert am 15. Jänner 2003.


Last modified 10.04.2003