clc %('Einlesen von Daten aus einem WAV-File'); datei=input('Welches Wav-File (ohne .wav) soll eingelesen werden? ','s'); %Einlesen im WAV-Format wavedata enthält die Audiodaten, Fs die Abtastfrequenz [wavedata,Fs]=wavread(datei); %Darstellung der Original-WAVE Datei samplingrate=Fs plot(wavedata),grid,title('Eingelesene Wav-Daten'); %('weiter ==> beliebige Taste'); pause close faktor=10^(-3/20); %Faktor für -3dB Faktor = faktor %gibt Faktor aus linfaktor=faktor/0.52; %Linearerfaktor = Faktor / Maximalwert(abgelesen: 0,52); Linfaktor = linfaktor %gibt Linfaktor aus output = wavedata*linfaktor; %Multiplikation für Ergebnis %Darstellung der Bearbeiteten-WAVE Datei plot(output),grid,title('WAVE-Datei -3dB'); %('Abspeichern von WAV-File'); outstringname=input('Wie soll das Wav-File heissen (ohne .wav) ? ','s'); %Speichern als wav-File unter dem Namen in String outstringname % Audiodaten im Vektor output samplingrate=8000 bitprosample=16 wavwrite(output,samplingrate,bitprosample,outstringname) %Anmerkung: wenn direkt der Filename hallo genutzt werden soll: %wavwrite(y,samplingrate,16,'hallo') % %('weiter ==> beliebige Taste'); pause close ANTWORTEN 1) Welchem linearen Wert entspricht -3dBFS, wenn die Daten auf den Bereich zwischen +1 und -1 skaliert sind? 0.70795 2) Welchen maximalen linearen Aussteuerungswert finden Sie in der Testdatei? 0.52 3) Mit welchem Faktor müssen Sie die Daten multiplizieren, damit die maximale Aussteuerung -3dBFS beträgt? 1.34 4) Warum sollte man den Skalierungsfaktor, mit dem die Daten multilpiziert werden, vor der Multiplikation in einer Variablen speichern? Weil die Berechnung danach schneller geht