Biquad Problem bei tiefe Frequenzen und geringem Eingangspegel

Gast #2367717
Lesenswert?
• ▲
▼
Hallo,

ich habe ein Problem bei der Umsetzung eines Biquad Filters auf einem 
Fixed Point DSP (TMS320C5535) bei fs = 48kHz.

Als Vorlage dient das das folgende Dokument (peakingEQ):
http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt

Die Koeffizienten habe ich mit 2^14 skaliert, demnach muss das Ergebnis 
ja wieder um 14-bit nach unten geschoben werden. Das funktioniert soweit 
auch und die Genauigkeit der Koeffizienten scheint ausreichend zu sein, 
zu Überläufen kommt es auch nicht.

Hier das eigentliche Filter.
    result = ((c0 * (Int32)sample) +
             (c1 * x1) +
             (c2 * x2) -
             (c3 * y1) -
             (c4 * y2)) / SCALE;

mit c0 = b0/a0, c1 = b1/a0, c2 = b2/a0, c3 = a1/a0, c4 = a2/a0. sample 
ist Int16.

Probleme machen allerdings tiefe Frequenzen ab ca. 120 Hz.
Bei kleinem Eingangssignal klingt es als ob das Filter nicht reagiert 
und erst ab einem gewissen Eingangspegel funktioniert.

Ich weiß nicht so recht, wo das eigentliche Problem liegt. Evtl. bei der 
Quantisierung der Ausgangswerte? Wäre froh, wenn mir jemand auf die 
Sprünge helfen könnte.

Danke im Voraus

Sebastian

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.