Habe mir mittels MATLAB die Koeffizienten für einen FIR-Hochpass und
Tiefpass ausgeben lassen. Erstaunlich oder nicht, sind sie nicht
komplementär!
Ich hätte erwartet, dass die HP-Koeffs einfach der "Rest" des Tiefpasses
sind, man also ein Signal, dass von 0 gegen fg geht mit dem von fg gegen
unendlich wieder zusammenmischen kann und bekommt 1!
Warum ist das so? Kann es sein, dass man da irgendwie auf den ripple
optimiert und andere Optima findet?
Ich brauche nämlich einen Filter, der sich so verhält, wie beschrieben,
wenn also beider Pfade auf 100% stehen, soll der Filter unsichtbar
werden.
Es geht auch wirklich um die Koeffizienten und nicht um noch darin
enthaltene Glättung oder Fensterung. Fenster hätte ich extra, wenn
benötigt.
Der "FIT-Filter-Designer" verhält sich ähnlich. auch da sind die
Ergebnisse nicht komplementär.
Moin,
Also willst du einen Tiefpass und einen Hochpass, die - wenn parallel
geschaltet sind - sich irgendwie wieder aufheben. OK - aufheben geht
nicht ganz, weil die Zeitverzoegerung bleiben wird, aber der
Betragsfrequenzgang kann wieder ueberall konstant sein.
Dann lass dir von Matlab halt nur den Tiefpass berechnen und den
Hochpass berechnest du dir selbst, indem du den Tiefpass von einem
entsprechend verschobenen Dirac abziehst. Dann ergeben TP+HP wieder
einen verschobenen Dirac - was du ja haben willst.
Beispiel: Dein TP ist sowas hier: [0.25, 0.5, 0.25]
das ziehst du von [0 1 0] ab; das ergibt also [-0.25, 0.5, -0.25] und
verkaufst es dir als HP.
Gruss
WK
Wie willst du die Koeffizienten denn mischen?
Das sind halt Koeffizienten einer Differential bzw.
Differenzengleichung. Das ist ein dynamisches System und dessen
Verhalten ist unterschiedlich bei unterschiedlichen Koeffizienten ;-)
Thomas W. schrieb:> Habe mir mittels MATLAB die Koeffizienten für einen FIR-Hochpass und> Tiefpass ausgeben lassen. Erstaunlich oder nicht, sind sie nicht> komplementär!
Du machst einen Tiefpaß zu einem Hochpaß, indem du - mal ganz salopp
gesagt - alle Koeffizienten negierst und dann 1.0 auf den mittleren
Koeffizienten addierst. Das ist dann Weka's Dirac.
Das gilt nur für Filter mit ungerader Länge. Bei gerader Tapanzahl
müßtest du m.E. auf die beiden mittleren jeweils 0.5 addieren.
Ja, wenn du einen derartigen TP und den so daraus hergestellten HP
addierst, kommt nur 1.0 in der Mitte der Taps bei heraus, alles andere
ist 0.
Aber wie kommst du zu " nichtkomplementär"? Aus den Ergebnissen eines
Filterprogrammes, dessen interner Rechengang nicht offengelegt ist? Wer
weiß, was dessen Autoren sich dabei gedacht haben. Vielleicht den 3 dB
Punkt, vielleicht einen anderen?
W.S.
Ich habe es jetzt so gemacht, wie ursprünglich mal angedacht, nämlich
einfach die Koeffizienten von 1 abgezogen. Es bleibt jetzt das Thema der
Fensterung. Wie bringt man die Daten wieder zusammen, wenn gefenstert
wurde?
Wenn Ich z.B: einen EQ baue, dann muss in der Stellung 1:1:1 für ale
drei Bänder wieder eine 1 rauskommen. Wäre es richtig, das Fenster nur
zum Interpretieren der Lautstärke zu benutzen und beim Mischen ohne
Fenster zu arbeiten?
Moin,
W.S. schrieb:> Das gilt nur für Filter mit ungerader Länge. Bei gerader Tapanzahl> müßtest du m.E. auf die beiden mittleren jeweils 0.5 addieren.
Ja, fast. Eigentlich muesste dann ein um u=(x+0.5) verschobener sinc(u)
statt dem Einheitsstoss hergenommen werden. Weil der aber unhandlich
lang ist, muesste man ihn abschneiden und fenstern und's waer immer noch
problematisch. Besser Filter mit ungerader Anzahl Koeffizienten nehmen
und sich Aerger ersparen.
Thomas W. schrieb:> Ich habe es jetzt so gemacht, wie ursprünglich mal angedacht,> nämlich> einfach die Koeffizienten von 1 abgezogen. Es bleibt jetzt das Thema der> Fensterung. Wie bringt man die Daten wieder zusammen, wenn gefenstert> wurde?
Erst Tiefpasskoeffizienten berechnen, von mir aus incl. Fensterung. Das
ergibt den Tiefpass (Ach).
Diese dann von dem verschobenen Einheitsstoss abziehen; das ergibt den
Hochpass.
Wenn man die Daten wieder zusammenbringen will: Die Samples aus Tief-
und Hochpass einfach wieder addieren.
> Wenn Ich z.B: einen EQ baue, dann muss in der Stellung 1:1:1 für ale> drei Bänder wieder eine 1 rauskommen. Wäre es richtig, das Fenster nur> zum Interpretieren der Lautstärke zu benutzen und beim Mischen ohne> Fenster zu arbeiten?
Hae?
Fuer so einen 3-Band EQ wuerd' ich auch erst TP (mit Grenzfrequenz A),
dann HP (mit Grenzfrequenz B)designen; beide als FIR mit gleicher
Laenge. Dann beide aufaddieren; von einem verschobenen Einheitsstoss
abziehen; und das dann als "Bandpass" verkaufen.
Die 3 Ausgangssignale dieser 3 Filter dann gewichtet wieder
aufsummieren; die Gewichtung stellt dann halt die Klangregelung dar.
Gruss
WK
Vorteil dieser so konstruierten Filter: Egal, wie der Frequenzgang dann
tatsaechlich eingestellt wird - die Gruppenlaufzeit bleibt immer ueber
den gesamten Bereich konstant.
Gruss
WK
Eine Frage: Die Kurzen sehen für mich grundsätzlich ok aus. Aber der
Überschnitt der jeweiligen Kurven liegt bei -6dB. Sollten das nicht -3dB
sein?
Dann sehe Ich , dass der Verlauf unterhalb von -30dB ziemlich be....ssen
aussieht. Wie kriegt man das in den Griff? Mehr Filterbreite nehme ich
an?
Was bräuchte es für sagen wir -60dB?
Moin,
Carlo schrieb:> Eine Frage: Die Kurzen sehen für mich grundsätzlich ok aus. Aber> der> Überschnitt der jeweiligen Kurven liegt bei -6dB. Sollten das nicht -3dB> sein?
Nee, die Ausgangssignale der Filter sollen ja wieder aufsummiert werden
und dann an den jeweiligen Grenzfrequenzen keine Hubbel kriegen.
Wenn das Signal dann ausm Tiefpass mit -6dB rauskommt und das Signal
ausm Bandpass auch mit -6dB (=0.5) und ich addiere beide auf, bin ich
wieder bei genau 0dB - waeren es jeweils nur -3dB (=0.707) kaeme in
Summe +3dB raus. Ist so aehnlich wie bei Linkwitz-Riley Filtern.
> Dann sehe Ich , dass der Verlauf unterhalb von -30dB ziemlich be....ssen> aussieht. Wie kriegt man das in den Griff? Mehr Filterbreite nehme ich> an?>> Was bräuchte es für sagen wir -60dB?
Das kommt daher, weil ich - einer spontanen "Eingebung" folgend - die
Filterkoeffizienten alle auf 8bit Aufloesung runde. Wenn du da mit
hoeherer Aufloesung arbeitest...
Und die Filter kann man natuerlich auch laenger machen oder die
Filterflanken breiter - dann klappts auch mit -60dB.
Bloss fuer den 3-Band-Klangregelbetrieb muss das Filter garnicht so
"gut" sein - ueblicherweise gibts da ja eher nur so +-12...+-18dB
Einstellumfang.
Gruss
WK
Ich brauche nicht mal 18dB. Sind eher nur 6dB. Sollte aber schon genau
sein. Ich würde dann auch schon 16 Bit spendieren für die Koeffizienten.
Die Zwischenfrage finde ich aber schon interessant: wie es ausschaut,
nimmt z.B. der Bassfilter durchaus viele Höhen mit. Das darf auf keinen
Fall sein. Basslautsprecher vertragen keine Höhen.
Moin,
Ja - aeh - ich weiss nicht so recht... Das Dingens von mir ist
hauptsaechlich als Beispiel gedacht, wie man sowas loesen koennte. Das
muss man nicht exakt so machen, da kann man auch komplett andere Filter
hernehmen, andere Frequenzen, genauere Koeffizienten, etc. Deshalb hab'
ich ja den Octavecode dazugeschrieben, damit jeder damit experimentieren
kann.
Hier ein Bild, wo die Filterkoeffizienten 16bit genau sind und die
Filter auch eine um je 1/8 verbreiterte Flanke haben - aber noch die
selbe Anzahl Koeffizienten wie vorher.
Thomas W. schrieb:> wie es ausschaut,> nimmt z.B. der Bassfilter durchaus viele Höhen mit. Das darf auf keinen> Fall sein. Basslautsprecher vertragen keine Höhen.
Hm? Wo'n?
Zur Erlaeuterung (ich bezieh' mich ab jetzt auf's obere Bild, mit den
8bit Koeffizenten, also nicht das Bild an diesem Post):
Das gruene ist der Tiefpass. Der hat dann von mir aus - wenn er eben nur
mit 8bit breiten Koeffizienten berechnet wird, bei einer normierten
Frequenz von vielleicht 310/512 - das wuerde dann bei 48kHz
Samplingfrequenz einer Frequenz von 14.53kHz entsprechen, seine
"schlechteste" Sperrdaempfung von ca. 36dB. Das heisst dann: Haette ich
eine Endstufe mit 4000W Leistung und ich wuerde einen Tieftoener ueber
so ein Filter anschliessen, dann bekaeme der bei 14.53kHz 1W (i.w. Ein
ganzes Watt) faelschlicherweise aus dem Filter ab.
Da das ganze Dingens aber doch als Klangregler laufen soll, wird doch zu
dem Ausgang des Tiefpasses der andere Kram eh wieder dazuaddiert - mit
dem jetzt geforderten +/- 6dB Einstellbereich - d.h. die Leistung bei
14.53kHz ist dann einstellbar zwischen 2000W und 8000W. Wen kratzt da
das eine popelige Watt, das der olle Tiefpass auch nur deswegen
durchlaesst, weil er so simpel und ungenau gestrickt ist, dass das alles
wahrscheinlich sogar auf einem AVR laufen wuerde ;-) ?
Gruss
WK
Moin,
Dergute W. schrieb:> - d.h. die Leistung bei> 14.53kHz ist dann einstellbar zwischen 2000W und 8000W.
Huups - Fehler gemacht; es muss heissen:
zwischen 1000W und 16000W.
Gruss
WK
Dergute W. schrieb:> Nee, die Ausgangssignale der Filter sollen ja wieder aufsummiert werden> und dann an den jeweiligen Grenzfrequenzen keine Hubbel kriegen.
Das Prinzip ist klar. Nur fehlt mir manchmal der Blick, wann man mit 6dB
arbeiten muss:
Log2 (0,5) ist ja -0,3 und in Dezi sind das 3dB.
Irgendwie steckt hier aber wieder die Leistung und damit 20*log(x) drin,
nehme ich an. Das war, weil es Spannungen waren und die Leistung mit dem
Quadrat ging, oder?
Warum nimmt man dann bei Filtern die 3dB als Eckfrequenz?
Bei -3 dB halbiert sich die Leistung oder die Amplitude sinkt auf etwa
70 %. Kann man so berechnen: 10*log10(0.5) ist ca -3 dB. Das ist die
Definition für die Leistung. Für Amplitude nimmst du den Faktor 20 statt
10. Anders herum ist 10^((-3 dB)/20) = 0.7079, also die 70 %
Du brauchst 6 dB weil du Amplituden anguckst und eben die Hälfte davon
haben möchtest.
Carlo schrieb:> Warum nimmt man dann bei Filtern die 3dB als Eckfrequenz?
Bin nicht sicher, aber aber 6 dB gelten natürlich nur, wenn die beiden
zu addirenden Signale gleiche Amplitude und keine Phasenverschiebung
haben. Ich nehme aber sn, dass an der Grenzfrequenz Hoch- und Tiefpass
auch noch phasenverschobene Signale liefern und somit komplex addiert
werden muss. Dann braucht man natürlich mehr Amplitude.
Gerhard
Jan K. schrieb:> Bei -3 dB halbiert sich die Leistung oder die Amplitude sinkt auf etwa> 70 %. Kann man so berechnen: 10*log10(0.5) ist ca -3 dB. Das ist die> Definition für die Leistung. Für Amplitude nimmst du den Faktor 20 statt> 10. Anders herum ist 10^((-3 dB)/20) = 0.7079, also die 70 %>> Du brauchst 6 dB weil du Amplituden anguckst und eben die Hälfte davon> haben möchtest.
ok, stimmt, die Amplituden müssen sich zu 1 ergänzen.
Aber: Die Leistung geht mit Uhoch2. In dem Punkt, in dem die Spannung
auf die Hälfte abgesunken ist, also in diesem Fall 6dB, betrüge die
Leistung nur noch ein Viertel.
Nimmt man dieselbe Leistung des anderen Signals hinzu, habe ich
rechnerisch 2x 1/4 = die halbe Leistung. Das ist aber nicht so, oder?
Wo ist der Denkfehler?
Moin,
Carlo schrieb:> Warum nimmt man dann bei Filtern die 3dB als Eckfrequenz?
Das tut man halt dann, wenns grad' passt. Und manchmal passen halt 6dB
bei der Eckfrequenz besser. Daher Obacht geben bei Grenzfrequenzangaben
von Filtern. 3dB sind nicht in Stein gemeisselt.
Gerhard schrieb:> Ich nehme aber sn, dass an der Grenzfrequenz Hoch- und Tiefpass> auch noch phasenverschobene Signale liefern und somit komplex addiert> werden muss.
Allgemein ist das so, aber speziell bei dieser Kombi von TP, HP und
daraus abgelittenem BP ist gerade der Witz, dass das da mit den
Phasenverschiebungen, etc. wunderbar hinhaut. Die 3 Filter haben immer
exakt die gleiche Gruppenlaufzeit. Da kann man dann prima solche Faxen
machen. Achtet man bei den verschiedenen Filter nicht auf sowas, sind
Loecher im Frequenzgang fast schon vorprogrammiert.
Carlo schrieb:> Nimmt man dieselbe Leistung des anderen Signals hinzu, habe ich> rechnerisch 2x 1/4 = die halbe Leistung. Das ist aber nicht so, oder?
Ja, das ist so aehnlich, wie wenn du 2 Wechselspannungsquellen hast,
meinetwegen jede mit 1Veff. Jede davon schliesst du an jeweils einen
1Ohm Widerstand. Dann gibts 2W Heizleistung. Schaltest du jetzt beide
Spannungsquellen in Reihe und schliesst beide Widerstaende in Reihe an,
wirds spannend:
Allgemein ist's dann auch so, dass dann 2W umgesetzt werden (Auch wenns
erst keiner wahrhaben will). Sonderfall ist aber, wenn beide
Wechelspannungsquellen frequenzmaessig irgendwie korreliert sind. Dann
kann die Gesamtleistung irgendwo zwischen 0..4W liegen...kommt halt auf
die Phasenlage der Quellen zueinander an.
Da hier aber die Ausgangssignale aus TP,HP und BP aus dem selben
Eingangssignal stammen, sind die korreliert und wegen den gleichen
Gruppenlaufzeiten wird die Addition auch wieder schoen simpel. Daher 6dB
statt 3dB ;-)
Gruss
WK
Dergute W. schrieb:> Das gruene ist der Tiefpass. Der hat dann von mir aus - wenn er eben nur> mit 8bit breiten Koeffizienten berechnet wird, bei einer normierten> Frequenz von vielleicht 310/512 - das wuerde dann bei 48kHz> Samplingfrequenz einer Frequenz von 14.53kHz entsprechen, seine> "schlechteste" Sperrdaempfung von ca. 36dB. Das heisst dann: Haette ich> eine Endstufe mit 4000W Leistung und ich wuerde einen Tieftoener ueber> so ein Filter anschliessen, dann bekaeme der bei 14.53kHz 1W (i.w. Ein> ganzes Watt) faelschlicherweise aus dem Filter ab.
Wenn das angesteuerte Signal glatt ist, ja - wenn der Pegel der hohen
Prequenzen aber sehr hoch ist im Vergleich zum Bass, sieht das anders
aus. Trotzdem danke für das Beispiel. Quantitativ scheint es also kein
Problem zu sein.