Convolving/Falten: Was ich immer schon fragen wollte

Antworten
bvk
Aktiver Hörer
Beiträge: 545
Registriert: 19.01.2011, 19:01
Wohnort: Stuttgart

Convolving/Falten: Was ich immer schon fragen wollte

Beitrag von bvk »

Nicht im technischen Detail aber im Grundsatz ist mir der Vorgang der Erstellung eines Korrekturfilters, glaube ich zumindest, klar: Ein gemessenes „Ist“ Ergebnis wird mit einem definierten „Soll“ verglichen. Aus den Abweichungen kann die Software einen individuellen Korrekturfilter berechnen.

1. Hier verstehe ich den Fachbegriff „Taps“ nicht. Handelt es sich um „Korrekturpunkte“ oder um Ablesepunkte? Wenn ja bezogen auf was, auf den abgedeckten Frequenzbereich, oder pro Zeiteinheit

2. Wie wirkt sich die Samplingrate aus? Wird ein 44 kHz Signal anders behandelt als ein 192 kHz Signal?

3. Der erstellte Filter wird in die Convolver Software geladen, was tut dann der Convolver? Warum ist die erstellte Korrekturdatei eine .waf also eine Audiodatei? Wird diese sozusagen als Matrize für einen Equalizer gelesen?

4.Warum heißt der Vorgang „falten“?

Beste Grüße,

Bernd
Bild
Buschel
Aktiver Hörer
Beiträge: 989
Registriert: 12.12.2013, 20:12
Wohnort: Raum Karlsruhe

Beitrag von Buschel »

Hi Bernd,

ich fange mal hinten an:

4. Faltung ist ein Fachbegriff aus der Mathematik (wikipedia). Der Wikipedia-Artikel zeigt sehr anschaulich wie das funktioniert. Das dazu passende Verb ist "falten". ;)

3. Das englische Wort für "falten" is "to convolve". Der Convolver ist also die Gerätschaft, die eine Faltung ausführt, d.h. ein Filter auf ein Signal anwendet. Die Eingangsdatei ist ein Filter, die sogenannte Impulsantwort. Diese besteht aus einer Folge von Zahlenwerten (Koeffizienten), die sich auch als wav-Datei speichern lässt.

1. In Acourate werden sogenannte FIR-Filter eingesetzt. Das steht für Finite Impulse Response, also endliche Impulsantwort. Konkret heisst das, die Filter haben eine feste (endliche) Länge -- bei Acourate z.B. 65536 Filterkoeffizienten oder auch "taps".

2. Ein in Acourate berechnetes FIR-Filter bezieht sich immer auf eine bestimmte Abtastfrequenz. Beispiel 1: Du definierst ein Filter für 48 kHz Abtastfrequenz, welches eine Raummode bei 100 Hz ausblendet. Wendest du dieses Filter jetzt bei einem 192 kHz Signal an, wird das Filter bei 400 Hz wirken. Beispiel 2: Du berechnest zwei Filter gleicher Länge (z.B. 65536 taps), eines für 48 kHz und eines für 192 kHz. Das Filter für 48 kHz hat dann eine höhere Frequenzauflösung, d.h. kann schmalbandiger wirken, als das für 192 kHz berechnete. Die Frequenzauflösung der Filter entspricht Abtastfrequenz : taps.

Ich hoffe das hilft schon mal.

Viele Grüße,
Andree
Raumantwort
Aktiver Hörer
Beiträge: 136
Registriert: 25.03.2014, 12:12
Wohnort: Allgäu

Beitrag von Raumantwort »

Hi Bernd,

1. Taps sind die Anzahl an Abtastwerten im Zeitsignal. Je mehr Taps ein Filter hat, desto genauer wird es, weil mehr Stützpunkte für den Frequenzgang vorhanden sind. Lange Filter haben aber eine höhere Durchlaufzeit und benötigen mehr Rechenleistung beim Falten.

2. Jede Samplingrate bekommt ihr eigenes Filter. Man misst mit einer Samplingrate mit der das Mikro gut klarkommt (48kHz). Aus der Messung werden dann die ganzen Filter für alle gewünschten Samplingraten erstellt.

3. Je nach verwendeter Convolver Software sind es andere Dateien. Die Convolver Software verrechnet (faltet) den ankommenden Datenstrom mit einer mathematischen Operation.

4. Faltung ist ein Begriff aus der Mathematik, ähnlich einer Multiplikation. Da die in Acourate erstellten Filter FIR Filter sind kann man ein Musiksignal z.B. mit -1 falten, danach mit +1 und erhält wieder das original Musiksignal.

