12.07.2015 Aufrufe

Skriptum (als PDF-Datei, 2.2MB) - Piotr Majdak

Skriptum (als PDF-Datei, 2.2MB) - Piotr Majdak

Skriptum (als PDF-Datei, 2.2MB) - Piotr Majdak

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Algorithmen in Akustik und Computermusik<strong>Skriptum</strong> zur Übungletzte Änderung: 21. Oktober 2014Institut für Elektronische Musik und Akustik<strong>Piotr</strong> <strong>Majdak</strong>piotr@majdak.com


Inhaltsverzeichnis1. Generierung von Signalen.................................................................................................41.1. Mathematische Zusammenhänge.........................................................................................41.2. Signalgenerierung.................................................................................................................41.3. Beispiel.................................................................................................................................61.4. Übersicht der verwendeten Befehle......................................................................................71.5. Eine (mögliche) Lösung........................................................................................................82. Analyse der Signale...........................................................................................................92.1. Mathematische Zusammenhänge.........................................................................................92.2. Darstellung und Analyse.......................................................................................................92.3. Beispiel...............................................................................................................................142.4. Eine (mögliche) Lösung......................................................................................................143. Systemidentifikation.........................................................................................................153.1. Impulsanregung..................................................................................................................153.2. Maximum Length Sequence...............................................................................................163.3. Exponentielle Sweeps.........................................................................................................203.4. Beispiel...............................................................................................................................264. Filterstrukturen – IIR-Filter...............................................................................................294.1. Biquad-Filter.......................................................................................................................294.2. State Variable Filter............................................................................................................314.3. Beispiel...............................................................................................................................324.4. Lösungen............................................................................................................................324.5. Parametrische Filter............................................................................................................344.6. Equalizer.............................................................................................................................364.7. Beispiel: Shelving und Peak-Filter......................................................................................385. Zeitvariante Filter.............................................................................................................395.1. Wah-Wah-Filter, Auto-wah-Filter........................................................................................395.2. Phaser................................................................................................................................395.3. Beispiel: Auto-Wah-Effekt (Hausaufgabe)..........................................................................396. FIR-Filter..........................................................................................................................406.1. Allgemein............................................................................................................................406.2. Berechnung in MATLAB.....................................................................................................406.3. Beispiel: Virtueller Hall........................................................................................................416.4. Beispiel: Virtual Sound Positioning.....................................................................................41II


7. Zeitverzögerungsglieder..................................................................................................427.1. Allgemein............................................................................................................................427.2. FIR-Kammfilter...................................................................................................................427.3. Hallalgorithmen...................................................................................................................437.4. IIR-Kammfilter.....................................................................................................................447.5. Delay Line – Effects............................................................................................................478. Homomorphe Signalverarbeitung....................................................................................488.1. Änderung des Dynamikumfanges.......................................................................................488.2. Cepstrum............................................................................................................................508.3. Channel vocoder.................................................................................................................528.4. Beispiele.............................................................................................................................53III


