dsv1kap6_audioeffekte_folien

Werbung
Audioeffekte
DSV 1, 2005/01, Rur, Audioeffekte, 1
Equalizer
http://www.harmony-central.com/Effects/Articles/Equalization/
Echofilter
http://www.harmony-central.com/Effects/Articles/Delay/
Flanging
http://www.harmony-central.com/Effects/Articles/Flanging/
http://www.harmony-central.com/Effects/Articles/Phase_Shifting/
Chor
http://www.harmony-central.com/Effects/Articles/Chorus/
Hall (Reverberation)
http://www.harmony-central.com/Effects/Articles/Reverb/
Synthetische Instrumentenklänge
http://www.harmony-central.com/Synth/Articles/Physical_Modeling/
Kompression / Expansion
http://www.harmony-central.com/Effects/Articles/Compression/
http://www.harmony-central.com/Effects/Articles/Expansion/
S.J. Orfanidis, „Introduction to Signal Processing“, chap. 8.2 & 11.4, Prentice Hall, 1996.
F. Pieper, „das Effekte Praxisbuch“, GC Carstensen, 2004.
Equalizer
DSV 1, 2005/01, Rur, Audioeffekte, 2
Ziele
Korrektur „schlechter“ Frequenzgänge
ungünstige Raumakustik, Audiosystem betont „gewisse Frequenzen“
aber auch Soundgestaltung
Mischen von „Einzelspuren“
Typen
Klangregler
± 12-15 dB boost / cut von Bässen, mittlere Frequenzen und Höhen
grafische Equalizer
± 12-15 dB boost / cut einzelner oder mehrerer Frequenzbänder
mit parallelen Schiebereglern einstellbar, grafische Anzeige!
Mittenfrequenzen ISO-normiert im Abstand 1/3, 2/3, 1 und 2 Oktaven
äquidistant auf logarithmischer Frequenzskala!
z.B. 5-Band, 2-Oktav-EQ: 50 Hz, 200 Hz, 800 Hz, 3.2 kHz, 12.8 kHz
parametrische Equalizer
neben boost / cut auch Mittenfrequenz und Bandbreite frei wählbar
Einsatz u.a. für Absenken von Resonanzen, Stimme hervorheben
Grafischer Equalizer
Demo equalizer.m equalsim.mdl
Verstärker
DSV 1, 2005/01, Rur, Audioeffekte, 3
Filterbank => diverse Varianten
BP
25 Hz
BP
31 Hz
.
.
.
BP
.
.
.
+
Level
HP
TP
16 kHz
BP
20 kHz
Probleme u.a.
Beeinflussung benachbarter Filter
Realisierungsaufwand (schmale BP mit tiefer Mittenfrequenz!)
Symmetrie zwischen boost und cut
Graphischer Equalizer
DSV 1, 2005/01, Rur, Audioeffekte, 4
Ziele: Frequenzgang kompensieren, Vorder-/Hintergrund im recording
N parallele BP-Filter (z.B. 1. Ordnung)
vor Summation jeder Ausgang separat verstärkt / abgeschwächt (± 6-12 dB)
Mittenfrequenzen sind äquidistant auf logarithmischer Frequenzskala
IH1(f)I
IH15(f)I
„nur“ 6 dB
Graphischer Equalizer
DSV 1, 2005/01, Rur, Audioeffekte, 5
„weitgehend“
lineare Phase
Zeitverzögerung
„fast“ Null
„kleiner“ Rippel
Parametrischer Equalizer: Prototypen
DSV 1, 2005/01, Rur, Audioeffekte, 6
Bandsperre: Notch-Filter
s Ω
HBS (s)  2
s  α  s  Ω 02
2
2
0
IHBS(s)I
1
GB
αs
s 2  α  s  Ω 02
GB
1 G
2
B
α
Ω
0  1   2
Bandpass: Peak-Filter
HBP (s) 
ΔΩ  Ω 2  Ω1 
IHBP(s)I
1
GB
ΔΩ  Ω 2  Ω1 
1  GB2
GB
0  1   2
Equalizer: Linearkombination
boost:
cut:
Gref < GB < G
G < GB < Gref
HEQ(s) = Gref·HBS(s) + G·HBP(s)
typisch (Kaskade): Gref = 1
α
Ω
Parametrischer Equalizer: z-UTF
Demo paramequalizer.m
Bilineare Trafo
DSV 1, 2005/01, Rur, Audioeffekte, 7
=> HEQ(z) = Gref·HBS(z) + G·HBP(z)
z-UTF
Gref  Gβ
G  cos(ω 0 )
G  Gβ
) - 2  ( ref
)  z 1  ( ref
)  z 2
1 β
1 β
1 β
HEQ (z) 
cos(ω 0 )
1 β
1 2(
)  z 1  (
)  z 2
1 β
1 β
(
mit
f
ω0  π  0
fs /2
f
ω  π 
f s /2
2
GB2  Gref
Δω

tan(
)
2
2
2
G  GB
β
Amplitudengang
IHEQ(f)I
G
Δf
GB
boost
1
cut
symmetrisch zu boost
f0
fs/2
f
Parametrischer Equalizer: Beispiel
DSV 1, 2005/01, Rur, Audioeffekte, 8
Design-Parameter
fs = 48 kHz, f0 = 1 kHz, Δf = 1 kHz, G = 6 dB, GB = 3 dB, Gref = 0 dB
Filterparameter
b = [1.04413353409205 -1.89496121398821 0.86717922551259]
a = [1.00000000000000 -1.89496121398821 0.91131275960464]
Amplitudengang
G
GB
Δf
f0
Gref
Parametrischer Equalizer: Klangregler
DSV 1, 2005/01, Rur, Audioeffekte, 9
Bass-Regler
Parametrischer Equalizer mit f0 = 0 => cos(ω0) = 1
HEQ(z) hat Faktor 1-z-1 im Nenner und im Zähler => HTP(z) hat 1. Ordnung
Gref  Gβ
G  Gβ
) - ( ref
)  z 1
1 β
1 β
HTP (z) 
1 β
1 (
)  z 1
1 β
(
β
2
GB2  Gref
ω DB

tan(
)
2
2
2
G  GB
Höhen-Regler
Parametrischer Equalizer mit f0 = fs/2 => cos(ω0) = -1
HEQ(z) hat Faktor 1+z-1 im Nenner und im Zähler => HHP(z) hat 1. Ordnung
Gref  Gβ
G  Gβ
)  ( ref
)  z 1
1 β
1 β
HHP (z) 
1 β
1 (
)  z 1
1 β
(
β
2
GB2  G ref
ω DB

cot(
)
2
2
2
G  GB
Klangregler: Beispiel
DSV 1, 2005/01, Rur, Audioeffekte, 10
Bassregler
fs = 48 kHz, Δf = 400 Hz, G = -12, 0, 12 dB, GB = G/2 dB, Gref = 0 dB
Höhenregler
fs = 48 kHz, Δf = 4000 Hz, G = -12, 0, 12 dB, GB = G/2 dB, Gref = 0 dB
G boost
GB boost
GB cut
G cut
Δf Bass
Δf Höhen
Echofilter
Demo fircomb.m
DSV 1, 2005/01, Rur, Audioeffekte, 11
x[n]
y[n] = x[n]+bD·x[n-D]
z-D
bD
Grundbaustein für komplexere Audioeffekte
Echo hat roundtrip-Delay D·Ts und Dämpfung bD
Echos „auflösbar“, wenn D·Ts > 50-70 ms
FIR-Kamm-Filter => Kamm-Amplitudengang
h[n]
1+bD
1
bD
n
D
1-bD
fs/D
fs/2
Flanging
Demo flanging.m
DSV 1, 2005/01, Rur, Audioeffekte, 12
Veränderung Tonlage, wenn Tape-Rand (Flange) gebremst wird
Effekt kann mit Delay-Line variabler Länge modelliert werden
Tonlagen-Modulation wegen variabler Lesegeschwindigkeit
zeitvariantes FIR-Kamm-Filter
y[n] = x[n] + b·x[n-D[n]]
D[n] = floor{Dmin+ 0.5·(Dmax-Dmin)·(1+sin(2πfDnTs))}
Varianten: Interpolation statt floor{}, Dreieck statt sin(), Feedback
feedback
x[n]
y[n]
D[n]
Dmax
z-D[n]
b
Dmin
Dmax< 10 ms
fD< 3 Hz
n·Ts
Flanging ist eine spezielle Form des Phasing (beliebige “notches”)
Chor
Demo chor.m
DSV 1, 2005/01, Rur, Audioeffekte, 13
Mitglieder nicht ganz synchron, leicht verschiedene Tonlage
„vollere“ Stimme
Modellierung mit mehreren Delay-Lines variabler Länge
Delays grösser als beim Flanger, typisch [20…30 ms]
Differenzengleichung
y[n] = x[n] + bD1·x[n-D1[n]] + bD2·x[n-D2[n]]
D1[n] = floor{Dmin+ 0.5·(Dmax-Dmin)·(1+sin(2πfDnTs))}, fD < 3 Hz
D2[n] = floor{Dmin+ 0.5·(Dmax-Dmin)·(1+sin(2πfDnTs+φ))}
Varianten: bDk zeitvariant, rand(), Dreieck oder log() statt sin()
x[n]
y[n]
b1
z-D1[n]
b2
z-D2[n]
Hall (Reverberation)
DSV 1, 2005/01, Rur, Audioeffekte, 14
„Reverberation“ bedeutet Widerhall, Nachhall
Resultat der Schallreflexionen in einem Raum
Serie von verzögerten, gedämpften Schallwellen
Häufigkeitsrate der Reflexionen ändert mit der Zeit
„einzelne“ frühe Reflexionen (Raumbegrenzung)
viele, „zufällige“, abfallende späte/diffuse Reflexionen
Diffuser Nachhall gibt Raumempfinden
behält Schallenergie im Raum (lauter sprechen im Freien)
verteilt Schallenergie (man hört auch entfernte Instrumente,
Geige klingt nicht in alle Richtungen gleich!)
Nachhallzeit
frühe Reflexionen
Ih[n]I
späte Reflexionen
Zeit bis Ih[n]I 60dB abgeklungen
Konzerthallen: 1.5-2s
abhängig von Raumgrösse
nTs
und -Absorption (Materialien)
Schröder‘s Nachhall-Prozessor (I)
DSV 1, 2005/01, Rur, Audioeffekte, 15
H1(z)
H2(z)
x[n]
H5(z)
H6(z)
y[n]
H3(z)
H4(z)
IIR-Kamm-Filter H1(z) bis H4(z) => Raumbegrenzung
b0
x[n]
h[n] / b0
y[n]
1
aD
z-D
y[n]=b0·x[n]+aD·y[n-D]
aD
a2D
n
D
2·D
Schröder‘s Nachhall-Prozessor (II)
Demo hall.m
DSV 1, 2005/01, Rur, Audioeffekte, 16
IH(f)I / b0
1/(1-aD)
H(z) = b0 / (1-aD·z-D)
1/(1+aD)
n
fs/D
Allpässe H5(z) und H6(z)
-aD
fs
=> IH(f)I=1, Kaskadierung möglich
=> für diffusen Nachhall verantwortlich
x[n]
y[n]
aD
z-D
Modernere Algorithmen
y[n] = -aD·x[n]+x[n-D]+aD·y[n-D])
H(z) = (-aD+z-D) / (1-aD·z-D)
=> frühe Reflexionen (FIR-Filter)
=> spätere Reflexionen (IIR-Filter)
=> Tiefpass (Absorptionen)
Synthetische Instrumentenklänge
DSV 1, 2005/01, Rur, Audioeffekte, 17
Direkte Instrumentenklang-Synthese
Frequenz-Synthese/Modulation gemäss Spektralanalyse
beschränkte Qualität, kein Bezug zur eigentlichen Klanggeneration
Sampling/wavetable-Synthese von Klangmustern
kein Bezug zur eigentlichen Klanggeneration
sehr gute Qualität, speicherintensiv, „beschränkte“ Spielbarkeit
Indirekte Instrumentenklang-Synthese
Simulation des physikalischen Klang-Prozesses
Kontrolle der Klanggeneration (Qualität)
vielfältige „Spielbarkeit“, allerdings sehr viele Inputs erforderlich
virtuelles Instrument reagiert so wie es gespielt wird (Erfahrung!)
rechenintensiv!
für jedes Instrument braucht es ein anderes Modell
Waveguide-Gitarre
DSV 1, 2005/01, Rur, Audioeffekte, 18
Anfangswerte (Vorwärtswelle)
x[n]
x[n-A]
x[n-P]
-0.95…1 (Reflexion, Verlust)
Ausgang y[n]
Reflexion: -1
Tiefpassfilter
0.5
Anfangswerte (Rückwärtswelle)
x[n-D]
„Steg“
„Anschlagpunkt“
„Pickup“
„Griff“
Waveguide-Gitarre
Demo saite.m und akkord.m
DSV 1, 2005/01, Rur, Audioeffekte, 19
2 Delay-Lines zur Simulation der Vorwärts- und Rückwärts-Welle
Roundtrip bzw. Grundperiode T0 ≈ D·Ts bzw. D ≈ round(fs/f0)
“dreieckförmige” Anregung der Höhe M
je näher der Anschlagpunkt beim Steg, desto mehr Oberwellen
Reflexionskoeffizienten = -1 beim Steg und beim Griff
Summe von Vor- und Rückwärtswelle an Saitenenden = 0
Energieabgabe der Saite mit L = 0.995…1 modelliert
zirkulierende Welle wird bei jedem Durchgang mit TP gefiltert
Differenzengleichung: x[n] = 0.5·(x[n-D]+x[n-D-1])
höhere Frequenzkomponenten klingen schneller ab als tiefe
Ausgangssignal mit einem oder mehreren Pickups abgenommen
Differenzengleichung: y[n] = x[n-P]+x[n-D+P]
Input Parameter: D bzw. f0, A, M, L, P
einige wichtig für Spielbarkeit, z.B. A klein, metallischer Ton
Kompression
DSV 1, 2005/01, Rur, Audioeffekte, 20
x[n]
y[n]
g[n]
Level
Detector
c[n]
Gain
Control
Output Level [dB]
Reduktion Dynamikbereich (Abschwächung laute Töne)
Schutz vor Verzerrung, leise Töne versinken nicht im Rauschen
eingesetzt bei Aufnahme, Rauschverminderung, Live-Performance
Prinzip: variable Verstärkung, durch Input-Level gesteuert
keine Kompression
2:1 Kompression
4:1 Kompression
10:1 Kompression
(Limiting)
y0
Schwelle x0
Input Level [dB]
Input-Output-Verhalten (x konstant oder Kurzzeit-Mittelwert)
y = y0·(x/x0)ρ => 20·log10(y/y0) = ρ·20·log10(x/x0)
wobei ρ<1 und x>x0
2:1-Kompression (ρ=0.5) heisst
Input muss um 2 dB erhöht werden, um Output 1 dB zu erhöhen
Korrektur Output Level oft mit Verstärker
Kompression
DSV 1, 2005/01, Rur, Audioeffekte, 21
Level-Detektor macht normalerweise eine Mittelung über die Zeit
Kontrollsignal c[n] ~ Ix[n]I, E[Ix[n]I] oder E[(x[n])2]
einfacher Enveloppen-Detektor
Beispiel eines Moving Averager, forgetting-Faktor λtyp ≈ 0.99
c[n] = λ·c[n-1] + (1-λ)·Ix[n]I
Ix[n]I
c[n]
x[n]
1
1-ε
1-λ
λ
z-1
c[n] = 1-λn+1
n
Gain-Kontroller (ein Beispiel)
(c[n] / c0 )  1
g[n]  
1
wenn c[n]  c0
wenn c[n]  c0
neff ≈ log(ε) / log(λ)
Kompression: Beispiel
Demo sincompress.m
DSV 1, 2005/01, Rur, Audioeffekte, 22
Sinuston 1000 Hz, 4:1 Kompression ρ=0.25, λ=0.99, c0=0.25·2/π
Release Time
Attack Time
Kompression: Beispiel Ducker
Demo ducker.mdl
DSV 1, 2005/01, Rur, Audioeffekte, 23
to duck => sich ducken
Abschwächung Musik-Signal, wenn Sprachsignal über Ref-Level
einfaches adaptives Filter
Sprache
(kick drum)
Level
Detector
c[n]
Gain
Control
Mischkonstante
g[n]
Musik
Ausgang
Expansion
DSV 1, 2005/01, Rur, Audioeffekte, 24
x[n]
y[n]
g[n]
Level
Detector
c[n]
Gain
Control
Output Level [dB]
Vergrösserung Dynamikbereich (Abschwächung der leisen Töne)
Gegenteil der Kompression
für Rauschverminderung (noise gate), Erzeugung von Extremas
Prinzip: variable Verstärkung, durch Input-Level gesteuert
- keine Expansion
y0
-- n:1 Expansionen
noise gating
Schwelle x0
Input Level [dB]
y = y0·(x/x0)ρ => 20·log10(y/y0) = ρ·20·log10(x/x0) wobei ρ>1 und x<x0
4:1-Expansion: -3 dB am Eingang => -12 dB am Ausgang
Companding: Kompression => „Kanal“ => Expansion
Dolby A: „Kanal“ ist ein Tonband
Aufnahme: leise (rauschgefährdete) Passagen lauter als normal
Abspielen: Abschwächung der leisen Passagen
Herunterladen