Limiter der im Spektralbereich arbeitet?

arbeitet ein multibandlimiter so wie ich es die letzten beiträge beschrieben habe??
 
Der Waves Multiband Limiter arbeitet mit Spektralbändern, aber nicht mit Spektrallinien. Dabei wird das Signal in mehrere Bänder über [g=43]Filter[/g] zerlegt, jedes Band bzw. alle zusammen analysiert, im Gain geregelt und alles wieder zusammengeführt. Man kann durch Priorisierung bestimmen, welchem Band wieviel Energie entzogen wird (durch Variable [g=105]Gain[/g]), um einen [g=357]Peak[/g] im Zeitbereich zu verhindern. Das ist die Idee. Der Algorithmus arbeitet sehr dynamisch.

Hat deine Firma überhaupt einen Plan, was sie machen will, oder kassiert sie nur EU Fördergelder? :) Die müssen die Aufgabenstellung genau spezifizieren.

Eine "Spektrallinie" ist ein Dauersinus im Zeitbereich. Das kanns nicht sein. Das Kurzzeitspektrum kann man mit einer FFT berechen, das ist das Effizienteste, was überhaupt geht. Solch ein FFT Spektrum sagt jedoch nur bedingt was aus und nährt sich dem wahren Spektrum, wenn die FFT Dauer gegen sehr lange Werte geht.

Eine FFT ist aus anderen Gesichtspunkten ungeeignet, weil das Spektrum äquidistant aufgeteilt wird. Dadurch bekommt der [g=118]Bass[/g] viel weniger Koeffizienten ab als die Höhen. Will heissen: die Hälfte der Koeffizienten entfällt auf den Bereich von 10 bis 20 kHz, was wenig Sinn macht.

Also das Prinzip des Multibandlimiters macht also Sinn. Das gibt es aber schon.

Mausi
 
Hi,

Noch ein Aspekt, um dir die Arbeit noch schwerer zu machen
(bzw. was du in die Arbeit miteinfließen lassen kannst):
- Wenn man eine Überschreitung des Thresholds erkannt hat,
- dann auch ein passendes Spektralband (linie, wenn die Breite sehr dünn ist) und
- dann auch noch (und dann hast du schon sehr viel auf die Reihe gebracht) um wieviel dieses Spektralband gesenkt wird, dann ist noch 1 offen:

Wenn das irgendwann wirklich abgesenkt werden soll, mit welchem [g=43]Filter[/g]?
Normale [g=43]Filter[/g] verändern die Phase, verschieben also frequenzabhängig deine Signale in der Zeitebene. Dann kann sich durchaus wieder eine neue Spitze ergeben, die dann eben nicht Limitiert ist und durchaus höher sein kann als der Threshold. Abhilfe könnten da linear-phase [g=43]Filter[/g] (mittels FIR Algorithmus) bringen, die aber viel Rechenpower und außerdem begrenzte Genauigkeit aufweisen. Damit kann das gefilterte Ergebnis auch noch vom Plan abweichen.

Und über das ganze einen Regelkreis legen, vielleicht einen digitalen Deadbeat-Regler: GUTE NACHT. Das kann ich mir dann nur mehr offline vorstellen (oder mit einer [g=5]Latenz[/g] von ein paar Wochen *g).

Im Endeffekt wird es wahrscheinlich nur um die Herleitung einer Formel im rein theoretischen Bereich gehen, vermute ich mal.

lg. JayT.
 
ganz genau, es geht mir jetzt erst hauptsächlich mal um den mathematischen logarithmus, welches [g=43]filter[/g] das dann später umsetzt ist mir momentan noch egal :)

es wäre ja alles ganz einfach wenn man immer nach absenken einer "linie" (bereich) gleich immer eine fft macht, aber dauert halt viel zu lange. da sind wir uns einig oder?

hat jemand eine idee?
 
Ich hoffe, daß ich da jetzt nicht zu einfach denke, aber:

Den Pegel des jeweils abzusenkenden Spektrums/Liniendings in einem bestimmten Zeitfenster ist doch bekannt (Wurde ja bereits per FFT ermittelt).

Der Gesamtpegel zum gleichen Zeitfenster ja auch? (Brauchen wir ja allein schon, um [g=359]Threshold[/g]überschreitung feststellen zu können..)

Daraus können wir jedenfalls schnell ermitteln, und zwar per Subtraktion, was der Gesamtpegel des Restsignals (die Teilspektren, die nicht angefasst werden) ist. Restpegel = Gesamtpegel - Teilspektrumspegel.

Naja, stellen wir die Gleichung um, finden wir heraus, um wieviel man den Teilspektrumspegel absenken müssen, um den Gesamtpegel auf das gewünscht Niveau senken zu können.

Wenn wir in dB rechnen, dann müssen wir natürlich auch aufpassen, daß wir diese Zahlen nicht einfach so addieren/subtrahieren, sondern damit umgehen, wie man mit dB-Werten eben so umgeht.
Wie es uns u.A. der Meister Sengpiel lehrt :)
http://www.sengpielaudio.com/Rechner-db-volt.htm
 
