Audio

Dieses Dokument enthält Empfehlungen für das Design und die Entwicklung von Audiogeräten, einschließlich Audiowiedergabe- und Audioeingabegeräten, die für die Verwendung mit der Azure Cognitive Service für Speech von Microsoft vorgesehen sind. Die Sprachplattform wird verwendet, um alle Sprachfunktionen in Windows zu unterstützen, z. B. Spracheingabe und Liveuntertitel. Das Ziel dieses Dokuments ist es, Ökosystempartner in die Lage zu versetzen, Geräte mit optimiertem Audioerlebnis mit Microsoft-Technologie zu bauen.

Mindestanforderungen an die Hardware und das Windows-Hardwarekompatibilitätsprogramm

Die minimalen Hardwareanforderungen und die Anforderungen des Windows-Hardwarekompatibilitätsprogramms sind grundlegend für die Erstellung von Windows-kompatiblen Audiolösungen. Obwohl die Programme optional sind, wird dringend empfohlen, dass Audioprodukte beide Anforderungen erfüllen, um eine grundlegende Audioqualität sicherzustellen.

Für weitere Details zu jedem:

Szenario zur Optimierung der Multistream-Audiowiedergabe

Obwohl Multi-Streaming für die Windows 10 Desktop Edition nicht mehr erforderlich ist, wird dringend empfohlen, mindestens zwei Digital-Analog-Konverter (DAC) zu haben, um Multi-Streaming-Szenarien zu unterstützen. Wenn ein einzelner DAC (z. B. ein umgeleiteter Kopfhörer) verwendet wird, wird dringend empfohlen, die Audiolautstärkeregelung und den Status unabhängig für jeden Audioendpunkt (z. B. integrierte Lautsprecher oder eine 3,5-mm-Audiobuchse) zu unterstützen, damit Benutzereinstellungen vornehmen können beibehalten werden.

Optimierung einer Audiolösung für Sprache und Kommunikation

Sobald die Audiolösung sowohl die Mindesthardwareanforderungen als auch die Anforderungen des Windows-Kompatibilitätsprogramms erfüllt, bietet die Audiolösung grundlegende Audioerlebnisse in Windows. Abhängig vom angestrebten Marktsegment kann ein Gerät zwei zusätzliche Optimierungen unterstützen: Speech Platform und Skype. Empfehlungen für die Azure Cognitive Service für Speech und Skype bauen auf den Anforderungen für ein grundlegendes Audioerlebnis auf. Es wäre eine Herausforderung, für Speech Platform oder Skype zu optimieren, wenn die Audiolösung die grundlegenden Anforderungen nicht vollständig erfüllt.

Hinweis

Richtlinien für Telefonie und Anwendungen wie Skype werden zu diesem Thema ergänzt, sobald sie verfügbar sind.

 

Audio-Empfehlungen

Spracherkennung in Windows

Gerätehersteller werden ermutigt, die Sprachverbesserungsverarbeitung in ihr Gerät zu integrieren und abzustimmen, um die Leistung in Bezug auf die Azure Cognitive Service für Speech zu optimieren.

Für Geräte ohne integrierte Sprachverbesserungsverarbeitung stellt Microsoft die Standardverarbeitung in Windows bereit. Die Sprachverbesserungsverarbeitung von Microsoft benötigt keine gerätespezifische Abstimmung durch den IHV.

Die Microsoft-Sprachverbesserungspipeline wird verwendet, wenn der Audiotreiber keine Mikrofongeometrie und Audiosignalverarbeitung für Sprache bereitstellt. Um Erweiterungen von Drittanbietern nutzen zu können, muss die Mikrofongeometrie bereitgestellt werden, den Signalverarbeitungsmodus „Sprache“ am Audioeingang unterstützen und sicherstellen, dass die vom Audiotreiber oder seinen Software-APOs bereitgestellten Effekte mindestens Rauschunterdrückung und Echounterdrückung umfassen.

Unterschied zwischen Azure Cognitive Service für Speech und Telefonie