Kennst du das Wiki? http://www.audiovero.de/acourate-wiki/doku.php

Da steht auch etwas über die Grundlagen und was man noch so mit Acourate anstellen kann.


schöne Grüße
Andreas
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4658
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Beitrag von uli.brueggemann »

Angenommen ein Signal bestehend aus den Samples [1,2,1] soll mit einem Filter, bestehend aus den Koeffizienten oder taps [2,0,1] gefaltet werden. Das klappt noch zu Fuss, indem jedes Signalsample mit jedem Filtertaps multipliziert wird. Anschliessend wird noch summiert. Das sieht dann so aus:

Code: Alles auswählen

[1,2,1] x [2,0,1} =
                    [2,4,1    ] +
                    [  0,0,0  ] +
                    [    1,2,1] = 
                                  [2,4,2,2,1]
als Resultat. Das ist dann um ein Sample kürzer als die Summe der Samples aus Signal und Filter.

Bei der Signalverarbeitung passiert das also "sampleweise".

Wir kennen übrigens so etwas auch sehr ähnlich aus der Schule bei der Multiplikation. Dort wird aber stellenweise miteinander multipliziert und dann addiert. Der Vergleich hört dann da bereits auf, weil dann bei Überlauf des Zahlenbereichs (Summe > 9) dann ja ein Übertrag auf die nächste Dezimalstelle erfolgt. Was bei der Faltung nicht so ist.

Für obiges Beispiel wäre dann

Code: Alles auswählen

121 * 201 =
            242 +
             000 +
              121 =
                    24321
Zumindest das Falten sollte nun vom Prinzip her klar sein.

Grüsse
Uli
Bild
bvk
Aktiver Hörer
Beiträge: 545
Registriert: 19.01.2011, 19:01
Wohnort: Stuttgart

Beitrag von bvk »

Was ich schon immer fragen wollte,

wurde im wesentlichen für mich verständlich beantwortet. Ihr habt das gut und vor allem für Mathematik Banausen nachvollziehbar erklärt. Bei " Faltung" hatte ich zunächst nicht an einen mathematischen Begriff gedacht. Nach den Antworten hier habe ich noch Wikipedia zu Rate gezogen. Dort ist ua. eine kleine Animation zu sehen, welche eine Faltung auf ein Sinussignal bezogen anschaulich beschreibt.

Danke + Grüße, Bernd
Bild
Nova Auralis
Aktiver Hörer
Beiträge: 109
Registriert: 27.04.2015, 13:43
Wohnort: Rhein-Sieg-Kreis

Beitrag von Nova Auralis »

Hallo,

ich möchte noch einmal Fragen 1 und 2 von Bernd aufgreifen, denn bei mir hapert es bisher beim Verständnis des praktischen Bezugs. Dass die Anzahl Filtertaps pro Samplingrate die Frequenzauflösung und damit die Schmalbandigkeit möglicher Korrekturen bestimmt, ist mir soweit klar. Welche Einschränkungen und vor allem welchen klanglichen Einfluss gibt es aber noch weiter?

Speziell auf die Praxis bezogen: Mit einer zu geringen Frequenzauflösung (beispielsweise >20 Hz) lassen sich natürlich keine genauen Korrekturen bezüglich Raummoden mehr durchführen, ich bevorzuge da aber eh "physikalische" Maßnahmen. Möchte man allerdings nur Frequenzweichen mit bestimmter Flankensteilheit per FIR Filter implementieren sowie sanfte Korrekturen im Frequenz- (Zielkurve und Chassis-Einzelkorrektur) und Zeitbereich (Gruppenlaufzeitentzerrung) am Lautsprecher durchführen, so ist die Frage ob es hierbei praxisrelevante Einschränkungen gäbe?

Wie wirkt sich ferner die Frequenzauflösung der Filter sowie die Samplingrate beim Falten klanglich aus? Würde beispielsweise ein Rechnen mit 32 Bit Floating Point, 48 kHz und einer Frequenzauflösung von 20 Hz noch "audiophilen" Ansprüchen gerecht, sofern nur CD-Qualität (16 Bit / 44,1 kHz) bei den Aufnahmen zur Verfügung steht?

Wer nachrechnet wird feststellen, dass ich mich mit dem letzten Beispiel auf die 9600 Taps vom miniSHARC mit 4x8 Plugin beziehe.

Beste Grüße,
Jannis

@Uli: Ich dachte mir, ich habe dich bereits zu Genüge bzw. im Übermaß per PN mit Fragen gelöchert, deswegen meine erneuten Fragen nun öffentlich... :wink:
Bild
Antworten