2010-12-02 6 views
5

Ich benutze einen FIR-Filter, um Audio zu überspielen. Es ist ein einfacher typischer windowed sinc, d. H. Eine sinc-Funktion, abgeschnitten und gefenstert. Wie üblich erfordert es, dass frühere und zukünftige Proben funktionieren. Praktisch bedeutet dies, dass die Audioausgabe verzögert ist. Die Sinc-Funktion ist ein idealer Tiefpassfilter. Meine Frage, was ist das Äquivalent, außer dass keine "zukünftigen" Proben benötigt werden. Ich denke, diese Funktion ist die gleiche wie die Impulsantwort eines Brick Wall IIR Filters. Es wird einen perfekten Ziegelstein-Cutoff haben, aber keine perfekte Phasenreaktion haben.Tiefpass-FIR-Filter - ohne Latenz

Antwort

8

Wenn Sie eine bestimmte Frequenzantwort wünschen, dann würde ein minimaler Phasenfilter die niedrigste "Verzögerung" oder Latenz des IIR- oder FIR-Filters mit dieser Antwort bereitstellen. Ein IIR-Filter mit all seinen Polen und Nullen innerhalb des Einheitskreises wäre ein minimaler Phasenfilter. Ein minimaler Phasenfilter ist auch keine lineare Phase, daher müssen Sie diese Einschränkung freigeben, um die Latenz zu reduzieren. Ein FIR-Filter kann durch Cepstum-Techniken (siehe Oppenheim & Schafer) oder durch numerisches Auflösen für einen IIR-Filter mit einem ähnlich ausreichenden Frequenzgang, Umpolen aller Pole und Nullen und Umsetzen einer geeignet gefensterten Impulsantwort näherungsweise in die Minimalphase umgesetzt werden zu einem FIR-Filter. Wenn Sie versuchen, eine geringere als die minimale Phasenverzögerung zu erhalten, werden die Übergangsbänder eines Filters so lange abgeflacht, bis der Filter bei einer Verzögerung von "Null" entweder nichts zurückweisen oder alles ablehnen müsste und somit nutzlos werden würde.

+2

Prost, um eine niedrige Latenz zu erhalten, verzichten wir auf die lineare Phase. – Jeff