Viele Geräte, die auf die Azure Cognitive Service für Speech abzielen, zielen auch auf die Telefonienutzung ab. Die Ähnlichkeiten sind offensichtlich – beide Szenarien verwenden Geräte mit Mikrofonen, um menschliche Sprache aufzunehmen, Audioverarbeitungs-Pipelines, um Geräusche aus der Umgebung zu entfernen und menschliche Sprache zu verbessern, und verbrauchende Anwendungen, die auf ein klares Sprachsignal angewiesen sind, um die Sprache zu verstehen.

Die Unterschiede liegen darin, wer oder was das Sprachsignal konsumiert. Die Telefonie hat einen menschlichen Verbraucher, für den wahrnehmbare Sprachqualität und Sprachverständlichkeit im Vordergrund stehen. Die Azure Cognitive Service für Speech hat einen algorithmischen Verbraucher, bei dem maschinelles Lernen, das auf bestimmte Merkmale des Sprachsignals trainiert ist, bestimmt, was erkannt wird, und bei dem diese Merkmale nicht unbedingt an Wahrnehmungsnormen ausgerichtet sind.

Die wahrgenommene Sprachqualität korreliert oft mit der Genauigkeit der Spracherkennung, aber das ist nicht immer der Fall. Dieses Dokument konzentriert sich auf Methoden zur Bewertung und Maximierung der Spracherkennungsgenauigkeit. Es wird empfohlen, den Signalverarbeitungsmodus „Sprache“ zu unterstützen und diesen Modus speziell für die Spracherkennung einzustellen.

Das Bestehen der Skype/Lync-Audiozertifizierung ist ein starker Indikator für eine gute Audioleistung des Geräts.

Empfehlungen für Audiogeräte

Die folgenden Abschnitte enthalten Empfehlungen für das Sprechen. Um ein qualitativ hochwertiges Spracherlebnis zu gewährleisten, sollten alle Geräte anhand dieser Leistungsanforderungen getestet werden.

Bereich Art der Führung Welche Geräte sollen getestet werden
Gerät.Spracherkennung Bietet die Anforderungen an die Spracherkennungsleistung, um ein qualitativ hochwertiges Spracherlebnis zu gewährleisten. Alle Geräte sollten anhand dieser Leistungsanforderungen getestet werden.
Device.Audio Bietet Richtlinien für eine optimale Funktion mit dem Host-Betriebssystem in Bezug auf Softwareschnittstellen, Kommunikationsprotokolle und Datenformate. Alle Geräte sollten anhand dieser Richtlinien getestet werden.
Geräte.Audio.Akustik Bietet Empfehlungen und Best Practices für Akustik und verwandte Eigenschaften des Gerätedesigns. Am relevantesten für Geräte, die die Sprachverbesserungsverarbeitung von Microsoft verwenden.

 

Gerät.Spracherkennung

Die folgende Tabelle fasst die Microsoft-Empfehlungen für die Genauigkeit der Zielspracherkennung für Geräte in verschiedenen Umgebungen zusammen. Alle Ziele sind in Sprachgenauigkeit.

Testen Beschreibung Ziel Empfehlung
Gerät.Spracherkennung.Quiet Eine ideale Umgebung mit minimalen Umgebungsgeräuschen (Grundrauschen < 35 dBA SPL) und ohne Empfangsrauschen (Echoweg). Leise <= 35 dBA SPL 95 %
Gerät.Spracherkennung.Umgebungsgeräusche Verschiedene Pegel und Arten von lauten Umgebungen, z. B. Café & Pub. Umgebungsgeräusch @ DUT >= 57 dBA SPL 90%
Device.SpeechRecognition.EchoNoise Verschiedene Ebenen und Arten von Render-Wiedergabeszenarien (z. B. Medienwiedergabe). Echorauschen bei LRP >= 70 dBA SPL 90%

Device.Audio

In diesem Abschnitt werden Empfehlungen zu den Software- und Hardwareschnittstellen, Kommunikationsprotokollen und Datenformaten des Geräts gegeben. Geräte, die Spracherkennungsfunktionen verwenden sollen, müssen alle Device.Audio-Anforderungen erfüllen.

