Ich muss zu dem Thema auch mal ein paar Worte verlieren. Wobei ich nocht nicht so ganz verstanden habe wo Rumgucker hin will.
Ich gehe davon aus, dass die Spannung die in der Sounddatei gespeichert ist einem Schalldruckpegel entspricht. Unser Ziel ist es nun, dass dieser Schalldruckpegel auch am Ohr anliegt.
Das erste Problem ist der Lautsprecher.
Ganz Simpel ausgedrückt haben wir hier ein gedämpftes Masse-Feder-System.
Dieses wird über ein Magnetfeld mit einer Kraft F angeregt.
Hierbei treten etliche Probleme auf:
Die Kraft ist proportianal zum Strom. Bei einer Spule ist aber der Strom frequenzabhängig.
Ein Masse-Feder-System hat meistens eine Resonanzfrequenz.
Die Dämpfung in Form vom Luftwiderstand ist nicht linear.
Die Ausbreitungsgeschwindigkeit vom Schall ist sehr gering. Deswegen kann es theoretisch auf der Lautsprechermembrane zu einer Modenausbildung kommen.
Das zweite Problem ist das Medium die Luft.
Aufgrund der geringen Ausbreitungsgeschwindigkeiten kommt es hier zu einer Wellenausbreiten. Das heißt, dass der Schalldruck vom Ort abhängig ist.
Also selbst wenn sich alle Fehler herrausrechnen lassen, hört man nur an einer Stelle im Raum optimal.
Das ist eine physikalische Begrenzung
So weit ich weiß ist das Übertragungsverhalten von Luft nicht linear.
Eine Regelung im Sinne von Ist-Soll-Vergleich ist mit den typischen PID-Reglern unmöglich! Aufgrund der niedrigen Schallgeschwindigkeit kommt es zu Signallaufzeiten. Es wird also unmöglich, das Stabilitätskriterium einer Regelung einzuhalten.
Zitat:Original geschrieben von Rumgucker
Also beschreiben 48000 Abtastwerte pro Sekunde Musik derart gut, dass wir zufrieden sind.
Unter der Bedingungn, dass im Signal nur Frequenzanteile kleiner als 24kHz enthalten sind, lässt sich das Signal mit 48000 Abtastwerten pro Sekunde zu 100% rekonstruieren.
Natürlich kommt es aufgrund der nicht diskreten Auflösung zu kleinen Fehlern in der Amplitude.
Wenn man ein lineares System mit einem definierten Signal anregt und den Ausgang des Systems misst, kann man die Übertragungsfunktion des Systems bestimmen.
Beispiel:
Lautsprecher wird mit definierter Spannung angeregt.
Signal durchdringt Medium Luft.
Signal wird von einem Mikrofon gemessen.
Spannung wird gemessen.
Wenn man die Spannung am Lautsprecher und die Spannung am Mikrofon kennt lässt sich die Übertragungfunktion bestehen aus Lautsprecher, Luft, Mikrofon berechnen.
Hierzu müsste mittels DFT das Spektrum des anregenden und des empfangenem Signals bestimmt werden. Die Division der beiden Spektren ergibt dann die Übertragungsfunktion.
Ganz wichtig: Damit dies mathematisch funktioniert müssen wir von einem linearen System ausgehen!
Aus der Übertragungsfunktion lässt sich dann auch die inverse Übertragungsfunktion berechnen. Diese kann man als Filter programmieren. Man kann also das Soundsignal mit der inversen Übertragungsfunktion filtern.
Hierbei muss nur beachtet werden, dass die inverse Übertragungsfunktion einen nicht kausalen Filter ergibt. Ein nicht kausaler Filter ist analog unmöglich aufzubauen, da man zum Filtern wissen muss, welcher Eingangswert zu einem später Zeitpunkt anliegt.
Das ganze lässt sich aber digital lösen, indem die Musikdatei zeitversetzt ausgegeben wird. Man müsste quasi die Musikdatei vorm abspielen komplett lesen, auf diese den Filter anwenden und dann das neue Signal ausgeben.
Habe soetwas mal auf der arbeiten gemacht um zu simulieren, wie sich bestimmte Übertragungsfunktionen auf ein Zeitsignal ausüben.