![]() |
|
Freeware zum Offlinefalten? - Druckversion +- diy-hifi-forum.eu (https://diy-hifi-forum.eu) +-- Forum: Archiv (https://diy-hifi-forum.eu/forumdisplay.php?fid=198) +--- Forum: Elektronik (https://diy-hifi-forum.eu/forumdisplay.php?fid=8) +---- Forum: Allgemeine Themen (https://diy-hifi-forum.eu/forumdisplay.php?fid=87) +---- Thema: Freeware zum Offlinefalten? (/showthread.php?tid=2873) Seiten:
1
2
|
Freeware zum Offlinefalten? - Sleepwalker - 22.03.2012 The Alchemist schrieb:Wenn ich jetzt aber davon ausgehe, das Brutefir trickst, faltet Brutefir dann generell minimalphasig? Nein . Man muss sich das eher so vorstellen, das Brutefir alles weglässt wo sowieso 0 bei rauskommt, wärend die "echte" Faltung die Nullen mit rausgibt. Das Ergebnis ändert sich nicht, wie man bei dir an den Screenshots sehen kann. Es fehlen nur die sowieso bedeutlungslosen Nullen. Bei DRC kann man in der config einstellen ob das Ergebnis eher linear- oder minimalphasig sein soll. Um von minimalphasig auf linearphasig zu kommen hat der User KSTR im Hifi-Forum mal den Tipp gegeben, die min-phasige Impulsantwort (also das was du im REW als IR der EQs exportierst, und die zeitliche inverse zu falten. Zeitliche Inverse wäre die Impulsantwort zeitlich umgedreht, d.h. letzes Sample wird 1., vorletztes wird 2. usw. Vieleicht kann Audacity das sogar (Reverse?). Im Prinzip wäre es so, als würdest du die PCM-Datei falsch rum abspielen. Wenn Audacity das kann, exportierst du das Ergebnis, und faltest das mit dem Orginal (also nicht umgekehrtem) Impuls. Was dann rauskommt hat (sollte(?))den gleichen Frequenzgang, aber eine lineare Phase. Das Ergebnis hat dann nicht mehr einen Impuls irgendwo am Anfang, der dann ausschwingt, sondern etwas in der Mitte das symetisch ist. D.h. Aus- und Einschwingen sollte gleich aussehen. Ob man dann so hören sollte...da bin ich unsicher. IMO müsste das zu ordentlichem Preringing führen...aber wie gesagt...da bin ich unsicher. Freeware zum Offlinefalten? - slacky - 22.03.2012 Zitat:Nach meinen Verständnis wäre es (fast) egal wo die Nullen dranhängen, solange es Nullen sind. Abschneiden wäre ganz schlecht, weil das einem Rechteckfenster entspräche, mit den entsprechenden negativen Effekten.Soweit bin ich einverstanden: Faltung ist komplett kommutativ, assoziativ, distributiv. f*g=g*f Vertauschen von Signal und Filter ist also absolut unproblematisch. Die Länge des Ergebnisses der diskreten Faltung ist immer(!) gleich der Summe der Längen beider Signale zusammen -1. Das hat also nicht damit etwas zu tun ob man ein Filter mit 2 Impulsen hat sondern ist immer so. Das man in einem solchen Fall ein Echo hat liegt daran, dass bei der Faltung von "etwas" mit einem Impuls das "etwas" an die Stelle des Impulses verschoben wird. Da wir im Zeitbereich Falten entspricht das einer zeitlichen Verzögerung, denn ein Impuls am Anfang lässt das Eingangssignal sofort und ohne Verzögerung durch, während der Impuls am Ende des Filters das Eingangssignal nochmals wiedergibt. Echos in einer Kirche kommen daher, da das wiedergegebene (Sprache, Musik) mit der Raumimpulsantwort, welche viele Nebenimpulse hat, im Zeitbereich gefaltet wird bevor es an unser Ohr kommt. Zu dem Rest den du geschrieben hast: jein Das Ergebnis hat immer die Länge beider Signale zusammen -1. Wenn man 2 linearphasige Filter miteinander Faltet ist das Ergebnis auch stets linearphasig da der Impuls immer passend für die neue Gesamtlänge des Filters verschoben wird. Bevor man eine FFT für solche Zwecke von Filter/Signal macht, zero padded man die Signale auf die Länge des zu erwartenden Ergebnis: L+M-1 da sonst Informationen verloren gehen würden. Zitat:Für mich ist die Diskussion zu hochSie ist aber länger wenn eine ganz normale Faltungsoperation darauf angewendet wurde. Und das ist einzig und alleine davon abhängig wie Lange das Filter war. Das merkt man aber vielleicht garnicht, da z.B. ein 65k samples langes Filter bei einer Abtastrate von 44,1kHz für gerade mal etwas über 1s an Verlängerung verursacht. Zitat:Eine ergänzende Idee hätte ich allerdings noch. Ein Grund dass die Ausgabedatei nicht länger ist als die Eingangsdatei könnte sein, dass BruteFIR die zusätzlichen Koeffizienten zwar berechnet, aber noch nicht ausgibt, da es auf weitere Eingaben wartet.Ich glaube da könntest du Recht haben! Nachdem das erste Segment gefaltet wurde, werden die letzten M-1 samples abgeschnitten und abgespeichert. Das beschnittene Faltungsergebnis hat dann wieder die Länge der Buffer/des ursprünglichen Signals und wird nachdem es mit einem vorherig abgespeicherten Signalstücken (oder 0en falls es das erste ist) aufaddiert wird direkt ausgegeben. Das neuste abgespeicherte Signalstückchen wird dann auch wieder auf das nächste Faltungsergebnis am anfang aufaddiert um Ausschwingeffekte zu kompensieren. Wie man Brutefir jetzt dazu bewegen könnte die letzten samples noch mit auszugeben ist jetzt fraglich. Theoretisch sollte es reichen die Filterlänge auf die nächste 2er Potenz einzustellen, da er eigentlich zero padden sollte - könnte man ja mal testen. Wie man von minimum Delay auf linear Phase kommt weiß ich jetzt ehrlich gesagt nicht - nur umgekehrt. Normalerweise kommt man einfacher auf die linearphasigen Filter. Hier macht man am besten einfach die inverse Fouriertransformation vom Korrekturamplitudengang und hat direkt den linearphasigen Filterimpuls (evtl noch ein Fenster drüber). Freeware zum Offlinefalten? - Sleepwalker - 22.03.2012 slacky schrieb:Zu dem Rest den du geschrieben hast: jeinDavon bin ich auch ausgegangen als ich "damals" die Frage nach so einem Tool gestellt habe. Elmars Versuch habe ich nachgestellt und er hat recht: Das Ergebnis ist (mit Brutefir) nicht länger. |