Name Empfehlung
Device.Audio.Base.AudioProcessing Treiber müssen alle Audioeffekte über die FXStreamCLSID-, FXModeCLSID- und FXEndpointCLSID-APOs (oder Proxy-APOs) verfügbar machen. Die APOs müssen auf Anfrage eine genaue Liste der aktivierten Effekte an das System senden. Fahrer müssen APO-Änderungsbenachrichtigungen unterstützen und das System nur benachrichtigen, wenn eine APO-Änderung aufgetreten ist.
Device.Audio.Base.StreamingFormats Die Spracherkennung funktioniert unter allen Audioaufnahme- und Renderstreamingformaten, die im StreamingFormats HLK definiert sind, wobei das Optimum 16 kHz mit 24-Bit-Aufnahme und Monorendering ist.
Device.Audio.Base.SamplePositionAccuracy Es ist wichtig, dass Render- und Capture-Audiosignale sowohl 1) genau abgetastet als auch 2) genau mit einem Zeitstempel versehen sind.
Device.Audio.USB.USB Alle USB-Audioeingabegeräte müssen den Deskriptor entsprechend der Geräteklassenspezifikation von USB.org richtig einstellen.
Fahrerrichtlinien Roadmap für die Entwicklung von WDM-Audiotreibern

 

Geräte.Audio.Akustik

In diesem Abschnitt werden Empfehlungen zu den akustischen und verwandten Eigenschaften des Geräts gegeben, wie z. B. Mikrofon- und Lautsprecherplatzierung, Mikrofonantworten, vom Gerät empfangene Geräusche usw. Mikrofonauswahl, Platzierung, Integration und Array-Design sind einige der wichtigsten Faktoren zur Unterstützung einer qualitativ hochwertigen Spracherkennungsleistung.

Die Empfehlungen und Tests beziehen sich auf das Signal vor der Sprachverbesserungsverarbeitung, aber nach Mikrofonentzerrung und fester Mikrofonverstärkung.

Weitere Einzelheiten zu all diesen Empfehlungen, einschließlich empfohlener Mikrofon-Array-Geometrien, finden Sie unter Deskriptorformat für die Mikrofon-Array-Geometrie.