Es ist erstmal die Frage, was man will. Absenken im Frequenzbereich, damit bestimmte Frequenzbereiche nicht zu stark herausstechen (Multibandkompressor), oder will man letztlich im Zeitbereich Peaks verhindern (Waves Multiband Limiter).

Wenn man das zweite will, Peaks verhindern, kommt es auf ganz stark die Phasenverhältnisse an. Einfach abzusenken ist nicht zwangsläufig die richtige Strategie. Es kann sein, dass das Absenken einer Spektrallinie den [g=357]Peak[/g] sogar erhöht, je nach Phasenlage.
 
Nääh, dat ist doch janz unwischtisch..

Dat is doch erstmal ne Diplomarbeit. Ob ma dit janze hintaher zu irgendwas brauchen kann, ist doch ne janz andere Frage :)
Mir sinn doch jetz im akademischen, vastehste ?
 
Diplomarbeit, Diplomarbeit ... :vermut:

also der "Effekt", den man erreichen will, soll ma nich na hinten losgehen. Phase beachten. Sonst klappt das nämlich nicht. Auch nicht während der Diplomarbeit.
 
also das mit der Phase stimmt schon, an das habe ich auch schon gedacht. zeigerdiagramme verdeutlichen dass ja ganz gut dass sogar bei absenkung trotzdem im gesammten ein anstieg zu verzeichnen sein kann.

zu der anderen frage:
ja es sollen überschreitungen im zeitbereich verhindert werden,
NICHT frequenzbänder dämpfen, damit man sie nicht mehr so stark hört.
es läuft halt natürlich darauf hinaus dass man frequenzbänder absenkt aber nur zu dem zweck damit im zeitberiech keine überschreitungen auftreten.


Den Pegel des jeweils abzusenkenden Spektrums/Liniendings in einem bestimmten Zeitfenster ist doch bekannt (Wurde ja bereits per FFT ermittelt).

eigentlich ja nicht weil ich fft komplett verhindern will, zum testen natürlich erlaubt

aber der beitrag geht schon irgendwie in die richtung die ich meine, problem verstanden :)
 
Ja wie jetzt - "eigentlich nicht"?
Wenn mir das Signal im Zeitbereich über einem Schwellwert liegt, muss ich ja irgendwie herausfinden können, in welchem Teilspektrum wieviel Energie ist. Dazu brauche ich die FFT. Dann erst kann ich ich zweiten Schritt ein Teilband auswählen, und dieses gezielt absenken.

Kann ich keine FFT machen, bleibt nur zu raten, wo die Energie steckt. Fürn Anfang würde ich diese Heuristik simpel gestalten: Ich würde davon ausgehen, durch eine Bassabsenkung einfach am meisten erreichen zu können :)

Ich versteh immer noch nicht so ganz, inwiefern sich dein Projekt von der Arbeitsweise eines ganz üblichen Multibandlimiters unterscheidet.

Willst du vielleicht auf einen Multibandlimiter hinaus, der autonom und intelligent die Übergangsfrequenzen zwischen den Bändern, sowie deren Thresholds festlegt?
 
nichtrauscher schrieb:
Willst du vielleicht auf einen Multibandlimiter hinaus, der autonom und intelligent die Übergangsfrequenzen zwischen den Bändern, sowie deren Thresholds festlegt?

Oder ein intelligenter dynamischer mehrbandiger Notchfilter?
 
nichtrauscher schrieb:

Kann ich keine FFT machen, bleibt nur zu raten, wo die Energie steckt. Fürn Anfang würde ich diese Heuristik simpel gestalten: Ich würde davon ausgehen, durch eine Bassabsenkung einfach am meisten erreichen zu können :)

man muss keine FFT machen. Filterbank, danach Power Messung in jedem Band. Multibandkompressoren/Limiter machen ja auch keine FFT.
 
mausi33 schrieb:
Filterbank, danach Power Messung in jedem Band
Eben das wird nicht gehen weil bei einer Leistungsmessung der Phasenanteil verloren geht, und er moechte ja sehr einfach gesprochen nur den Frequenzanteil rausdrehen der fuer das Maximum verantwortlich ist.

@mc360:
Du willst ja feststellen wie sich der Pegel durch einzelne Frequenzen oder Baender aendert. Das klingt meiner Meinung nach sehr nach ableiten, mit FFT also etwa d|y(x)| / dY(f). Die "d"s sollten natuerlich runde "d"s sein (partiell ableiten), aber grundsaetzlich wuerde ich versuchen das so anzugehen.

Was mich allerdings etwas wundert, warum du danach in einem hr-Forum fragst. Erstmal wird das ganz hier ziemlich zerredet, und dann ist das auch nicht unbedingt die Umgebung in der ich mir das Erstellen einer Diplomarbeit vorstelle. Ich will dich damit nicht angreifen, es wundert mich wie gesagt nur.

gruss, Chris
 
Hi Chris,

klar, du hast recht, aber ich bezog mich auf Nichtrauschers Antwort
und nicht auf das Problem an sich.

Ne "einfache komplizierte" Methode ist folgende:

Dein FFT Fenster muß gleitend laufen, also neues Sample -> FFT, nächstes Sample -> FFT usw.

