Forschung

 

Institut für Systemdynamik - ISD

Audioedit SS10

Die Standard Audiotreiber unter Windows lassen nur eine 2-kanalige (Stereo) -Verarbeitung von Audioquellen zu. Um trotzdem mit Soundkarten mit mehreren Kanälen arbeiten zu können, wurde von Steinberg das Audio Stream Input/Output (ASIO) Protokoll entwickelt. Mit diesem Protokoll ist der Zugriff auf mehrkanalige Soundkarten mit geringer Latenz möglich. Die meisten Hersteller von professionellen Soundkarten liefern für ihre Hardware ASIO-Treiber aus, die jedoch meist nur mit kommerzieller Software genutzt werden können. In diesem Projekt soll eine Software zur mehrkanaligen Audioverarbeitung entwickelt werden, mit deren Hilfe auch Bearbeitungs- und Analysefunktionen durchgeführt werden können. Dieses System besteht aus folgenden Komponenten:

  • einem mehrkanaligen Audiorecorder
  • einem AudioEditor, mit dem Audiodateien bearbeitet werden können. Die eigentlichen Bearbeitungswerkzeuge werden als Plugins realisiert. Der Editor dient also als Hostsystem und Benutzerschnittstelle zum Ausführen der Plugins. Die Plugins dienen vor allem zur Analyse der Audiodaten, daher sollte der Editor auch eine Möglichkeit zur grafischen Ausgabe von Messergebnissen bereitstellen.
  • ein Framework zum Entwickeln entsprechender Analyse- und Bearbeitungsplugins.

Das Framework muss ein API zum Übergeben der Audiodaten und zum Einstellen eventueller Parameter bereitstellen.

Bluephone WS09

In dem MSI Projekt BluePhone wurde eine Software entwickelt durch die ein PC oder Laptop in Verbindung mit einem Mobiltelefon als Freisprecheinrichtung fungiert. Über eine Graphische-Benutzeroberfläche lassen sich typische Funktionen eines Mobiltelefons am PC nutzen.

Dazu gehört, dass ein PC, ausgestattet mit der notwendigen Audio-Hardware sowie Mikrophon und Lautsprecher, als Freisprecheinrichtung für ein Mobiltelefon dient.

Um die Sprachqualität der Freisprecheinrichtung zu steigern und Audio-Filter sowie Algorithmen zur Sprachverbesserung, wie beispielsweise Echokompensation und Rauschunterdrückung zu testen und zu evaluieren, wurde ein Plug-In Konzept entwickelt, über welches Algorithmen dynamisch integriert werden können. Es ist außerdem möglich, das Adressbuch des Telefons über Bluephone zu synchronisieren und zu verwalten. Die Kommunikation zwischen Laptop und Handy wurde kabellos über Bluetooth realisiert.

Der Kern der Applikation sowie die Graphische Benutzeroberfläche wurden in Java geschrieben. Damit die Funktionalitäten einer Freisprecheinrichtung genutzt werden können, wurde das HFP Profile (Handsfree-Profile) gewählt, welches die meisten Mobiltelefone unterstützen. Auf der PC-Seite kommt die Open Source Bibliothek HFP for Linux zu Einsatz.  Diese steht als DBus-Daemon zur Verfügung und kann über die offizielle Java-DBus API angesprochen werden. Das Plug-In Konzept zur Integration von Sprachalgorithmen wurde in C++ als eigenständigen Server implementiert. Dies resultiert daher das die zu testenden Algorithmen in der Regel in C oder C++ implementiert werden. Die Kommunikation zur Java Applikation erfolgt über eine lokale TCP Verbindung. Für die Synchronisation zwischen der Applikation und dem Handy kommt SyncML zum Einsatz.