Name Empfehlung
Device.Audio.Acoustics.MicArray Siehe Mikrofon-Array-Unterstützung in Windows. Der Audiotreiber muss die Eigenschaft KSPROPERTY_AUDIO_MIC_ARRAY_GEOMETRY implementieren. Dann kann über die Windows.Devices.Enumeration-API auf die System.Devices.MicrophoneArray.Geometry-Eigenschaft zugegriffen werden. Der USB-Audiotreiber unterstützt diese Eigenschaft für USB-Mikrofonarrays, bei denen die entsprechenden Felder im USB-Deskriptor festgelegt sind.
Mikrofon-Array-Deskriptor Das Gerät muss seinen Mikrofontyp und seine Geometrie mithilfe des Mic-Array-Deskriptors beschreiben.
Device.Audio.Acoustics.MicSensitivity Die Max-Empfehlung ist so eingestellt, dass sie Spracheingabepegel unterstützen kann, die als „laut“ gelten, und die Min-Empfehlung ist so eingestellt, dass sie Spracheingabepegel unterstützen kann, die als „leise“ gelten.
Device.Audio.Acoustics.MicIntegration Die Mikrofone müssen integriert werden, um eine gute akustische Abdichtung zwischen dem Mikrofon und dem Gerätechassis und gegebenenfalls entlang des Mikrofondurchführungsrohrs zu gewährleisten. Minimieren Sie akustische Geräusche und Vibrationen zwischen dem System und dem Mikrofon. Zwei typische Lösungen sind die Verwendung einer Gummimanschette oder einer Dichtung. Unabhängig davon, welche Methode gewählt wird, überprüfen Sie, ob die akustische Abdichtung über alle Produktionstoleranzen hinweg und sowohl über Umwelt- als auch über Lebensdaueränderungen hinweg ausreichend ist.
Device.Audio.Acoustics.MicPlacement Platzieren Sie das Mikrofon so weit wie möglich von Geräuschquellen wie Lautsprechern, Lüftern, Tastaturen, Festplatten und den Händen des Benutzers entfernt und so nah wie möglich am Mund des Sprechers.
Device.Audio.Acoustics.MicSelfNoise Die Verwendung eines hochwertigen Mikrofons minimiert das interne Rauschen des Mikrofons. Mikrofone mit einem SNR von mindestens 61 dB nominell werden für Standard und 63 dB für Premium empfohlen.
Device.Audio.Acoustics.MicReceivedNoise Die zwei Hauptquellen des empfangenen Rauschens sind akustisches Rauschen und elektrisches Rauschen. Akustische Geräusche können von außerhalb des Geräts kommen oder intern im Gerät durch Lüfter, Festplatten usw. erzeugt werden. Die akustischen Geräusche können auch durch die Gerätemechanik übertragen werden. Elektrisches Rauschen kann minimiert werden, indem anstelle von analogen Mikrofonen digitale Mikrofone verwendet werden.
Device.Audio.Acoustics.MicMagnitudeResponse Die Premium- und Standardmasken gelten für alle Geräteebenen unter Device.Audio.Acoustics.Bandwidth, z. Ein Gerät kann eine Standardbandbreite (schmalbandig) und eine Premium-Bandbreitenantwort innerhalb dieses Bandes haben.
Device.Audio.Acoustics.MicPhaseResponseMatching Diese Empfehlung stellt sicher, dass die zeitliche Beziehung zwischen Signalen, die über Mikrofonelemente in einem Array empfangen werden, mit der physikalischen Geometrie der Mikrofonelemente in dem Array konsistent ist.
Device.Audio.Acoustics.MicDistortion Es wird empfohlen, die Verzerrung mit SDNR (Pulsed Noise Signal-to-Distortion-and-Noise-Ratio) zu messen, obwohl auch THD-Ziele angegeben sind.
Device.Audio.Acoustics.MicBandwidth Die Abtastrate des Erfassungssignals ist der Hauptfaktor bei der Bestimmung der effektiven Bandbreite des Sprachsignals. Da die Sprachplattform 16-kHz-Akustikmodelle in der Spracherkennung verwendet, wird eine Mindestabtastrate von 16 kHz empfohlen. 300 Hz ist das effektive untere Ende der Spracherkennung, jedoch ist 200 Hz die empfohlene akustische Grenze für Geräte, die auch auf Sprachkommunikation abzielen.
Device.Audio.Acoustics.RenderDistortion Es wird empfohlen, die Verzerrung mit SDNR (Pulsed Noise Signal-to-Distortion-and-Noise-Ratio) zu messen, obwohl auch THD-Ziele angegeben sind.
Device.Audio.Acoustics.RenderPlacement Damit die akustische Echokompensation gut funktioniert, sollten die Gerätelautsprecher in einem maximalen Abstand von den Mikrofonen aufgestellt werden oder Richtwirkungsnullen in Richtung der Lautsprecher platzieren.

 

Anforderungen zum Aktivieren einer Erweiterungspipeline eines Drittanbieters

Die folgenden Anforderungen sind entscheidend, um eine Erweiterungspipeline von Drittanbietern zu ermöglichen. Diese und andere Empfehlungen werden in den folgenden Abschnitten ausführlicher behandelt:

  • Melden von Mikrofonstandorten – erklärt, wie eine Meldestruktur für ein Mikrofon-Array implementiert wird.

  • Sprachmodus unterstützt:

    • So registrieren Sie APPs für bestimmte Modi

    • Audiosignalverarbeitungsmodi

  • Device.Audio.Based.Audio Processing – Acoustic Echo Cancellation (AEC) und Noise Suppression (NS) sind für die Pipeline von Drittanbietern erforderlich:

    • Implementing Audio Processing Objects

    • Objektarchitektur der Audioverarbeitung

Windows-Hardware-Kompatibilitätsprogramm

Windows Hardware Lab Kit

Skype/Lync-Audiozertifizierung

Mikrofon-Array-Unterstützung in Windows