Steuerungstasten

nächste Folie (auch Enter oder Spacebar).
vorherige Folie
 d  schaltet das Zeichnen auf Folien ein/aus
 p  wechselt zwischen Druck- und Präsentationsansicht
CTRL  +  vergrößert die Folien
CTRL  -  verkleinert die Folien
CTRL  0  setzt die Größenänderung zurück

Das Weiterschalten der Folien kann ebenfalls durch das Klicken auf den rechten bzw. linken Folienrand erfolgen.

Notation

Typ Schriftart Beispiele
Variablen (Skalare) kursiv $a, b, x, y$
Funktionen aufrecht $\mathrm{f}, \mathrm{g}(x), \mathrm{max}(x), \mathrm{h}[n]$
Vektoren fett, Elemente zeilenweise $\mathbf{a}, \mathbf{b}= \begin{pmatrix}x\\y\end{pmatrix} = (x, y)^\top,$ $\mathbf{B}=(x, y, z)^\top$
Matrizen Schreibmaschine $\mathtt{A}, \mathtt{B}= \begin{bmatrix}a & b\\c & d\end{bmatrix}$
Mengen kalligrafisch $\mathcal{A}, B=\{a, b\}, b \in \mathcal{B}$
Zahlenbereiche, Koordinatenräume doppelt gestrichen $\mathbb{N}, \mathbb{Z}, \mathbb{R}^2, \mathbb{R}^3$

Echo

  • Ein einfaches Echo kann durch gewichtet Addition des zeitlich verzögerten Originalsignals realisiert werden
    $\mathrm{y}[n] = \mathrm{x}[n] + A \, \mathrm{x}[n - d]$
  • Natürlich können auch mehrere Echos verwendet werden
    $\mathrm{y}[n] = \mathrm{x}[n] + A_1 \, \mathrm{x}[n - d_1] + A_2 \, \mathrm{x}[n - d_2] + A_3 \, \mathrm{x}[n - d_3] + \dots$
  • Dies könnte auch mit einer Faltung realisiert werden:
    $\mathrm{y}[n] = \mathrm{x}[n] \ast \mathrm{h}[n]$
    mit $\mathrm{h}[n] = \delta[n] + A_1 \, \delta[n - d_1] + A_2 \, \delta[n - d_2] + A_3 \, \delta[n - d_3] + \dots$
  • echo
    $\mathrm{h}[n]$
    $d_1$
    $d_2$
    $d_3$
    $n$
    Ein Nachteil der Faltung ist jedoch, dass bei längeren Verzögerungen die Faltungsberechnung recht uneffizient ist, da sehr viele Nullen aufaddiert werden. Daher ist die direkte Implementierung in der Regel schneller.

Chorus

  • Beim Chorus wird das Signal ebenfalls mit verzögerten Kopien kombiniert, allerdings sind die Verzögerungszeiten im Vergleich zum Echo geringer (ca. 10 bis 40 ms)
  • Außerdem wird die Verzögerungszeit mit einer Sinusschwingung moduliert
    $\mathrm{y}[n] = \mathrm{x}[n] + A_1 \, \mathrm{x}[n - (d_1 + e_1 \sin(2 \pi \,f_1)) ]$
  • Parameter: Verzögerungszeit $d_1$, Modulationstiefe $e_1$ und Modulationsfrequenz $f_1$
  • Der Klang wird voller und lebendiger
  • Beispiel: Original
    Mit Chorus: $d_1 = 40\,\mbox{ms}$, $e_1 = 2 \, \mbox{ms}$, $f_1 = 0,5 \, \mbox{Hz}$

Filter mit Rückkopplung

Filter mit Rückkopplung

  • Die bisher betrachteten Filter konnten mittels Faltung implementiert werden (wenn auch uneffizient). Der Ausgabefunktion $\mathrm{y}[n]$ war nur abhängig der Eingabefunktion $\mathrm{x}[n]$ und der Impulsantwort $\mathrm{h}[n]$
  • Nun wird zusätzlich eine Rückkopplung der bereits berechneten Ausgabewerte erlaubt, d.h. $\mathrm{y}[n]$ kann auch eine Funktion von $\mathrm{y}[n-1], \mathrm{y}[n-2], \mathrm{y}[n-3], \dots$ sein

Filter ohne Rückkopplung

  • Ohne Rückkopplung:
    $\mathrm{y}[n] = a_0 \, \mathrm{x}[n] \,\,+\,\, a_1 \, \mathrm{x}[n-1] \,\,+\,\, a_2 \, \mathrm{x}[n-2] \,\,+\,\, a_3 \, \mathrm{x}[n-3] \,\,+\,\, \dots$
fir_block
$\mathrm{x}[n]$
$\mathrm{y}[n]$
$a_n$
$a_{n-1}$
$a_2$
$a_1$
$a_0$

Filter mit Rückkopplung

  • Mit Rückkopplung:
    $\begin{array}{rrrrr} \mathrm{y}[n] = a_0 \, \mathrm{x}[n] &+\,\, a_1 \, \mathrm{x}[n-1] &+\,\, a_2 \, \mathrm{x}[n-2] &+\,\, a_3 \, \mathrm{x}[n-3] &+\,\, \dots \\ &+\,\, b_1 \, \mathrm{y}[n-1] &+\,\, b_2 \, \mathrm{y}[n-2] &+\,\, b_3 \, \mathrm{y}[n-3] &+\,\, \dots \end{array}$
