Audioverarbeitung

Microsoft Audio Stack ist eine Reihe von Verbesserungen, die für Sprachverarbeitungsszenarien optimiert sind. Dies schließt Beispiele wie Schlüsselworterkennung und Spracherkennung ein. Sie besteht aus verschiedenen Erweiterungen/Komponenten, die auf dem Audioeingabesignal arbeiten:

  • Rauschunterdrückung - Verringern Sie die Hintergrundgeräusche.
  • Balkenforming - Lokalisieren Sie den Ursprung des Sounds, und optimieren Sie das Audiosignal mithilfe mehrerer Mikrofone.
  • Dereverberation - Reduzieren Sie die Reflexionen von Sound von Oberflächen in der Umgebung.
  • Akustik-Echoabbruch: - Unterdrücken Sie die Audiowiedergabe des Geräts, während die Mikrofoneingabe aktiv ist.
  • Automatische Verstärkungssteuerung: Passen Sie die Stimmebene der Person dynamisch an, um weiche Lautsprecher, lange Entfernungen oder nicht kalibrierte Mikrofone zu berücksichtigen.

Block diagram of Microsoft Audio Stack's enhancements.

Für verschiedene Szenarien und Anwendungsfälle sind möglicherweise unterschiedliche Optimierungen erforderlich, die das Verhalten des Audioverarbeitungsstapels beeinflussen. In Telekommunikationsszenarien wie Telefonanrufen ist es beispielsweise akzeptabel, dass das Audiosignal geringfügig verzerrt wird, nachdem die Verarbeitung angewendet wurde. Dies liegt daran, dass Menschen die Sprache weiterhin mit hoher Genauigkeit verstehen können. Es ist jedoch nicht akzeptabel und störend, wenn eine Person ihre eigene Stimme in einem Echo hören kann. Dies steht im Gegensatz zu Sprachverarbeitungsszenarien, bei denen verzerrte Audiodaten sich negativ auf die Genauigkeit eines durch maschinelles Lernen gelernten Spracherkennungsmodells auswirken können, es jedoch akzeptabel ist, kleinere Echo-Restwerte zu haben.

Die Verarbeitung erfolgt komplett lokal an der Stelle, wo das Speech SDK verwendet wird. Für die Verarbeitung durch Microsoft Audio Stack werden keine Audiodaten an die Clouddienste von Microsoft gestreamt. Die einzige Ausnahme ist der Unterhaltungstranskriptionsdienst, bei dem Audiorohdaten zur Verarbeitung an die Clouddienste von Microsoft gesendet werden.

Microsoft Audio Stack unterstützt außerdem eine Vielzahl von Microsoft-Produkten:

  • Windows - Microsoft Audio Stack ist die Standardpipeline für die Sprachverarbeitung bei Verwendung der Kategorie Sprachaudio.
  • Geräte für Microsoft Teams-Displays und Microsoft Teams-Räume – Geräte für Microsoft Teams-Displays und Microsoft Teams-Räume verwenden den Microsoft Audio Stack, um ein hochwertiges, sprachbasiertes Freisprecherlebnis mit Cortana zu ermöglichen.

Speech SDK-Integration

Das Speech SDK integriert Microsoft Audio Stack (MAS), sodass jede Anwendung oder jedes Produkt seine Audioverarbeitungsfunktionen auf Eingabeaudiodaten anwenden kann. Zu den wichtigsten Features von Microsoft Audio Stack, die über das Speech SDK verfügbar sind, gehören folgende:

  • Echtzeit-Mikrofoneingabe und Dateieingabe: Die Microsoft Audio Stack-Verarbeitung kann auf Echtzeit-Mikrofoneingaben, Streams und dateibasierte Eingaben angewendet werden.
  • Auswahl von Erweiterungen: Zur vollständigen Kontrolle über Ihr Szenario können Sie mit dem SDK einzelne Erweiterungen wie z. B. Hallunterdrückung, Rauschunterdrückung, automatische Verstärkungsregelung und akustische Echounterdrückung deaktivieren. Wenn Ihr Szenario beispielsweise kein Rendern von Ausgabeaudiodateien umfasst, die bspw. aus der Eingabeaudiodatei unterdrückt werden müssen, haben Sie die Möglichkeit, die akustische Echounterdrückung zu deaktivieren.
  • Benutzerdefinierte Mikrofongeometrien: Mit dem SDK können Sie ihre eigenen benutzerdefinierten Geometrieinformationen für Mikrofone bereitstellen; und zwar zusätzlich zu voreingestellten Geometrien wie lineare 2-Mikrofon-, lineare 4-Mikrofon- und kreisförmige 7-Mikrofon-Arrays (weitere Informationen zu unterstützten voreingestellten Geometrien finden Sie unter Empfehlungen für Mikrofonarrays).
  • Strahlformungswinkel: Um Audioeingaben zu optimieren, die von einem vorab definierten Ort stammen, können bestimmte Strahlformungswinkel bereitgestellt werden (bezogen auf die Mikrofone).

Mindestanforderungen für die Verwendung von Microsoft Audio Stack

Microsoft Audio Stack kann von jedem Produkt oder jeder Anwendung verwendet werden, die die folgenden Anforderungen erfüllen kann:

  • Unformatierte Audiodaten: Microsoft Audio Stack benötigt als Eingabe unformatierte (d. h. nicht verarbeitete) Audiodaten, um die besten Ergebnisse zu erzielen. Die Bereitstellung von Audiodaten, die bereits verarbeitet werden, schränkt die Fähigkeit des Audiostapels ein, Verbesserungen in hoher Qualität durchzuführen.
  • Mikrofongeometrien - Geometrieinformationen zu jedem Mikrofon auf dem Gerät sind erforderlich, um alle Verbesserungen des Microsoft-Audiostapels ordnungsgemäß durchzuführen. Zu den Informationen gehören die Anzahl der Mikrofone, ihre physische Anordnung und die Koordinaten. Es werden bis zu 16 Mikrofoneingabekanäle unterstützt.
  • Loopback oder Referenzaudio - Ein Audiokanal, der die vom Gerät abgespielte Audiodatei darstellt, ist erforderlich, um einen akustischen Echoabbruch durchzuführen.
  • Eingabeformat: Microsoft Audio Stack unterstützt das Komprimieren von Daten nur für Abtastraten, die ein ganzzahliges Vielfaches von 16 KHz sind. Eine Minimale Samplingrate von 16 kHz ist erforderlich. 32-Bit IEEE Little-Endian vom Typ „float“, 32-Bit Little-Endian vom Typ „signed int“, 24-Bit Little-Endian vom Typ „signed int“, 16-Bit Little-Endian vom Typ „signed int“ und 8-Bit vom Typ „signed int“.

Nächste Schritte

Verwenden des Speech SDK für die Audioverarbeitung