Du klippst einfach das Signal im Zeitbereich.

Dann machst du eine FFT für das Originalsignal und eine für das geklippte Signal. Dann schaust du, wie der Fehler sich im FFT Spektrum verteilt. Dabei hast du auch die Phaseninformation gewonnen.

Dann baust du eine Art "Rampenfunktion", die langsam die Frequenzanteile zurücknimmt, angefangen "in der Vergangenheit", so daß beim Eintreffen des Clippingereignisses gerade das [g=99]Clipping[/g] verhindert wird.

ah ich verrat viel zuviel. Wozu eigentlich?
Wer Diplomarbeit macht, muss selber Ideen haben.
Vor allem wenn das durch eine Firma wirtschaftlich verwertet wird.

:)

Mausi
 
an derchris:

ich weiß dass das evtl das falsche forum dafür ist (wobei ich finde dass ein haufen kompetente leute hier sind die mir schon ein bisschen weiterhelfen könnten)
wo ich dir recht gebe ist, dass das ganze ein bisschen zerredet wird

du hast geschrieben:

Eben das wird nicht gehen weil bei einer Leistungsmessung der Phasenanteil verloren geht, und er moechte ja sehr einfach gesprochen nur den Frequenzanteil rausdrehen der fuer das Maximum verantwortlich ist.

genau das triffts! möchte das zeitsignal ja nur so ändern dass die eine spitze die über die schwelle "ragt" dann weg ist, und dass eben durch ändern des spektrums.
 
mc360 schrieb:

möchte das zeitsignal ja nur so ändern dass die eine spitze die über die schwelle "ragt" dann weg ist, und dass eben durch ändern des spektrums.

Dann machst du eine FFT für das Originalsignal und eine für das geklippte Signal. Dann schaust du, wie der Fehler sich im FFT Spektrum verteilt. Dabei hast du auch die Phaseninformation gewonnen.

ich bin erstmal raus hier.
 
mc360 schrieb:
möchte das zeitsignal ja nur so ändern dass die eine spitze die über die schwelle "ragt" dann weg ist, und dass eben durch ändern des spektrums.

Gut. Ein Spektrum aenderst du aber nicht mit einem Limiter sondern mit einem EQ.

Ein Limiter, auch ein Mehrband, andert den Pegel ueber alles oder seinem eingeschraenkten Frequenzbereich.

Aber selbst ein Mehrbandlimiter ist zu grob um nur das Frequenzband abzudaempfen das fuer den [g=357]Peak[/g] zustaendig ist.

Um also das Spektrum gezielt zu veraendern brauchst du einen Notchfilter.
 
mausi33 schrieb:
Dann machst du eine FFT für das Originalsignal und eine für das geklippte Signal. Dann schaust du, wie der Fehler sich im FFT Spektrum verteilt. Dabei hast du auch die Phaseninformation gewonnen.
Das wird so nicht funktionieren, durch das Clippen kriegst du Harmonische die ueber Aliasing wieder ins Audioband reinklappen. Oversampling bringt da auch nichts, da du nach einem Tiefpass der alles ueberm Audioband entfernt wieder evtl. uebersteuert bist.


@Wolfgang:
Das ist ja das Neue daran. ;)
Und dass das Ganze noch nicht ausgereift ist, ist denke ich ersichtlich. Aber Forschung heisst ja auch neue Wege zu gehen.

gruss, Chris
 
hi Chris,

Du klippst ja nicht das hörbare Signal, sondern machst das für die Analyse.

Das Aliasing geht mit ein, das stimmt. Trotzdem funktioniert es, da du eine Aussage darüber treffen kannst, was passieren würde, wenn du die Spetralanteile zurücknehmen würdest. Wie das ganze das "klingt", und warum man so verfahren muss, um zu klanglich guten Ergebnissen zu kommen, kann ich jetzt nicht sagen.
 
muss ja keine neue mathematische formel sein, wie man schneller von f nach t kommt wie mit einer fft soll ein algorithmus sein der einfach so ungefähr einen EINFACHEN (d.h. SCHNELLEN) zusammenhang zwischen absenken einer oder mehrerer spektrallinien mit dem verhalten des signals im zeitbereich wiedergibt...

Also suchst du eigentlich eine Heuristik, wenn ich dich richtig verstehe? Hast du da Vorgaben? Also du möchtest ja vermutlich keine Laufzeit-Heuristik, sondern eine Approximations-Heuristik!?

Ich habe das Thema jetzt sonst nur kurz überflogen, aber könntest du nicht das Signal in Frequenzbänder zu je etwa 750Hz aufteilen (32 scheint da ja gängig zu sein) und dann für jedes mit dem Viterbi Algorithmus bestimmen ob du es angleichen musst? Wäre dann zwar wieder ein Algorithmus, aber "immerhin" Dynamic Programming :) Da findet man dann bestimmt eine entsprechende Heuristik. Verzeiht bitte wenn ich komplett auf dem Holzweg bin, aber ich war auch schon in der Uni heute :)

Gruß,
Florian
 

Oft gelesene Themen

Zurück
Oben