Hallo, ich möchte aus einem Audiostream oder einer Aufnahme den Lautstärken-Verlauf und den spektralen Verlauf extrahieren. Das Ganze soll genau sein: also zeitlich genau, Laustärke und Spektrum auch zu jeder Zeit genau. Habt Ihr Tips für mich, wie ich da ran gehen könnte? in der angehängten Skizze ist eine grobe Idee, wie ich den Lautstärkenverlauf analysieren bzw. extrahieren könnte!??? Beim spektralen Verlauf habe ich keinen blassen Schimmer.
nooob schrieb: > Das Ganze soll genau sein: also zeitlich genau, Laustärke und Spektrum > auch zu jeder Zeit genau Genau. Wie genau denn bitte? nooob schrieb: > Beim spektralen Verlauf habe ich keinen blassen Schimmer. Lade dir audacity runter und schalte von Waveform- auf Wasserfall-Ansicht um. nooob schrieb: > in der angehängten Skizze ist eine grobe Idee, wie ich den > Lautstärkenverlauf analysieren bzw. extrahieren könnte Was dir klar sein sollte - die ursprüngliche Envelope des generierenden Systems bekommst du so nie heraus. Ersatzweise zum Spitzenwertgleichrichter kann auch die Summe über die Spektralanteile des Wasserfalldiagramms zu einem bestimmten Zeitpunkt herhalten. mfg mf
:
Bearbeitet durch User
Achim M. schrieb: > Genau. Wie genau denn bitte? Samplegenau bitte danke :) > audacity Wasserfall-Ansicht Mit dem Spektrum möchte ich mehr machen als bloß plotten, brauche also die Daten. Wasserfall-Ansicht ist ja eine FFT!? Bei meinem Halbwissen ist das Problem bei FFT, dass sie zum einen zeitlich ungenau ist (Window-Size verschmiert) und zum anderen die Frequenzbänder ungenau sind!??? Wie kann ich das exakter machen? (Meine vage Idee: Signal um 0 und 1 und 2 und 3 und ... und 63 Samples verzögern. Diese 64 Delaylines in 64 FFTs mit einer Windowsize von jeweils 64 Samples routen. Die 64 Ergebnisse irgendwie so kombinieren, dass ich samplegenau ein genaues Spektrum erhalte!?) >> in der angehängten Skizze ist eine grobe Idee, wie ich den >> Lautstärkenverlauf analysieren bzw. extrahieren könnte > Was dir klar sein sollte - die ursprüngliche Envelope des generierenden > Systems bekommst du so nie heraus. Warum nicht? > die Summe über die > Spektralanteile des Wasserfalldiagramms zu einem bestimmten Zeitpunkt verstehe. nur damit bin ich wieder am Anfang. Wie das Spektrum analysieren? Prinzipiell habe ich unendlich lange Rechenzeit zur Verfügung, muss nicht in Echtzeit sein. Freue mich über weitere Tips ""
D. Sundararajan Digital Signal Processing An Introduction Springer 2021 ISBN 978-3-030-62367-8 Edited by Richard G. Lyons Streamlining Digital Signal Processing A Tricks of the Trade Guidebook IEEE Press 2012
So ganz hab ich die Hilbert-Transformation noch nicht verstanden, aber wenn ich mir den Abschnitt "Anwendungsbeispiel" anschaue ist das doch genau das, was Du suchst, oder?: https://de.wikipedia.org/wiki/Hilbert-Transformation
nooob schrieb: > verstehe. nur damit bin ich wieder am Anfang. Wie das Spektrum > analysieren? nooob schrieb: > Bei meinem Halbwissen ist das Problem bei FFT, dass sie zum einen > zeitlich ungenau ist (Window-Size verschmiert) und zum anderen die > Frequenzbänder ungenau sind!??? > Wie kann ich das exakter machen? Einlesen :-) Spektrale-Hüllkurven werden in div. Audio-Codern eingesetzt. Um mit dem angesprochenem Problem der Zeit-Frequenz-Unbestimmtheit (Heisenberg-Unschärfe) umzugehen, gibt es eine Reihe von Möglichkeiten/Stichworten: * STFT (Short Time Fourier Transform) * SDFT (Sliding Window DFT) * MDCT (eine "lapped" Transform / modifizierte DCT-IV type) * Wavelet Filterbank mit QMF (Quadratur Mirror Filter) * Window Switching - also variable Fenstergröße abhängig vom zu analysierenden Audiomaterial (Kastagnetten z.B. erfordern eine kleinere Windowsize als ein länger gehaltener Akkord) ... und noch viel mehr. Was für Dich am besten passt, hängt vom jeweiligen Material, der geplanten Anwendung und dem zu spendierendem Aufwand ab. Octave/Matlab (zzgl. LTFAT) haben Algorithmen für viele der oben genannten Verfahren. Oder Du schaust Dir die Sourcen eines bestehen Audio-Coder Projekts wie z.B. https://github.com/Opendigitalradio/ODR-AudioEnc/tree/master/fdk-aac an. Ich kenne dieses Projekt nicht näher, aber sehe, dass eine libSBRenc dazugehört (SBR steht für "Spectral Band Replication").
:
Bearbeitet durch User
>Wie kann ich das exakter machen?
Mehr Taps.
DSP_Anfänger schrieb: > So ganz hab ich die Hilbert-Transformation noch nicht verstanden, aber > wenn ich mir den Abschnitt "Anwendungsbeispiel" anschaue ist das doch > genau das, was Du suchst, oder?: > https://de.wikipedia.org/wiki/Hilbert-Transformation Ich kann dem Anwendungsbeispiel nicht ganz folgen. Im einfachsten Fall hat man eine Sinusschwingung, also einen konstanten Ton. Die Hilbert Transformierte hiervon ist ebenfalls eine Schwingung. Mir leuchtet nicht ein, warum da eine Hüllkurve (also eine Konstante) herauskommen sollte. Ich denke, das "Anwendungsbeispiel" kann weg.
A. S. schrieb: > DSP_Anfänger schrieb: > >> So ganz hab ich die Hilbert-Transformation noch nicht verstanden, aber >> wenn ich mir den Abschnitt "Anwendungsbeispiel" anschaue ist das doch >> genau das, was Du suchst, oder?: >> https://de.wikipedia.org/wiki/Hilbert-Transformation > > Ich kann dem Anwendungsbeispiel nicht ganz folgen. Im einfachsten Fall > hat man eine Sinusschwingung, also einen konstanten Ton. > Die Hilbert Transformierte hiervon ist ebenfalls eine Schwingung. Mir > leuchtet nicht ein, warum da eine Hüllkurve (also eine Konstante) > herauskommen sollte. > Ich denke, das "Anwendungsbeispiel" kann weg. Das Beispiel passt an sich. Die Beschriftung passt nur nicht. Die rote Kurve ist nicht die Hilberttransformierte, sondern der Betrag des analytischen Signals, welches mit Hilfe der Hilberttransformation gebildet wird.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.