Glockenfilter (Peaking/Bell filter)
Ein Glocken- oder Peaking-Filter ist eine Art Audio-Entzerrungsfilter, der die Amplitude einer bestimmten Gruppe von Frequenzen um eine Mittenfrequenz herum anhebt oder abschwächt, um eine Amplitudenentzerrung durchzuführen.
Syntax
Hd = peaking(Fo,BW,K,DFormat)
Beschreibung
Entwirft einen Audio-Peaking/Bell-Filter 2. Ordnung. Alle Frequenzen sind in Hz angegeben.
Wie in der nachstehenden Grafik zu sehen ist, hat der Filter seinen Namen von der Form seines Amplitudenspektrums (blaue Linie), das einer Bell-Kurve ähnelt.
- K ist die Amplitude der Spitze
- BW ist die Bandbreite bei K=0, und 0 < Fo < Fs/2
DFormat: Hier können Sie das Anzeigeformat des resultierenden digitalen Filterobjekts angeben.
symbolic |
Zeigt eine symbolische Darstellung des Filterobjekts an. Wenn die Ordnung > 10 ist, wird die symbolische Anzeigeoption überschrieben und auf numerisch gesetzt |
numeric |
Anzeige einer Matrixdarstellung des Filterobjekts |
void |
Ein Filterobjekt erzeugen, aber keine Ausgabe anzeigen |
Beispiel
// Description: This script implements a simple 3-band audio equaliser // Author: Advanced Solutions Nederland BV // Date: Monday, 29 June 2020 // // Tested with fs=44.1kHz // ClearH1; // clear primary filter from cascade //band 1 interface f={10,1000,10,500}; // highpass filter // band 2 interface BW = {1,2000,10,1500}; // filter bandwidth interface fc = {0, fs/2,fs/100,fs/8}; // peak/notch centre frequency interface K = {0,3,0.1,2}; // gain/sign //band 3 interface BW2 = {1,2000,10,1500}; // filter bandwidth interface fc2 = {0, fs/2,fs/100,fs/4}; // peak/notch centre frequency interface K2 = {0,3,0.1,0.25}; // gain/sign Main() // design filters hpfband={1,f}; Hdhpf=butter(2,hpfband,3,80,&amp;quot;highpass&amp;quot;,&amp;quot;symbolic&amp;quot;); Hd1=peaking(fc,BW,K,&amp;quot;symbolic&amp;quot;); Hd2=peaking(fc2,BW2,K2,&amp;quot;symbolic&amp;quot;); // merge filters Hd=augment(Hdhpf,Hd1,&amp;quot;void&amp;quot;); Hd=augment(Hd,Hd2,&amp;quot;symbolic&amp;quot;); // get coefficients Num=getnum(Hd); Den=getden(Hd); Gain=getgain(Hd);