Algorithmen in Akustik und Computermusik, UEGenerierung von Signalen1. Generierung von Signalen1.1. Mathematische ZusammenhängeAnzahl der Samples und Signallänge: N =T⋅f sAnnahme: periodische Schwingung: s i=A icos imit: s i... Signal i... Phase... AmplitudeA iAnzahl der Perioden der Schwingung: M =N⋅ f f s=T⋅fmit: N ... Anzahl der SamplesM ... Anzahl der Perioden im SignalT ... Länge des Sign<strong>als</strong> in s... Sampling-Frequenz in Hzf sf... Grundfrequenz des Sign<strong>als</strong> bei harmonischen Schwingungen in HzAusdehnung und Auflösung des Sign<strong>als</strong>:Phase für eine Periode: 1=[ 0,2 Phase für M Perioden: =[ 0,2⋅M =[ 0,2 ⋅T⋅f =[0,2⋅N⋅ ff sAuflösung der Phase: d = 2 MN=2 ⋅ f f s1.2. Signalgenerierung• Es sollen 2 Vektoren generiert werden, die folgende Signale beinhalten:s 1:s 2:Cosinus-Signal, f =1000HzÜberlagerung von 2 Cosinus-Signalen, f 1=1000Hz , f 2=4410Hz• Die Signale sollten die Länge von 2.268ms bei einer Sampling Frequenz von f s=44100Hzhaben. Die Amplituden der einzelnen Signale sollen A i=1 betragen.• Beide Signale sollten gemeinsam in einem Zeit-Diagramm unterschiedlich gefärbt dargestelltwerden, wobei das Diagramm korrekt beschriftet werden sollte.IEM - Institut für Elektronische Musik und Akustik, Graz 4


Algorithmen in Akustik und Computermusik, UEGenerierung von SignalenSetzen der Konstanten>> fs=44100fs =44100>> f=1000;>> N=2.268e-3*fsN =100.0188 --> f<strong>als</strong>ch!>> N=round(2.268e-3*fs)N =100 --> 100 Samples: richtig!Berechnung der Hilfsgrößen>> dTH=2*pi*f/fs;>> TH1=0:dTH:2*pi*N*f/fs-dTH;Berechnung des Sign<strong>als</strong>>> s1=cos(TH1);>> plot(s1);Berechnung des zweiten Sign<strong>als</strong>>> f=4410;>> dTH=2*pi*f/fs;>> TH2=0:dTH:2*pi*N*f/fs-dTH;IEM - Institut für Elektronische Musik und Akustik, Graz 5


Algorithmen in Akustik und Computermusik, UEGenerierung von Signalen>> s2=s1+cos(TH2);Darstellung>> hold onCurrent plot held>> plot(s2,'r')>> title('Blau: f=1000Hz, Rot: f=1000Hz & f=4410Hz');>> xlabel('Signalfolge in Samples');>> ylabel('Amplitude');>> grid;1.3. Beispiel• Auf der Grundlage der ersten Übung sollen 2 weitere Vektoren generiert werden:s 3: Überlagerung von 3 Cosinus-Signalen, f 1=1000Hz , f 2=4410Hz ,f 3=13000Hz , 3=45° , A 3=0.5s 4: Überlagerung eines Cosinus-Signales f =1000Hz mit einem Rauschsignal. Die Werte desRauschsign<strong>als</strong> sollten im Intervall [−0.25,0.25] liegen.• Die Signale sollten die Länge von 2.268ms bei einer Sampling Frequenz von f s=44100Hzhaben. Wenn nicht anders angegeben sollten die Amplituden der einzelnen Signale A i=1 sein.• Alle 4 Signale sollten gemeinsam in einem Zeit-Diagramm unterschiedlich gefärbt dargestelltwerden, wobei das Diagramm korrekt beschriftet werden sollte.• Die Signale sollen gespeichert werden – sie werden in weiteren Übungen benötigt.Fragen:• Berücksichtigung der zusätzlichen Phase?• Veränderung der Amplitude?• Erzeugung von Rauschen?>> help randIEM - Institut für Elektronische Musik und Akustik, Graz 6


Algorithmen in Akustik und Computermusik, UEGenerierung von SignalenRAND Uniformly distributed random numbers.RAND(N) is an N-by-N matrix with random entries, chosen froma uniform distribution on the interval (0.0,1.0).RAND(M,N) and RAND([M,N]) are M-by-N matrices with random entries....>> rand(10,1)ans =0.95010.23110.60680.48600.89130.76210.45650.01850.82140.4447• Signale speichern>> save filename var11.4. Übersicht der verwendeten Befehlehelp xxxHilfe über xxxst:res:en Erzeugt ein Vektor von st bis en mit der Schrittweite rescosCosinusfunktion (in radiant)plotZeichnet ein 2-D-Diagrammrand Zufallsgenerator, liefert Werte im Intervall [0,1]hold [on|off] Schaltet die Beibehaltung der Plots in einem Diagramm (figure)ein/austitleBeschriftung eines Diagrammsxlabel, ylabel Beschriftung der X-/Y-AchsengridSchaltet Gitter in einem Diagramm ein/aussaveSpeichert angegebene Variablen in einer <strong>Datei</strong>IEM - Institut für Elektronische Musik und Akustik, Graz 7


Algorithmen in Akustik und Computermusik, UEGenerierung von Signalen1.5. Eine (mögliche) LösungIEM - Institut für Elektronische Musik und Akustik, Graz 8


Algorithmen in Akustik und Computermusik, UEAnalyse der Signale2. Analyse der Signale2.1. Mathematische ZusammenhängeN −1− j 2 / N ⋅n⋅kDiskrete Fourier Transformation: X pk=∑ x pn⋅en =0mit: X p k ... Transformationskoeffizienten, Representation im Frequenzbereichx pn ... EingangssignalN ... Länge des Sign<strong>als</strong> (in Samples), gleichzeitig Anzahl derTransformationskoeffizienten (bins)2.2. Darstellung und Analyse• Das in der Übung 1 generierte Signal s 2 sollte im Frequenzbereich dargestellt und diskutiertwerden.Laden der Signale:>> load cossign<strong>als</strong>Berechnung der DFT:>> f2=fft(s2);>> plot(abs(f2));>> grid;Auflösung im Frequenzbereich: f =f sNIEM - Institut für Elektronische Musik und Akustik, Graz 9


Algorithmen in Akustik und Computermusik, UEAnalyse der Signalemit: f ... Auflösung im Frequenzbereich (in Hz)f s... Sampling Frequenz (in Hz)N ... Länge des Sign<strong>als</strong> (in Samples), gleichzeitig Anzahl derTransformationskoeffizienten (bins)Korrekte Darstellung der X-Achse:>> fax=0:fs/N:fs-fs/N;>> plot(fax,abs(f2));>> grid;Untersuchung des Peaks mit höherer Frequenz:Abhilfe zur korrekten Darstellung:>> stem(fax,abs(f2))>> gridIEM - Institut für Elektronische Musik und Akustik, Graz 10


Algorithmen in Akustik und Computermusik, UEAnalyse der SignaleUntersuchung des zweiten Peaks:Genauere Untersuchung - Erhöhung der Auflösung:>> fax5=0:fs/N/5:fs-fs/N/5;>> f25=fft(s2,5*N);>> stem(fax5, abs(f25));>> gridIEM - Institut für Elektronische Musik und Akustik, Graz 11


Algorithmen in Akustik und Computermusik, UEAnalyse der SignaleFensterung (windowing) im Zeitbereich [hier: mit Rechteckfenster]......ist Faltung im Frequenzbereich [hier: mit SINC-Funktion]:>> stem(fax,abs(f2))>> hold>> fax30=0:fs/N/30:fs-fs/N/30;>> f230=fft(s2,30*N);>> plot(fax30,abs(f230),'r');>> gridIEM - Institut für Elektronische Musik und Akustik, Graz 12


Algorithmen in Akustik und Computermusik, UEAnalyse der SignaleFensterung eines Sign<strong>als</strong>: yn=x n⋅w n ⇔ Y p = X p ⊗W p mit: yn ,Y p ... Ausschnitt des Sign<strong>als</strong>xn , X p ... das ursprüngliche Signalw n , W p ... FensterfunktionDarstellung des gesamten Frequenzganges:>> subplot(2,1,1);>> stem(fax,abs(f2));>> axis([0 22050 0 60])>> grid;>> subplot(2,1,2);>> plot(fax,unwrap(angle(f2)));>> axis([0 22050 -pi pi])>> grid;• Erkärung des Phasengangs?IEM - Institut für Elektronische Musik und Akustik, Graz 13


Algorithmen in Akustik und Computermusik, UEAnalyse der Signale2.3. Beispiel• Der Frequenzgang des Sign<strong>als</strong> s 3 sollte in einem Diagramm dargestellt und beschriftet werden.Weiters sollten die Phasen und die Amplituden der Signale aus dem Frequenzgang abgelesenwerden.• Die Signale sollen mit verschiedenen Fenstern (Rechteck, Hann, Hamming, Dreieck, Kaiser)analysiert werden. Dabei soll die Breite der Hauptkeule und die Höhe der Nebenkeulenverglichen werden.Hinweise:• Fensterfunktionen:rectwin, hann, kaiser(N,0.8), triang• Operationen „Element für Element“:a .* ba ./ ba .^ b• Matrix transponieren:b = a.'; a=[1x100], b=[100x1]• Frequenzgang anzeigen (http://piotr.majdak.com/download/mlib/index.php):spect(fft(x), fs, flags);2.4. Eine (mögliche) LösungIEM - Institut für Elektronische Musik und Akustik, Graz 14


Algorithmen in Akustik und Computermusik, UESystemidentifikation3. Systemidentifikation3.1. ImpulsanregungAnregungssignal:• Ein Einheitsimpuls:• Amplitude: 1• Länge: 1 Sample (+ digitale Stille für die Systemantwort)Vorteile:• sehr einfache Messung• Messung „as is“; keine weiteren EinflüsseNachteile:• hoher Crest-Faktor; wenig Energie im Anregungssignal• schlechte Immunität gegenüber transienten StörungenErzeugung eines Impulses:imp=[1; zeros(200,1)];Anregung eines Systems und Ermittlung der Impulsantwort:out=afilter(imp);plot(out);plot(etc(out));1.201-100.80.60.40.20-20-30-40-50-60-70-0.20 50 100 150 200 250-800 50 100 150 200 250Systemidentifikation unter realistischen Bedingungen (mit Störrauschen):out=afilter(imp,-20);% -20dB RauschenIEM - Institut für Elektronische Musik und Akustik, Graz 15


Algorithmen in Akustik und Computermusik, UESystemidentifikation1.201-100.8-200.60.40.2-30-400-50-0.20 50 100 150 200 250-600 50 100 150 200 2503.2. Maximum Length SequenceAnregungssignal:• binäre Pseudozufallsfolge mit einer maximalen Periode• Amplitude: 1• Länge: 2 N −1 Samples (+ digitale Stille für die Systemantwort) mit N...Ordnung der MLSVorteile:• sehr hohe Energie im Anregungssignal; sehr gute Rauschunterdrückung• robust gegenüber transienten Störungen• robust gegenüber leichten Abweichungen im System während der MessungNachteile:• Empfindlich gegenüber nichtlinearen Verzerrungen im SystemErzeugung von MLS:m=mls(8);10.80.60.40.20-0.2-0.4-0.6-0.8-10 50 100 150 200 250 300IEM - Institut für Elektronische Musik und Akustik, Graz 16


Algorithmen in Akustik und Computermusik, UESystemidentifikationBerechnung der Impulsantwort, allgemein:Autokorrelation von MLS: r xx n=n− 1L1d=xcorr(m, m);300250200150100500-500 100 200 300 400 500 600Problem: fehlende Überlappung der Signale bei der Berechnung der Korrelation.Abhilfe: MLS öfters wiederholend=xcorr([m;m;m], m)/length(m); % Normalisierung gilt nur für MLSstem(d(4*length(m):5*length(m)-1));1.21.2110.80.80.60.60.40.40.20.200-0.20 200 400 600 800 1000 1200 1400 1600-0.20 50 100 150 200 250 300Anregung eines Systems:y=afilter([m; m; m]);IEM - Institut für Elektronische Musik und Akustik, Graz 17


Algorithmen in Akustik und Computermusik, UESystemidentifikation21.510.50-0.5-1-1.5-20 100 200 300 400 500 600 700 800Berechnung der Impulsantwort:hr=xcorr(y, m)/length(m);1.210.80.60.40.20-0.20 200 400 600 800 1000 1200 1400 1600hr=hr(4*length(m):5*length(m)-1);plot(hr);plot(etc(hr));1.201-100.8-200.6-300.4-400.2-500-60-0.20 50 100 150 200 250 300-700 50 100 150 200 250 300IEM - Institut für Elektronische Musik und Akustik, Graz 18


Algorithmen in Akustik und Computermusik, UESystemidentifikationSystemidentifikation unter realistischen Bedingungen (mit Störrauschen):yn=afilter([m; m; m],-20);hn=xcorr(yn, m)/length(m);hn=hn((4*length(m):5*length(m)-1));plot(etc(hn)); title('noisy measurement with MLS');plot(etc(out)); title('noisy measurement with impulse');0noisy measurement with MLS0noisy measurement with impulse-10-10-20-20-30-30-40-40-50-50-60-60-70-70-800 50 100 150 200 250 300-800 50 100 150 200 250Fairer Vergleich: (gleiche Messdauer – PIE mit 4 Wiederholungen)for ii=1:4o(:,ii)=afilter(imp,-20);endplot(etc(mean(o')));0-10-20-30Magnitude in dB500-40-50-60-70-800 50 100 150 200 250Phase in degrees-500 0.5 1 1.5 2 2.5x 10 450000-5000-100000 0.5 1 1.5 2 2.5x 10 4Illustration 1: blau: PIE, rot: MLSSystemidentifikation eines leicht nichtlinearen Systems:ynl=afilter([m;m;m],[],-20);hnl=xcorr(ynl, m)/length(m);hnl=hnl(4*length(m):5*length(m)-1);plot(etc(hnl),'r'); hold on;plot(etc(hr));IEM - Institut für Elektronische Musik und Akustik, Graz 19


Algorithmen in Akustik und Computermusik, UESystemidentifikation050-10-20-30-40Magnitude in dB0-50-1000 0.5 1 1.5 2 2.5x 10 40-50-60-700 50 100 150 200 250 3003.3. Exponentielle SweepsAnregungssignal:Phase in degrees-2000-4000-6000-8000-100000 0.5 1 1.5 2 2.5x 10 4• frequenzmodulierter Träger: x t=sin[ Ae t / −1] mit A= T 1ln 2/ 1 ,T=ln 2 / 1 • 1: Startfrequenz in Hz• 2: Endfrequenz in Hz• T : Signaldauer in sVorteile:• einfach zu erzeugendes Anregungssignal• hohe Energie im Anregungssignal• Trennung der Impulsantworten der nichtlinearen Systemteile• Frequenzbereich frei wählbarNachteile:• empfindlich gegenüber transienten Verzerrungen• Messung im eingeschwungenen Zustand notwendig: längere DauerErzeugung des Sweeps:[sw, isw] = expsweep(50,18000,1,48000);spect(fft(sw),48000);specgram(sw,256,48000);% entspricht: spectrogram(sw,256,128,256,48000,'yaxis');specgram(isw,256,48000);IEM - Institut für Elektronische Musik und Akustik, Graz 20


Algorithmen in Akustik und Computermusik, UESystemidentifikation100x 10 4x 10 4Magnitude in dB50022Phase in degrees-500 0.5 1 1.5 2 2.5x 10 41 x 1060.50-0.5Frequency1.510.5Frequency1.510.5-10 0.5 1 1.5 2 2.5x 10 400 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9Time00 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9TimeBerechnung der Impulsantwort, allgemein:Y f =X f ⋅H f → H f =Y f ⋅X −1 f mit• X f : Spektrum des Anregungssign<strong>als</strong>• Y f : Systemantwort• H f : Übertragungsfunktion des Systems• X −1 f : Inverses Spektrum des Anregungssign<strong>als</strong>X −1 f = 1 {x −t } F {x −t}⋅F =∣X f ∣ ∣X f ∣ X f 2X ( f )⋅X −1 ( f ) :nges=length(sw)+length(isw)-1;d=real(ifft( fft(sw,nges).*fft(isw,nges) ));0-20-40-60-80-100-120-1400 1 2 3 4 5 6 7 8 9 10x 10 4Magnitude in dBPhase in degrees500-50-1000 0.5 1 1.5 2 2.5x 10 45 x 1050-5-100 0.5 1 1.5 2 2.5x 10 4Anregung eines Systems:lag=255;y=afilter([sw; zeros(lag,1)]); specgram(y,256,48000);IEM - Institut für Elektronische Musik und Akustik, Graz 21


Algorithmen in Akustik und Computermusik, UESystemidentifikation100x 10 4Magnitude in dBPhase in degrees500-500 0.5 1 1.5 2 2.5x 10 410 x 10550-50 0.5 1 1.5 2 2.5x 10 4Frequency21.510.500 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9TimeBerechnung der Impulsantwort:nges=length(sw)+length(isw)+lag-1;h=real(ifft(fft(y,nges).*fft(isw,nges)));h=h(length(sw):length(sw)+lag);0-10-20-30-40-50-60Magnitude in dB0-50-1000 0.5 1 1.5 2 2.5x 10 45 x 106-70-80-90-1000 50 100 150 200 250 300Phase in degrees0-5-100 0.5 1 1.5 2 2.5x 10 4Systemidentifikation unter realistischen Bedingungen (mit Störrauschen):yn=afilter([sw; zeros(lag,1)],-20);hn=real(ifft(fft(yn,nges).*fft(isw,nges)));hn=hn(length(sw):length(sw)+lag);IEM - Institut für Elektronische Musik und Akustik, Graz 22


Algorithmen in Akustik und Computermusik, UESystemidentifikationx 10 420Frequency21.51Magnitude in dB0-20-40-600 0.5 1 1.5 2 2.5x 10 420000.500 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1TimeFairer Vergleich:• Sweep: 1 Sekunde = 48000 Samples• MLS: 3 Wiederholungen á 16384 Samples = 49152 Samples → MLS 14-ter Ordnungm=mls(14);yn=afilter([m; m; m],-20);hn=xcorr(yn, m)/length(m); % raw IRhn=hn((4*length(m):5*length(m)-1));hn=hn(1:255);Phase in degrees0-2000-4000-6000-80000 0.5 1 1.5 2 2.5Blau: Log Sweep; Rot: MLS (255 Samples)x 10 450Magnitude in dB0-5000 0.5 1 1.5 2 2.5x 10 4Phase in degrees-2000-4000-6000-80000 0.5 1 1.5 2 2.5x 10 4Illustration 2: blau: Log Sweep (1 Sekunde), rot: MLS (3 mal 14-Ordnung)Systemidentifikation eines leicht nichtlinearen Systems:ynl=afilter([sw; zeros(lag,1)],[], -40);IEM - Institut für Elektronische Musik und Akustik, Graz 23


Algorithmen in Akustik und Computermusik, UESystemidentifikationx 10 421.5Frequency10.500 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1Timelag=255;nges=length(sw)+length(isw)+lag;hnl=real(ifft(fft(ynl,nges).*fft(isw,nges)));hnls=hnl(length(sw):length(sw)+lag);plot(etc(hnl));-550-60-20-65-40-70-75-80-60-80-85-100-901.5 2 2.5 3 3.5 4 4.5 5x 10 4-1200 1 2 3 4 5 6 7 8 9x 10 4200Magnitude in dB0-20-40-600 0.5 1 1.5 2 2.5x 10 40-20-40-60Phase in degrees-2000-4000-80-100-60000 0.5 1 1.5 2 2.5x 10 4Rot: Log Sweep, Lineares System-1200 50 100 150 200 250 300Blau: Log Sweep, Nicht lineares System;IEM - Institut für Elektronische Musik und Akustik, Graz 24


Algorithmen in Akustik und Computermusik, UESystemidentifikationAnalyse der gesamten Impulsantwort:-55-60-65-70-75-80-85-901.5 2 2.5 3 3.5 4 4.5 5Beginn einer harmonischen Impulsantwort:t N =T −T⋅ ln ln N f 2 mit:f 1• t N : Beginn der N-ten harmonischen Impulsantwort• T: Dauer des Sweeps• N: Nummer der Harmonischen• f 2,f 1: End- und Startfrequenz (in Hz oder rad)x 10 4nmax=19;n=round(T*fs-T*fs*log(1:nmax)/log(f2/f1));hm=zeros(lag+1,nmax);hamp=zeros(fs/2,nmax);for ii=1:nmaxhm(:,ii) = hnl(n(ii):n(ii)+lag);htemp=20*log10(abs(fft(hm(:,ii),fs)));hamp(:,ii) = htemp(1:fs/2);endclear htemp;Klirrfaktor:k= ∑ n=2A n2A 1 2 ∑n=2A n2mit: A n...Amplitude der n-ten HarmonischenAblesen des Klirrfaktors für z.B.: 1 kHz:IEM - Institut für Elektronische Musik und Akustik, Graz 25


Algorithmen in Akustik und Computermusik, UESystemidentifikationamplitude in dB0-20-40-60#1#3#5#7#9#11#13#15#17-80-1000 2000 4000 6000 8000 10000frequency in Hz• A 1 : 0dB → 1• A 3 , A 5 , ... A 17 : 8 mal -60dB → 8 mal 0.001• k= ∑ n=2A n2A 1 2 ∑n=2A n2= 0.0028 → 2.8 %3.4. Beispiel• Der Frequenzgang des Moduls asystem() soll ermittelt werden. Dabei sollen verschiedeneKonfigurationen des Moduls getestet werden:• ideale Messung: asystem(anregungssignal)• Messung mit Störrauschen von -40dB: asystem(anregungssignal,-40)• Messung mit Störrauschen von -10dB: asystem(anregungssignal,-10)• Messung mit Einbeziehung leichter Nichtlinearitäten und Störrauschen von -40dB:asystem(anregungssignal,[],-40). Dabei soll der Klirfaktor des Systems ermitteltwerden.• Befehle: asystem, spect, etc, mls, expsweep, invexpsweep• http://piotr.majdak.com/download/mlib/index.php• Der Frequenzgang der Soundkarte des Rechners soll mithilfe des Loop-Back-Kabels gemessenwerden.• Zuerst ein Signal über Line-Out abspielen und über Mic-In aufnehmen. Die Einstellungen derSoundkarte beachten. Clipping vermeiden• Danach die Systemidentifikation-Prozedur anwenden• Der Frequenzgang eines unbekannten Systems (modifizierter Loop-Back-Kabel) soll identifiziertwerden.• Ein Signal über Line-Out abspielen und übe Mic-In aufnehmen.• Signal visuell analysieren und eine geeignete Systemidentifikation-Methode auswählenIEM - Institut für Elektronische Musik und Akustik, Graz 26


Algorithmen in Akustik und Computermusik, UESystemidentifikation• die ausgewählte Systemidentifikation-Prozedur anwenden• Ergebnisse diskutierenHandhabung der Audiosignale in MATLABr = audiorecorder(FS, 16, CH); % create recorder object with CH channelsp = audioplayer(OUT, FS); % create player objectrecord(r);% start recordingplayblocking(p);% play OUT and wait until donestop(r);% stop recordingY=getaudiodata(r);% retrieve the recorder data to YHinweise:• Mono- oder Stereo-Signale?• Wertebereich für Audioausgabe in Matlab?• Zuerst nur die digitale Schleife verwenden! Dann erst mit Kabel...• Test der Soundkarte: das ausgespielte und aufgenommene Signal anschauen (plot)!• Latenz der Soundkarte berücksichtigen!IEM - Institut für Elektronische Musik und Akustik, Graz 27


Algorithmen in Akustik und Computermusik, UESystemidentifikation100x 10 4Magnitude in dB0-100-2000 0.5 1 1.5 2 2.5x 10 45 x 106Frequency21.51Phase in degrees0-5-100 0.5 1 1.5 2 2.5x 10 40.500 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1Time50x 10 4Magnitude in dB0-50-1000 0.5 1 1.5 2 2.5x 10 40Frequency21.51Phase in degrees-2000-4000-60000 0.5 1 1.5 2 2.5x 10 40.500 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1Time0x 10 4-50-1002-1501.5-200-250Frequency1-300-3500.5-4000 1 2 3 4 5 6 7 8 9 10x 10 400 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1TimeIEM - Institut für Elektronische Musik und Akustik, Graz 28


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filter4. Filterstrukturen – IIR-Filter4.1. Biquad-FilterDifferenzengleichungyn=b 0x nb 1xn−1b 2xn−2−a 1yn−1−a 2yn−2ÜbertragungsfunktionH z= b 0 b 1 z−1 b 2z −21a 1z −1 a 2z −2Berechnung der Koeffizienten:• Filterdesign-Tool:fdatool• Direkte Berechnung:butter, cheby1, cheby2, ellip, firls• Tabellen/Unterlagen, hier: Tiefpass-Filter:b 0=1/12⋅d⋅F F 2 b 1=2 b 0b 2=b 0a 1=2b 01−F 2 a 2=b 01−2⋅d⋅F F 2 mit1F =tan f c/ f sf c ... analoge Grenzfrequenzf s ... Sampling Frequenzd ... DämpfungsfaktorImplementation in MATLABMöglichkeit 1:B=[ b0 b1 b2];A=[ 1 -a1 -a2];out=filter(B,A,in);Möglichkeit 2 (ausprogrammierte Struktur):IEM - Institut für Elektronische Musik und Akustik, Graz 29


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filterfunction out=biquad_lp(in,fc,d,fs)% biquad_lp - low pass filter, canonical bi-quad form% out=biquad_lp(in,fc,d,[fs])%% Implementation of low pass biquad filter in canonical form.%% input parameters:% in: input signal% fc: cut-off frequency [Hz]% d: damping factor% fs: sampling frequency% calculate all coefficientsF=1/tan(pi*fc/fs);b0=1/(1+2*d*F+F*F);b1=2*b0;b2=b0;a1=2*b0*(1-F*F);a2=b0*(1-2*d*F+F*F);% initialize vectorslen=length(in)+2;y=zeros(len,1); % define y and xx=zeros(len,1);% get the length + overheadyn=b 0x nb 1xn−1b 2xn−2−a 1yn−1−a 2yn−2x(3:len)=in; % merge to: zeros . in . zeros% main loopfor n=3:leny(n)=b0*x(n)+b1*x(n-1)+b2*x(n-2)-a1*y(n-1)-a2*y(n-2);end% set the outputout=y(3:end);Debugging des Scripts:Systemidentifikation über die Impulsantwort:imp=[1; zeros(1024,1)];out=biquad_lp(imp,2000,1,44100);Auswertung:IEM - Institut für Elektronische Musik und Akustik, Graz 30


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filterplot(out(1:100));spect(fft(out),44100);Eigenschaften der Struktur:• Vorteile: einfache Implementation• Nachteil: komplizierte Berechnung der Koeffizienten, viele Koeffizienten für wenige Parameter4.2. State Variable Filter• Tiefpass (Ausgang y ln )• Hochpass (Ausgang y hn )• Bandpass (Ausgang y bn )Die Differenzgleichungen:y ln=F⋅y bn y ln−1y bn=F⋅y h n y bn−1y hn = xn− y l n−1−Q⋅y b n−1mit F =2sin f c/ f sQ=2⋅dIEM - Institut für Elektronische Musik und Akustik, Graz 31


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-FilterEigenschaften der State-Variable-Struktur:Vorteile: einfache Zuordnung der Filtereigenschaften zu den ParameternNachteile: komplexere Berechnung, mehr Speicher notwendig.Anwendung: Umschaltung zw. zwei extremen Settings, Filter-Glissandi, Synthesizer4.3. BeispielDas State-Variable-Filter soll <strong>als</strong> Funktion statevar implementiert werden:function out=statevar(in,fc,d,fs,typ)% statevar - digital state variable filter% out=statevar(in,fc,d,fs, [typ])%% input parameters:% in: input signal% fc: cut-off frequency [Hz]% d: damping factor% fs: sampling frequency% typ: type of filter ('lp', 'bp', 'hp'), optional (default='lp')Die Funktion sollte mit folgenden Parametern überprüft werden f s=44100Hz :• Tiefpass, f c=5000 Hz , d=0.4 bis 1.4 in 0.2-Schritten• Bandpass, f c = 2000 Hz bis 5000 Hz in 1000 Hz-Schritten• Hochpass, f c=4000,d =0 bis 0.3 in 0.1-SchrittenWas passiert bei einer sehr kleinen Dämpfung? Was passiert bei sehr grossen Dämpfungen undhohen Grenzfrequenzen?4.4. LösungenStabilitätskriterium: F 2−QIEM - Institut für Elektronische Musik und Akustik, Graz 32


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filterweiteres Stabilitätskriterium: Q0IEM - Institut für Elektronische Musik und Akustik, Graz 33


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filter4.5. Parametrische FilterZiel: mit einem Parameter eine gezielte Veränderung des Verhaltens des Filters ermöglichenAllpass erster OrdnungÜbertragungsfunktion: A 1z= z−1 c1c⋅z mit c= tan f / f −1c s −1 tan f c/ f s1Differenzengleichung: an=c xn xn−1−c a n−1Frequenzgang:Tiefpass und Hochpass erster OrdnungÜbertragungsfunktion Tiefpass: H z= 1 1A z2Übertragungsfunktion Hochpass: H z= 1 1−A z2Frequenzgang:IEM - Institut für Elektronische Musik und Akustik, Graz 34


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-FilterAllpassfilter zweiter OrdnungÜbertragungsfunktion: A 2 z= z−2 c1−b z −1 −b1c1−b z −1 −bz −2mit b= tan f b / f s −1tan f b/ f s1 und c=−cos2 f c / f s , ( f c ... Grenzfrequenz, f b ... Bandbreite)Differenzengleichung: a n=−bx nc1−bxn−1xn−2−c1−b an−1ba n−2Frequenzgang:Bandpass und Bandsperre zweiter OrdnungÜbertragungsfunktion Bandsperre: H z= 1 2 1 A 2 zÜbertragungsfunktion Bandpass: H z= 1 2 1− A 2 zFrequenzgang:IEM - Institut für Elektronische Musik und Akustik, Graz 35


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filter4.6. EqualizerShelving FilterÜbertragungsfunktion: H z=1 H 0⋅[1±A z] mit LF (+) und HF (-)2Differenzgleichungen: y 1 n=cx n xn−1−cy 1 n−1Frequenzgang:y n= H 02 [ xn± y 1 n ]xnIEM - Institut für Elektronische Musik und Akustik, Graz 36


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-FilterPeak filter / Notch filterÜbertragungsfunktion: H z=1 H 02 ⋅ [1− A 2 z]mit A 2 z= z−2 c1−b z −1 −b1c1−b z −1 −bz −2 , b= tan f b/ f s−1tan f b/ f s1 , c=−cos2 f c/ f s ,( f c ...Center-Frequenz, f b ... Bandbreite) und H 0=G c−1 , wobei G c die Verstärkung des Peaksbei der Center-Frequenz darstellt.Struktur:Differenzengleichungen:Frequenzgang:y 1n=−bxnc1−b xn−1xn−2−c1−b y 1n−1by 1n−2yn= H 02 [ xn− y 1 n]xnIEM - Institut für Elektronische Musik und Akustik, Graz 37


Algorithmen in Akustik und Computermusik, UEFilterstrukturen – IIR-Filter4.7. Beispiel: Shelving und Peak-Filter• Ein Shelving-Filter erster Ordnung soll implementiert werden. Die Parameter werden überfolgenden Header übergeben:function out=shelvfilt(in,fc,G,fs,typ)% shelvfilt - shelving filter, first order% out=shelvfilt(in,fc,g,fs)%% input parameters:% in: input signal% fc: cut-off frequency [Hz]% G: gain [dB]% fs: sampling frequency [Hz]% typ: type of filter ('lp', 'hp'), optional (default='lp')• Ein Peak-Filter zweiter Ordnung soll implementiert werden. Folgender Header ist zu verwenden:function out=peakfilt(in,fc,fb,G,fs)% peakfilt - peak filter, second order% out=shelv(in,fc,fb,g,fs)%% input parameters:% in: input signal% fc: cut-off frequency [Hz]% fb: bandwidth [Hz]% G: gain [dB]% fs: sampling frequency [Hz]Beide Filter sollen überprüft werden (Impulsantworten, Frequenzgänge).IEM - Institut für Elektronische Musik und Akustik, Graz 38


Algorithmen in Akustik und Computermusik, UEZeitvariante Filter5. Zeitvariante Filter5.1. Wah-Wah-Filter, Auto-wah-Filter5.2. Phaser5.3. Beispiel: Auto-Wah-Effekt (Hausaufgabe)Ein wah-wah-Effekt soll auf der Basis eines zeitvarianten Bandpassfilter implementiert werden.function out = autowah(in, fc, fb, fw, mix, fs)% - in: input% - fc: center frequency [Hz]% - fb: bandwidth [Hz]% - fw: wah-wah frequency of LFO [Hz]% - mix: ratio of dry to wet% - fs: sampling frequencyHinweise:• Erweiterung eines Peakfilters• Modulation der festen Mittenfrequenz des Peakfilters (Filterkoeffizienten <strong>als</strong> Vektoren!)• Schrittweise debuggen!!! (zuerst nur den zeit-invarianten Filter, dann <strong>als</strong> zeit-variantes System)IEM - Institut für Elektronische Musik und Akustik, Graz 39


Algorithmen in Akustik und Computermusik, UEFIR-Filter6. FIR-Filter6.1. Allgemeink =L−1Übertragungsfunktion: H z= ∑k =0k= L−1Differenzengleichung: yn= ∑k=0b k⋅z −kb k⋅x n−kk =L−1Impulsantwort: hn= ∑ b k⋅ n−k und entspricht den Gewichten in der Übertragungsfunktion.k =06.2. Berechnung in MATLABAnnahme:sig:Signal, ir: ImpulsantwortN=length(sig);M=length(ir);Möglichkeit 1: Faltung:out=conv(sig, ir);plot(out(1:N));Möglichkeit 2: filter – Befehlout=filter(ir,1,sig);plot(out);% sehr langsam bei längeren IR's!!!% langsam bei längeren IR's!!!Möglichkeit 3: über die Fouriertransfomation (schnelle Faltung):sigf=fft(sig,N+M);irf=fft(if,N+M);outf=sigf.*irf;out=real(ifft(outf);plot(out(1:N));Möglichkeit 4: Fouriertransformation mit Overlap-and-Add-Methode:out=fftfilt(ir,[sig; zeros(M,1)]);plot(out);IEM - Institut für Elektronische Musik und Akustik, Graz 40


Algorithmen in Akustik und Computermusik, UEFIR-Filter6.3. Beispiel: Virtueller HallEine Aufnahme, durchgeführt in einem trockenen Studioraum (=Freifeldaufnahme), soll virtuell ineinem reell vorhandenen Raum positioniert werden. Dadurch soll der Eindruck einer in diesemRaum durchgeführten Aufnahme entstehen. Als Raumübertragungsfunktion stehen mehrereImpulsantworten zur Verfügung. Bei Raumimpulsantworten im Stereo-Format, soll <strong>als</strong> Ergebnisebenfalls eine Stereo-WAV-<strong>Datei</strong> entstehen.} ∗6.4. Beispiel: Virtual Sound Positioning• Eine Aufnahme soll virtuell um den Kopf im Bereich ±90° rotiert werden. Als Head-RelatedTransfer Functions (HRTFs) stehen KEMAR-Impulsantworten in 5°-Auflösung für dieHorizontalebene für beide Ohren zur Verfügung. Die gerendete virtuelle Schallquelle soll von 0°bis +90° (nach links) ausgelenkt, danach umkehren und bis -90° rotiert werden, um zum Schlussbei der Position 0° stehen zu bleiben, wobei die Änderung des Azimuts linear erfolgen soll. Diefür die Aktualisierung der Filterkoeffizienten der HRTFs notwendige Interpolation sollvernachlässigt werden.• Implementation: siehe vsp.m• Debugging: siehe bsp_vsp.m• Wie wirkt sich die Kopfbewegung (=Geschwindigkeit der Filterveränderung) auf die korrekteFilterung?IEM - Institut für Elektronische Musik und Akustik, Graz 41


Algorithmen in Akustik und Computermusik, UEZeitverzögerungsglieder7. Zeitverzögerungsglieder7.1. Allgemein• Schallausbreitung• Auswirkung im Zeitbereich• Auswirkung im Frequenzbereich• Wiederholte Reflexionen7.2. FIR-KammfilterEntstehung: einfache Raumreflexionenyn=xng⋅xn−M mit M =⋅f sH z=1g⋅z −MMATLAB:dline=[zeros(del,1); in];in=[in; zeros(del,1)];out=in + gain.*dline;IEM - Institut für Elektronische Musik und Akustik, Graz 42


Algorithmen in Akustik und Computermusik, UEZeitverzögerungsglieder7.3. HallalgorithmenSpiegelquellenprinzipKodierung der Distanz für eine Kugelwelle: Schalldruck nimmt mit 1/r ab.Beispiel: Hallsimulation (FIR, Spiegelquellen erster Ordnung)Hallsimulation einer Audioquelle in folgender Aufstellung:X1X2Y2Y1Schallharte Wände ohne Dämpfung, Frequenzverhalten: Tiefpasswirkung 1. Ordnung, f c = 2 kHz.Schallgeschwindigkeit: c = 340 m/s, Abtastfrequenz: 44.1kHz. Zusätzlich sollte die Distanz mit 1/rberücksichtigt werden. Geometrie: X1 = 6m; X2 = 4m; Y1 = 2m; Y2 = 4mVorgehensweise• Positionen der Spiegelquellen ermitteln• Jede Spiegelquelle verzögern und filtern, anschließend der Distanz entsprechend abschwächen• Reflexionen und Direktschall überlagernIEM - Institut für Elektronische Musik und Akustik, Graz 43


Algorithmen in Akustik und Computermusik, UEZeitverzögerungsgliederLösungenKoeffizienten, in filter-kompatibler Form, aus fdatool oder TP-Filter in Allpassform:A=[1 -0.75];B=[0.125 0.125];Berücksichtung der Distanz:out1 = out1*(d0/d); % d0:Abstand des Direktschalls, d: Abstand derSpiegelquelle, out1:Signal der SpiegelquelleImpulsantwort:7.4. IIR-KammfilterAnwendung: Zum Beispiel: Enstehung rekursiver Raumreflexionenyn=c⋅xng⋅yn−M mit M =⋅f scH z=1−g⋅z −Mfunction out = iircomb(in, d, g, ext)% in: input vector% d: delay [samples]% g: gain in the recursive path (linear)% ext: extension of the input signal [samples]% out: output vectorin=[zeros(d+1,1); in; zeros(ext,1)];y=zeros(length(in),1);yh=zeros(length(in),1);for n=d+1:length(in)yh(n) = g*y(n-d);y(n)=in(n)+yh(n);endout=y(d+1:end);IEM - Institut für Elektronische Musik und Akustik, Graz 44


Algorithmen in Akustik und Computermusik, UEZeitverzögerungsgliederKammfilter für rekursive Hallalgorithmenfunction out = iircomblp(in, B, A, d, ext)% in: input vector% B, A: filter coefficients ([b0 b1], [a0 a1])% d: delay [samples]% ext: extension of the input signal [samples]% out: output vectorb0=B(1); b1=B(2); a1=A(2);in=[zeros(d+1,1); in; zeros(ext,1)];yh=zeros(length(in),1);y=zeros(length(in),1);for n=d+2:length(in)yh(n) = b0*y(n-d) + b1*y(n-d-1) - a1*yh(n-1);y(n) = in(n)+yh(n);endout=y(d+2:end);IEM - Institut für Elektronische Musik und Akustik, Graz 45


Algorithmen in Akustik und Computermusik, UEZeitverzögerungsgliederBeispiel: Hallsimulation (IIR)Hallsimulation einer Audioquelle in folgender Aufstellung:LAbstand zwischen den schallharten Wänden: L = 17 m. Dämpfung einer Wand: g = -3dB,Frequenzverhalten: Tiefpasswirkung 1.Ordnung, f c = 2 kHz. Schallgeschwindigkeit: c = 340 m/s,Abtastfrequenz: 44.1kHzLösungenKoeffizienten (Tiefpass+Dämpfung), in filter-kompatibler Form, aus fdatool oder TP-Filter inAllpassform:A=[1 -0.75];B=[0.125 0.125]/1.4125;Amplitudengang des Filters:Impulsantwort des Kammfilters:Vorgehensweise• Auswahl der FilterstrukturIEM - Institut für Elektronische Musik und Akustik, Graz 46


Algorithmen in Akustik und Computermusik, UEZeitverzögerungsglieder• Filterentwurf:• Auswahl des Tiefpassfilters• Berechnung der Koeffizienten• Einbeziehung des Dämpfungsfaktors• Überprüfung des Filters (Impulsantwort, filter)• Berechnung der Zeitverzögerung• Überprüfung des Hallalgorithmus (Impulsantwort)• Verhallung eines Audiosign<strong>als</strong>7.5. Delay Line – EffectsParametrierung:Effekt BL FF FB Delay [ms] MOD(n)Resonator - 0 < x < 1 - 0..20 -Slapback - 0 < x < 1 - 20..50 -Echo - 0 < x < 1 - > 50 -Vibrato - 1 - 0 0.1-5 Hz, sinusFlanger 0.7 0.7 0.7 0 0.1-1 Hz, sinusChorus 0.7 1 (-0.7) 2..30 LP-RauschenDoubling 0.7 0.7 - 30..100 LP-RauschenIEM - Institut für Elektronische Musik und Akustik, Graz 47


Algorithmen in Akustik und Computermusik, UEHomomorphe Signalverarbeitung8. Homomorphe Signalverarbeitung8.1. Änderung des DynamikumfangesMultiplikation Additionyn=sn⋅hn y=s nh nyn=sn⋅hn ∣ loglog yn=log snlog hnBerechnungsvorgangSignal: yn=sn⋅d nLogarithmieren: log yn=log snlog d nErgebnis: yn=sn d nDynamik d n : Tieffrequenter AnteilSignal (dynamiklos) s n : Hochfrequenter AnteilTrennung: Transformation in den Frequenzbereich: Y k= S k D kZoomed:IEM - Institut für Elektronische Musik und Akustik, Graz 48


Algorithmen in Akustik und Computermusik, UEHomomorphe SignalverarbeitungTrennung: Fensterung mit Tiefpass/Hochpass-Fenster: Dk= Y k ⋅W LPk undS k= Y k⋅W HPk Rückrechnung in die Zeitdomäne ergibt a) den Verlauf der Dynamik: d n=10 IFFT [ Dk ]und b) das dynamiklose Signal: s n=10 IFFT [ S k ]IEM - Institut für Elektronische Musik und Akustik, Graz 49


Algorithmen in Akustik und Computermusik, UEHomomorphe SignalverarbeitungGesamtstruktur:LOG FFT IFFT 10^Fenster8.2. CepstrumZiel: 2 Signale, über Faltung verbunden, zu trennen:yn=sn∗hn y=sn hn Definitionyn=sn∗hnY k=S k⋅H k log Y k=log S klog H k yn=sn hn Beispiel: Sprachanalyse∣ FFT∣ log∣ IFFTFFT LOG IFFTAusschnitt im Zeitbereich: yn=sn∗hnAusschnitt im Frequenzbereich: Y k=S k⋅H kIEM - Institut für Elektronische Musik und Akustik, Graz 50


Algorithmen in Akustik und Computermusik, UEHomomorphe SignalverarbeitungNach der Transformation in den Cepstrum-Bereich: yn=sn hnFensterung: sn= yn⋅w nNach der Fensterung im Frequenzbereich: IFFT [s n]S k=10Rekonstruktion des Filter <strong>als</strong> Impulsantwort: s n=IFFT [S k ]IEM - Institut für Elektronische Musik und Akustik, Graz 51


Algorithmen in Akustik und Computermusik, UEHomomorphe SignalverarbeitungReelles CepstrumFrequenzCepstrumFrequenzynFFT ABS LOG IFFT FFT 10^R C R R R C CFensterIFFTRh n8.3. Channel vocoderZiel: Spektrum-Einhüllende eines Sign<strong>als</strong> einem zweiten Signal aufprägenIEM - Institut für Elektronische Musik und Akustik, Graz 52


Algorithmen in Akustik und Computermusik, UEHomomorphe SignalverarbeitungVorgehensweise– Berechnung der Einhüllenden des Filtersign<strong>als</strong>– Gewichtung des Hauptsign<strong>als</strong> nach der Einhüllenden des Filtersign<strong>als</strong>Vorgehensweise für Systeme mit Filtern gleicher Bandbreite:1. Berechnung von RMS2. Summe aller Energie in einem Frequenzband3. Filterung des Spektrums Y k mit der Filtereinhüllenden H k : E k=Y k∗H k :4. Vereinfachung der Filterung über FFT: E k=IFFT {FFT {Y k}⋅FFT {H k}}Beispiel8.4. Beispiele• Berechnung des Dynamikverlaufes eines Sign<strong>als</strong> mit homomorpher Signalverarbeitung.• Signal mit starken Dynamikveränderungen verwenden (zB.: figaro1.wav)• Veränderung eines Sign<strong>als</strong> über die Extraktion der Hüllkurve (Cepstrum, LPC, Channel-Vocoder).• Beispiel: weisslich.m• Skript: overlapandadd.m erweiternIEM - Institut für Elektronische Musik und Akustik, Graz 53

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!