iir_block
$\mathrm{x}[n]$
$\mathrm{y}[n]$
$a_n$
$a_{n-1}$
$a_2$
$a_1$
$a_0$
$b_n$
$b_{n-1}$
$b_2$
$b_1$

Filter mit Rückkopplung

  • Betrachten wir die Impulsantwort eines Filters mit Rückkopplung mit $a_0 = 1$ und $b_{100} = 0.5$ und alle anderen Koeffizenten gleich null
    irst_iir
    $\mathrm{h}[n]$
    $n$
  • Diese Impulsantwort sieht so ähnlich aus, wie die Impulsantwort des mehrfachen Echos, welche wir zuvor nur durch eine sehr lange Faltung generieren konnten. Mit jedem weiteren Echo wurde die Faltung länger und entsprechend auch die Rechenzeit
  • Beim Filter mit Rückkopplung werden viele Echos erzeugt, wobei nur sehr wenige Koeffizienten benötigt werden, was zu einer sehr geringen Rechenzeit führt
  • Die Echos werden immer kleiner, aber im Prinzip hat die Impulsantwort eine unendliche Länge. Daher werden Filter mit Rückkopplung auch IIR-Filter (engl. Infinite Impuls Response) genannt und Filter ohne Rückkopplung FIR-Filter (engl. Finite Impuls Response)

Vergleich FIR- und IIR-Filter

FIR-Filter IIR-Filter
Mehr Koeffizienten Weniger Koeffizienten
Niedigere Geschwindigkeit Höhere Geschwindigkeit
Höhere Speicherbedarf Niedigerer Speicherbedarf
Immer stabil Möglicherweise instabil
Rundungsfehler unproblematisch Rundungsfehler habe wegen Rückkopplung großen Effekt
Lineare Phase oder Nullphase leicht zu realisieren Phase wird nicht-linear verzerrt

Hall (Reverb)

  • Hall entsteht durch Reflektion der Schallquelle an den Wänden eines Raumes
  • Je nach Größe des Raums und Absorptionseigenschaften der Wände entstehen unterschiedlich Impulsantworten
  • Typisch ist zunächst eine Verzögerung bis die erste Reflektion eintritt
  • Anschließend folgt der diffuse Hallanteil
reverb
$\mathrm{h}[n]$
$n$
Originalimpuls
erste Reflektion
diffuser Hallanteil

Hall (Reverb)

reverb_schema
$t_1$
$t_{2a}$
$t_{2b}$
$t_{2c}$
$t_{2d}$
$t_{2e}$
$t_{2f}$
Tiefpass
Dry
Reverb
$\mathrm{x}[n]$
$\mathrm{y}[n]$
Feedback
Feedback
Quelle: basierend auf P. Ackermann, Computer und Musik: Eine Einführung in die digitale Klang- und Musikverarbeitung, Springer, 1991, Seite 137, Bild 6.18

Nicht-lineare Filter

Nicht-lineare Filter

  • Die bisherigen Filter waren alle durch ihre Impulsantwort beschreibbar, d.h. sie wurden durch LZI-Systeme realisiert
  • Nun sollen Beispiele für nicht-lineare Systeme betrachtet werden

Overdrive

  • Beim Overdrive werden niedige Amplituden linear verstärkt, große Ampliduden werden auf 1 begrenzt, dazwischen gibt es einen weichen Übergang
    $\mathrm{y}[n] = \begin{cases} 2 \, \mathrm{x}[n] & \,\,:\,\, 0 \le \mathrm{x}[n] < 1/3 \\ \frac{3-(2-3 \, \mathrm{x}[n])^2}{3} & \,\,:\,\, 1/3 \le \mathrm{x}[n] < 2/3 \\ 1.0 & \,\,:\,\, 2/3 \le \mathrm{x}[n] \\ \end{cases}$
  • Häufig wird das Originalsignal $\mathrm{x}_{\mathrm{in}}[n]$ noch mit einem Gain-Faktor $g$ linear skaliert bevor der Overdrive angewendet wird:
    $\mathrm{x}[n] = g \, \mathrm{x}_{\mathrm{in}}[n] $
Quelle: basierend auf U. Zölzer, DAFX: Digital Audio Effects, Wiley, 2011, 2nd Edition

Verzerrung (Distortion)

  • Bei einem Verzerrer erfährt das Signal eine nicht-lineare Verstärkung
  • Niedigere Ampliduten werden mehr verstärkt als große Ampliduten, z.B. durch:
    $\mathrm{y}[n] = \begin{cases} \frac{\mathrm{x}[n]}{|\mathrm{x}[n]|} \left( 1 - \exp\left(g \, |\mathrm{x}[n]| \right) \right) & \,\,:\,\, \mathrm{x}[n] \ne 0 \\ 0 & \,\,:\,\, \mathrm{x}[n] = 0 \end{cases}$
    wobei der Effekt ausgeprägter wird, je höher der Gain-Faktor $g$ gewählt wird

Gibt es Fragen?

questions

Anregungen oder Verbesserungsvorschläge können auch gerne per E-mail an mich gesendet werden: Kontakt


Weitere Vorlesungsfolien