2016-07-13 16 views
0

Ich habe einen 13-Band-EQ mit EQ10Q Filter implementiert. Bei einigen Messungen mit der smaartV7-Software habe ich festgestellt, dass sich meine Bänder überschneiden und einen zusätzlichen unerwünschten Gewinn erzeugen. Ich denke, das liegt daran, dass ich jeden Filter über den gleichen Puffer (Serie) anwendete. Die Lösung, die ich mir ausgedacht habe, ist die Verwendung von 13 Puffern im 32-Bit-PCM-Format mit gleichen Originaldaten. Ich werde einen Filter auf jeden Puffer anwenden und dann alle Puffer zusammenführen (parallel). Ich habe also einige Zweifel.Apply Audio-Filter parallel und fusionieren Sie die Ergebnisse Puffer

  1. Ist meine Vorgehensweise korrekt?

  2. Wie soll ich die Puffer zusammenführen? (Ich habe versucht, alle Samples zu summieren und dann das Ergebnis durch 13 zu teilen, aber die Filterverstärkung wird mit dieser Methode stark reduziert).

HINWEIS: Ich will nicht den Q-Faktor meiner Filter ändern.

Antwort

0

Ich kenne die Filterbibliothek EQ10Q nicht, also schreibe ich einen Pseudocode für Sie.

Hoffentlich gibt der EQ10Q-Filterverarbeitungscode sein geändertes gefiltertes Sample zurück und benötigt keine Zeiger auf den Eingang. In diesem Sinne ist dies, wie ich in der Regel tun:

yn = filterOne.process(xn) + filterTwo.process(xn) + ... + filterThirteen.process(xn)

Dieser jede Probe Filterausgang summiert. Beachten Sie jedoch, dass Sie es selbst optimieren müssen ... die Verarbeitung eines Beispiels 13 separate Zeiten können intensiv sein, wenn Sie andere Dinge tun.