SOFTWARE ENTWICKLUNG STX Ein Softwarepaket zum Verwalten Analysieren und Annotieren von Schallsignalen Entwickelt am Institut für Schallforschung der Österreichischen Akademie der Wissenschaften Die Software ist auf unserer Homepage verfügbar www.kfs.oeaw.ac.at Signalanalyse, Segmentierung und Annotierung - Benutzerdefinierte Analyseprofile - Parallele graphische Darstellung von Wellenform, Spektrogramm (FFT, LPC, Wavelet, ...) und Parameterverläufen (rms, f0, Formanten, …) - Annotierungen mit Attributvorlagen - lokales Detailspektrum (Sektion) Analyse Annotierung Echtzeitanalyse Analyse und graphische Darstellung von Signalen in Echtzeit Verwaltung von Signalen und Einstellungen Workspace - Sammelstelle für Programmeinstellungen und Projektdateien. TCP/IP DCOM (z.B.: ↔ R) DDE (z.B.: ↔ Excel) Hier erfolgt die Auswahl von Signalen, Verarbeitungsprofilen und Benutzerscripts. Clipboard Schnittstellen Wave-In Wave-Out Dateien: Wave, XML, Text etc. Recorder Verwaltung Aufnahme von Signalen mit Signalaussteuerung und Tagging. Input Output Kommandozeile Entwicklungsumgebung Ausführung von Scriptbefehlen für die interaktive Entwicklung von Scripts. Debuggingumgebung Interaktives Debugging von Scripts mit Breakpoints, Funktionsstack, Umgebungsinspektor etc. Entwicklung Anwendungsprogrammierung Spektrogramme – Zeit-Frequenz Signaldarstellungen Vergleich verschiedener Spektrogramme des Sprachsignals „kreidebleich“ Spektrogramm = Signalamplitude als Funktion von Zeit und Frequenz = Zeit-Frequenz Darstellung Wavelet-Transformation (Typ: Morlet) Konstante, frequenzunabhängige Zeitund Frequenzauflösung Hohe Frequenzauflösung bei niedrigen Frequenzen Hohe Zeitauflösung bei hohen Frequenzen konstante Bandbreite konstantes Verhältnis von Bandbreite zu Mittenfrequenz Frequenz Frequenz Kurzzeit-Fouriertransformation (STFT) Zeit Zeit Sprachanalyse – Spektrogramm und Sprachparameter Berechnung und Darstellung von Sprachsignalen und grundlegenden Sprachparametern Segmentmarkierung Zeitbereich und Metadaten (z.B. Transkription) Spektrogramm Zeit-Frequenz Analyse = Schalldruck als Funktion von Zeit und Frequenz Formantfrequenzen Resonanzen des Vokaltrakts Grundfrequenz (f0) Tonhöhenverlauf (Prosodie) Wellenform zeitlicher Verlauf des Schalldruckes Die berechneten Parameter können graphisch editiert (korrigiert), zur weiterverarbeitung im Workspace gespeichert und / oder exportiert werden. MULAC – Frame-Multiplier in Acoucstics Framework für die Entwicklung, Testung und Anwendung von Frame-Multipliern (siehe Projekt „MulAc“) Original (mongolischer Obertongesang) Modifikationsmatrix („Maske“) Frequenz [kHz] x Zeit [s] Die Definition von Modifikationen (Masken) erfolgt durch die graphische Auswahl des Zeit-Frequenz-Ausschnitts (Polygon) und die Angabe von Methode und Parametern. Die Erzeugung der Masken kann signalgetrieben (adaptiv) oder signalunabhängig erfolgen. Modifiziertes Signal = Zeit [s] Zeit [s] Auslöschung (0-setzen der Amplitude) Adaptives Kammfilter Irrelevanzfilter (Übermaskierung) Schwarz = 1 = keine Änderung Weiss = 0 = Auslöschung Analyse und Resynthese erfolgen derzeit mittels Gaborframes. Andere Methoden mit variabler Zeit / Frequenz-Auflösung (z.B. basierend auf Wavelets) sind geplant. SPExL – Graphisch / Akustisch unterstützte Transkription Benutzerfreundliches, rasches Segmentieren, Transkribieren und Annotieren umfangreicher Tondokumente Wellenform + Segmentmarkierung Spektrogramm + Transkription + (optional) f0, Formanten; schnelles Umschalten zwischen Schmal- und Breitbandanalyse möglich Scroll + Zoom synchron für Wellenform und Spektrogramm Steuerung auch über Hotkeys und Kontextmenü verfügbar Segmentliste + Editor Anwendungen vor allem in der Phonetik, Phonologie und Forensik - Userinterface optimiert für Tastatureingabe (d.h. möglichst wenige Wechsel zwischen Maus und Tastatur) - Graphiklayout, GUI und Signaldarstellungen sind konfigurierbar. - Segmentattribute können anwendungsbezogen definiert werden (Segment-Templates) - Paralleles Arbeiten im Workspace ist möglich (Kontrollhören, Korrektur, Detailanalyse) RETISIMO – REalTIme SIgnal MOdification Allgemeines Framework für Signalprocessing und Spektrumanalyse von Stereosignalen in Echtzeit (Anwendung der Frame-Multiplier, siehe Projekt „MulAc“) Grafik (Spektren, PPM und vom ProcessingModul abhänige Funktionen) Levelmeter Output Postprocessing Output Multiplexer Analyse Synthese Wave-Out oder Soundfile Files LAN Implementierte Prozessing Module: Externe Daten (z.B.: HRTFs, Filterspektren Sprachdaten) Framework-Modul Externe 3D Graphik (z.B. für HRTF, Sprachsynthes) 1. Standardfilter (Tiefpass, Hochpass, Bandpass) 2. Graphisch definierte Filter 3. HRTF-Rendering mit 3D Quellenpositionierung 4. Sprachsynthese und 3D Vokaltraktmodell 5. Rauschunterdrückung (Signalverbesserung) 6. Irrelevanzfilter (Simultanmaskierung) Zeitbereich y(t) Synthese Processing Modul Spektrum a(f),φ(f) Analyse Input Multiplexer Wave-In oder Soundfile Zeitbereich x(t) Input Preprocessing Blockdiagramm: Framework-Modul; Funktion teilweise abhängig von Processing-Modul Processing-Modul; austauschbar Externe Programme und Daten; abhängig von Processing-Modul RETISIMO Modul – Irrelevanzfilter Entfernung nicht hörbarer („irrelevanter“) Teile von Klängen mittels Simultanmaskierung Blockdiagramm: Irrelevanzfilter Maskierungsfilter Signalspektrum x(f) Maskierungsspektrum Pegeladaptierung y(f)= x(f) für x(f)>m(f) 0 Irrelevanzspektrum y(f) für x(f)≤m(f) Maskierungsparameter Adapierungsparameter Amplitude in dB Psychoakustisches Modell der Simultanmaskierung von Sinustönen Maskierungston Signalspektrum Irrelevanzspektrum • In der Signalanalyse (Informationsreduktion) Maskierungsfunktion abhängig von Frequenz und Amplitude des Maskierungstones Testton 1 nicht hörbar („maskiert“) Testton 2 hörbar Frequenz in Bark (= perzeptive Frequenzskala) Anwendungen: Maskierungsspektrum • Übermaskierung = Trennung starker („Vordergrund“) und schwacher („Hintergrund“) Signalteile • In der Signalkodierung; „perzeptive Coder“ z.B.: MP3 RETISIMO Modul – Sprachsynthese Formant-Synthesizer (Dennis H. Klatt; JASA 67/3, 1980) und Berechnung der Vokaltraktquerschnitte mittels LPC (Linear Prediction Coding) Blockdiagramm: Formant-Synthesizer Grundfrequenz und Amplitude Puls Generator Mix Die Syntheseparameter werden über Dialog und Grafik eingegeben oder von einem Sprachdatenfile gelesen Sprachsignal Vokaltraktfilter LPC Analyse Rausch Generator Amplitude Formanten (Frequenz, Amplitude, Bandbreite) Formanten Amplitudenspektrum des Sprachsignals Vokaltraktmodell Filterspektrum Querschnittskoeffizienten RETISIMO Modul – HRTF-Rendering Simulation einer im Raum positionierbaren Quelle mittels gemessener oder berechneter HRTFs (HRTF = Head Related Transfer Function = individuelle Außenohr-Übertragungsfunktion) Blockdiagramm: HRTF-Rendering Input (mono) HRTF Datenbasis H(α,β) Output links Filter rechts Output rechts Filterspektrumgenerator Position der Quelle (Distanz r, Azimuth α, Elevation β) z.B.: Azimuth=45°, Elevation=0° (Quelle vorne, links in Kopfebene) Filter links HRTF links HRTF rechts Beim Rendering werden das HRTF-Spektrum, die Zeitdifferenz zwischen den Ohren und die Distanz zur Quelle berücksichtigt.