Bezug nehmend auf meinen Thread: Beitrag "µC-getriebene Frequenzweiche für Digitalverstärker" Ich habe beim folgenden Problem irgendwie eine Denkblockade: Das Audiosignal wird mit 100 kHz (96 kHz gerundet) abgetastet. Um den Frequenz- und Phasengang anzupassen, möchte ich einen 1000 TAPS (1024 gerundet) FIR-Filter einsetzen. Den unteren Frequenzbereich kann ich dann allerdings nur noch mit 100 Hz (100 kHz / 1000) auflösen, was mir zumindest für den Bass- und Subbass-Bereich zu grob ist. D.h. ich muss vor dem Filtern das Signal downsamplen und anschließend wieder upsamplen. Ich wollte da folgende Stufen vorsehen: 1x, 2x, 4x, 8x, 16x 16x würde mir eine Frequenzauflösung von ca. 6 Hz ermöglichen was für alle normalen Anwendungsfälle reichen sollte. Ich tue mich gerade schwer darin abzuschätzen, wie breit die Filter für das Down- und Upsampling als FIR ausgelegt sein müssten. Wie kann man das abschätzen? Was mir auch noch eingefallen ist: Macht es vielleicht mehr Sinn zum Down- und Upsampling einen IIR-Filter einzusetzen? Die dadurch erzeugten Abweichungen im Phasengang ließen sich ja mit dem FIR-Filter dazwischen wieder ausbügeln, oder wäre dessen zeitliche Auflösung zu grob dafür? Vielen Dank für einen Wink in die richtige Richtung. Kai
>>Den unteren Frequenzbereich kann ich dann allerdings nur noch mit 100 Hz >>(100
kHz / 1000) auflösen, was mir zumindest für den Bass- und >>Subbass-Bereich zu
grob ist.
Nein, Frequenz/Phasengang eines FIR-Filters ist kontinuierlich, da
darfst Du ne beliebige Frequenz reinstecken und es kommt was raus.
Möglicherweise schmeist Du das mit dem Abstand der Spektrallinien einer
FFT durcheinander. Es gibt nichts down/upzusampeln: Du hast Deine 96ks/s
und Dein 1000 Tap FIR, das ist alles schön. Es gibt eigentlich nur zwei
Fragen:
Kann Deine Hardware das Filter rechnen?
Kann ein 1000 Tap FIR das leisten, was Du willst?
Cheers
Detlef
>Möglicherweise schmeist Du das mit dem Abstand der Spektrallinien einer >FFT durcheinander. Gut möglich - ich hatte denen ähnliche Eigenschaften unterstellt. >Kann Deine Hardware das Filter rechnen? Gibt noch keine Hardware - nur jede Menge Papier mit Rechnungen drauf :) >Kann ein 1000 Tap FIR das leisten, was Du willst? Wenn der im unteren Frequenzbereich noch gut genug auflöst, dann ja. Welchen Nachteil hat es denn dann, wenn man weniger Taps verwendet? Wofür verwendet man dann überhaupt das Downsampling bei digitalen Filtern im Bassbereich? Danke und Gruß Kai
Kai Giebeler wrote: >>Möglicherweise schmeist Du das mit dem Abstand der Spektrallinien einer >>FFT durcheinander. > Gut möglich - ich hatte denen ähnliche Eigenschaften unterstellt. Bei einer Abtastfrequenz von 102.4kHz und 1024 Abtastwerten beträgt der Abstand der Spektrallinien der FFT 100Hz. Das hat aber mit einem FIR Filter mit 1024 TAPS nichts zu tun. Da darfst Du natürlich bei 102.4kHz Abtastrate ein 300Hz Signal reinstecken, ein 400Hz Signal und eines von 350 Hz. Wie Du von der Übertragungsfkt. H(z) zum Frequenzgang H(exp(jw)) kommst steht in jedem Signalverarbeitungsbuch. >>Kann ein 1000 Tap FIR das leisten, was Du willst? > Wenn der im unteren Frequenzbereich noch gut genug auflöst, dann ja. Das hängt von den Anforderungen ab, die Du stellst. Wenn die Dämpfung bei 30Hz 0dB sein soll und bei 37Hz soll sie 50dB betragen, dann wird das schwierig. Dazu braucht man dann viele Taps. > Welchen Nachteil hat es denn dann, wenn man weniger Taps verwendet? Du kriegst möglicherweise die Dinge nicht hin, die du willst: steile Filterflanken, kurze Impulsantworten, wenig echos, langen Faltungshall .... > > Wofür verwendet man dann überhaupt das Downsampling bei digitalen > Filtern im Bassbereich? > Ich vermute: Die Grenzfrequenz ist niedrig, sodass man downsamplen kann ohne Nyquist zu verletzen. Mit niedrigerer Abtastrate und gegebener Rechenleistung gibts dann mehr verfügbare Taps und man kann coolere Sachen machen. Audio@100ks/s sollte jeder DSP gut können, 1000 TAPS bei 100kHz sind 0.1 MMAC, jeder Mittelklasse DSP hat 100MMACS, die fetten Spezialteile haben 3000. Gute Nacht Detlef
> Audio@100ks/s sollte jeder DSP gut können, 1000 TAPS bei 100kHz sind 0.1 > MMAC, jeder Mittelklasse DSP hat 100MMACS, die fetten Spezialteile haben > 3000. Hallo, bei mir kommen aber ein paar mehr MMACS raus: 100 kHz Abtastrate, 1000 Taps => 1000 MACS pro Abtastwert, 100000 Abtastwerte pro Sekunde ergibt: 100 Mio. MACs pro Sekunde = 100 MMACS Dein "Durchschnitts-DSP" wäre damit also bis zum Anschlag ausgelastet.
>>Autor: Detlef _a (detlef_a) >>Datum: 21.06.2008 01:09 Ähm, sollte um diese Uhrzeit nichts mehr schreiben, Du hast natürlich Recht. Sorry Detlef
Uff... Danke FL - ich dachte schon, ich hätte wieder die Hälfte von dem Thema falsch verstanden :)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.