Freigeben über


Audiosignalverarbeitungsmodi

Treiber deklarieren die unterstützten Audiosignalverarbeitungsmodi für jedes Gerät.

Verfügbare Signalverarbeitungsmodi

Audiokategorien (ausgewählt nach Anwendungen) werden Audiomodi zugeordnet (definiert durch Treiber). Windows definiert sieben Audiosignalverarbeitungsmodi. OEMs und IHVs können bestimmen, welche Modi implementiert werden sollen. Es wird empfohlen, dass IHVs/OEMs die neuen Modi verwenden, um Audioeffekte hinzuzufügen, die das Audiosignal optimieren, um die beste Benutzererfahrung zu bieten. Diese Modi werden in der nachstehenden Tabelle zusammengefasst.

Mode Rendern/Erfassen Beschreibung
Raw Beides Der unformatierte Modus gibt an, dass keine Signalverarbeitung auf den Datenstrom angewendet werden soll. Eine Anwendung kann einen Rohdatenstrom anfordern, der völlig unberührt ist und eine eigene Signalverarbeitung durchführt.
Standard Beides Dieser Modus definiert die Standardaudioverarbeitung.
Filme* Rendern Audiowiedergabe von Filmen
Medien* Beides Audiowiedergabe von Musik (Standard für die meisten Mediendatenströme)
Speech* Capture Menschliche Sprachaufnahme (z. B. Eingabe an persönlichen Assistenten)
Kommunikation* Beides VOIP-Rendern und Erfassen (z. B. Teams, Skype, Lync)
Benachrichtigung* Rendern Klingeltöne, Alarme, Warnungen usw.

*Neu in Windows 10.

Anforderungen an den Treiber für den Signalverarbeitungsmodus

Audiogerätetreiber müssen mindestens den unformatierten oder Standardmodus unterstützen. Die Unterstützung zusätzlicher Modi ist optional.

Es ist möglich, dass nicht alle Modi für ein bestimmtes System verfügbar sind. Treiber definieren, welche Signalverarbeitungsmodi sie unterstützen (d. h. welche Arten von APOs als Teil des Treibers installiert werden) und informieren das Betriebssystem entsprechend. Wenn ein bestimmter Modus vom Treiber nicht unterstützt wird, verwendet Windows den nächsten optimalen Abstimmungsmodus.

Das folgende Diagramm zeigt ein System, das mehrere Modi unterstützt:

Diagramm, das ein System zeigt, das mehrere Audiomodi unterstützt, mit mehreren SFX- und MFX-Effekten.

Windows Audio Datenstromkategorien

Um das System über die Verwendung eines Audiodatenstroms zu informieren, haben Anwendungen die Möglichkeit, den Datenstrom mit einer bestimmten Audiodatenstromkategorie zu kategorisieren. Anwendungen können die Audiokategorie mithilfe einer der Audio-APIs direkt nach dem Erstellen des Audiodatenstroms festlegen. In Windows gibt es neun Audiodatenstromkategorien.

Category Beschreibung
Film Filme, Video mit Dialogfeld (Ersetzt ForegroundOnlyMedia)
Medien Standardkategorie für die Medienwiedergabe (Ersetzt BackgroundCapableMedia)
Game Chat In-Game-Kommunikation zwischen Benutzern (neue Kategorie in Windows 10)
Speech Spracheingabe (z. B. persönlicher Assistent) und Ausgabe (z. B. Navigations-Apps) (Neue Kategorie in Windows 10)
Kommunikation VOIP, Echtzeitchat
Alerts Alarm, Klingelton, Benachrichtigungen
Soundeffekte Signaltons, Dings usw.
Spielemedien Musik aus dem Spiel
Spieleffekte Aufprallende Bälle, Motorgeräusche, Projektile, usw.
Andere Nicht kategorisierte Datenströme

Wie zuvor erwähnt, wurden Audiokategorien (ausgewählt von Anwendungen) Audiomodi zugeordnet (definiert durch Treiber). Anwendungen können jeden ihrer Datenströme mit einer der 10 Audiokategorien markieren.

Anwendungen haben nicht die Möglichkeit, die Zuordnung zwischen einer Audiokategorie und einem Signalverarbeitungsmodus zu ändern. Anwendungen haben kein Bewusstsein für das Konzept eines „Audioverarbeitungsmodus”. Sie können nicht herausfinden, welcher Modus für jeden ihrer Datenströme verwendet wird.

WASAPI-Codebeispiel

Der folgende WASAPI-Code aus dem WASAPIAudio-Beispiel zeigt, wie verschiedene Audiokategorien festgelegt werden.

// The ActivateAudioInterfaceAsync is a replacement for IMMDevice::Activate
IActivateAudioInterfaceAsyncOperation *asyncOp = nullptr;
HRESULT hr = S_OK;

String ^defaultRender = Windows::Media::Devices::MediaDevice::GetDefaultAudioRenderId( Windows::Media::Devices::AudioDeviceRole::Default );

hr = ActivateAudioInterfaceAsync( defaultRender->Data(), __uuidof( IAudioClient3 ), nullptr, this, &asyncOp );
if ( FAILED( hr ) ) { … }
…

// the app’s implementation of IActivateAudioInterfaceCompetionHandler is invoked asynchronously
HRESULT ActivateAudioInterfaceCompletionHandler::ActivateCompleted( IActivateAudioInterfaceAsyncOperation *activateOperation ) {
    HRESULT hr = S_OK;
    HRESULT hrActivateResult = S_OK;
    IUnknown *pUnknown = nullptr;
    IAudioClient3 *pAudioClient3 = nullptr;

    hr = activateOperation->GetActivateResult( &hrActivateResult, &pUnknown );
    if ( FAILED( hr ) )  { … }
    if ( FAILED( hrActivateResult ) ) { … }

    hr = pUnknown->QueryInterface( IID_PPV_ARGS( &pAudioClient3 ) );
    if ( FAILED( hr ) ) { … }

    // The IAudioClient3::SetClientProperties call needs to happen after activation completes,
    // but before the call to IAudioClient3::Initialize or IAudioClient3::InitializeSharedAudioStream.
    AudioClientProperties props = {};
    props.cbSize = sizeof(props);
    props.eCategory = AudioCategory_GameEffects;
    pAudioClient3->SetClientProperties( &props );
    if ( FAILED( hr ) ) { … }

    hr = pAudioClient3->InitializeSharedAudioStream( … );
    if ( FAILED( hr ) ) { … }

    …

Signalverarbeitungsmodi und -effekte

OEMs definieren, welche Effekte für jeden Modus verwendet werden. Windows definiert eine Liste von siebzehn Arten von Audioeffekten.

Informationen zum Zuordnen von APOs zu Modi finden Sie unter Implementieren von Audioverarbeitungsobjekten.

Es ist für Anwendungen möglich, zu fragen, welche Effekte auf einen bestimmten Datenstrom für RAW- oder nicht-RAW-Verarbeitung angewendet werden. Anwendungen können auch aufgefordert werden, benachrichtigt zu werden, wenn sich die Auswirkungen oder der Zustand der Rohverarbeitung ändern. Die Anwendung kann diese Informationen verwenden, um festzustellen, ob eine bestimmte Streaming-Kategorie wie die Kommunikation verfügbar ist oder ob nur der RAW-Modus verwendet wird. Wenn nur der RAW-Modus verfügbar ist, kann die Anwendung bestimmen, wie viel Audioverarbeitung selbst hinzugefügt werden soll.

Wenn System.Devices.AudioDevice.RawProcessingSupported „true” ist, haben Anwendungen auch die Möglichkeit, für bestimmte Datenströme ein Flag „RAW verwenden” festzulegen. Wenn System.Devices.AudioDevice.RawProcessingSupported „false” ist, können Anwendungen das Flag „RAW verwenden” nicht festlegen.

Anwendungen haben keinen Einblick in die Anzahl vorhandener Modi, mit Ausnahme von RAW/Nicht-RAW.

Anwendungen sollten unabhängig von der Audiohardwarekonfiguration die optimale Verarbeitung von Audioeffekten anfordern. Wenn Sie z. B. einen Datenstrom markieren, wird Windows informiert, dass Hintergrundmusik angehalten wird.

Weitere Informationen zu den Kategorien statischer Audiostreams finden Sie unter „AudioCategory”-Aufzählung und „MediaElement.AudioCategory”-Eigenschaft.

CLSIDs für Systemeffekte

FX_DISCOVER_EFFECTS_APO_CLSID

Dies ist die CLSID für den MsApoFxProxy.dll „Proxyeffekt”, der den Treiber abfragt, um die Liste der aktiven Effekte abzurufen;

FX_DISCOVER_EFFECTS_APO_CLSID  = "{889C03C8-ABAD-4004-BF0A-BC7BB825E166}"

KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE

KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE ist ein Bezeichner für Kernelstreaming, der angibt, dass das spezifische Attribut, auf das verwiesen wird, das Attribut für den Signalverarbeitungsmodus ist.

Die hier gezeigten #define Anweisungen sind in der Headerdatei „KSMedia.h” verfügbar.

#define STATIC_KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE 0xe1f89eb5, 0x5f46, 0x419b, 0x96, 0x7b, 0xff, 0x67, 0x70, 0xb9, 0x84, 0x1
DEFINE_GUIDSTRUCT("E1F89EB5-5F46-419B-967B-FF6770B98401", KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE);
#define KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE DEFINE_GUIDNAMED(KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE)

KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE wird von modefähigen Treibern mit einer KSDATARANGE-Struktur verwendet, die eine KSATTRIBUTE_LIST enthält. Diese Liste enthält ein einzelnes Element, bei dem es sich um ein KSATTRIBUTE handelt. Das Attributelement der KSATTRIBUTE-Struktur wird auf KSATTRIBUTEID_AUDIOSIGNALPROCESSING_MODE festgelegt.

Audioeffekte

Die folgenden Audioeffekte sind für die Verwendung in Windows 10 verfügbar.

Audioeffekt Beschreibung
Akustische Echounterdrückung (AEC) AEC (Acoustic Echo Cancellation) verbessert die Audioqualität, indem Echo entfernt wird, nachdem es bereits im Audiodatenstrom vorhanden ist.
Rauschunterdrückung (Noise Suppression NS) Einfache Rauschunterdrückung (Simple Noise Suppression, NS) unterdrückt Rauschen wie Humming und Buzzing, wenn sie im Audiodatenstrom vorhanden ist.
Starke Rauschunterdrückung Starke Rauschunterdrückung verwendet erweiterte KI-/maschinelle Lerntechniken, um Rauschen insbesondere bei Sprachanrufen zu unterdrücken.
Automatische Verstärkungssteuerung (Automatic Gain Control, AGC) Automatische Verstärkungssteuerung (Automatic Gain Control, AGC) – ist so konzipiert, dass eine kontrollierte Signalamplitude an ihrer Ausgabe bereitgestellt wird, trotz der Variation der Amplitude im Eingangssignal. Die durchschnittliche oder spitzen Ausgangssignalstufe wird verwendet, um die Eingabe-zu-Ausgabe-Verstärkung dynamisch auf einen geeigneten Wert anzupassen, wodurch ein stabiles Ausgabeniveau ermöglicht wird, auch bei einem breiten Spektrum an Eingabesignalstufen.
Strahlformung (Beam Forming, BF) Strahlformung (Beam Forming, BF) ist eine Signalverarbeitungstechnik, die für die direktionale Signalübertragung oder den Empfang verwendet wird. Dies wird erreicht, indem Elemente in einem phasenweisen Array so kombiniert werden, dass Signale in bestimmten Winkeln konstruktive Störungen erleben, während andere destruktive Störungen erleben. Die Verbesserung im Vergleich zu omnidirektionalen Empfangs-/Übertragungsübertragungen wird als Empfangs-/Übertragungsgewinn (oder Verlust) bezeichnet.
Konstante Tonentfernung Konstante Tonentfernung wird verwendet, um konstante Hintergrundgeräusche wie Bandrauschen, elektrische Lüfter oder Brummen zu attenuieren.
Equalizer Der Equalizer-Effekt wird verwendet, um die Frequenzantwort eines Audiosystems mithilfe linearer Filter zu ändern. Dies ermöglicht es, verschiedene Teile des Signals zu erhöhen, ähnlich wie eine Treble- oder Basseinstellung.
Lautstärke-Equalizer Der Lautstärke-Equalizer-Effekt reduziert die wahrgenommenen Lautstärkeunterschiede, indem die Audioausgabe abgleicht wird, sodass lautere und leisere Töne näher an einer durchschnittlichen Lautstärke liegen.
Bassverstärkung In Systemen wie Laptops mit eingeschränkter Bassfunktion ist es manchmal möglich, die wahrgenommene Qualität der Audiodaten zu erhöhen, indem die Bassantwort im Frequenzbereich erhöht wird, der vom Lautsprecher unterstützt wird. Die Bassverstärkung verbessert den Sound auf mobilen Geräten mit sehr kleinen Lautsprechern, indem sie den mittleren Bassbereich erhöhen.
Virtual Surround Virtual Surround verwendet einfache digitale Methoden, um ein Multichannel-Signal in zwei Kanäle zu kombinieren. Dies erfolgt auf eine Weise, mit der das transformierte Signal in das ursprüngliche Multichannel-Signal wiederhergestellt werden kann, indem die Pro Logic-Decoder verwendet werden, die in den meisten modernen Audioempfängern verfügbar sind. Virtual Surround ist ideal für ein System mit einer Zweikanal-Soundhardware und einem Empfänger mit einem Surround Sound-Erweiterungsmechanismus.
Virtuelle Kopfhörer Virtualisierte Surround-Sound ermöglicht Benutzern, die Kopfhörer tragen, den Sound von vorne nach hinten sowie von Seite zu Seite zu unterscheiden. Dies geschieht durch die Übertragung räumlicher Anhaltspunkte, die dem Gehirn dabei helfen, die Geräusche zu lokalisieren und in ein Klangfeld zu integrieren. Dies hat den Effekt, dass der Klang so wirkt, als ob er die Kopfhörer überschreitet, wodurch ein „Außenkopf”-Hörerlebnis entsteht. Dieser Effekt wird mit einer fortschrittlichen Technologie namens Head Related Transfer Functions (HRTF) erreicht. HRTF generiert akustische Hinweise, die auf der Form des menschlichen Kopfes basieren. Diese Hinweise helfen nicht nur Hörern, die Richtung und Quelle des Klangs zu finden, sondern auch die Art der akustischen Umgebung, die den Zuhörer umgibt.
Lautsprecherfüllung Die meiste Musik wird nur mit zwei Kanälen produziert und ist daher nicht für die Multichannel-Audiogeräte des typischen Audio- oder Video-Enthusiasten optimiert. Wenn also Musik nur von den Front-left- und Front-right-Lautsprechern ausgeht, ist das ein weniger als ideales Audioerlebnis. Die Lautsprecherfüllung simuliert eine Mehrkanallautsprechereinrichtung. Es ermöglicht Musik, die sonst nur auf zwei Lautsprechern gehört würde, auf allen Lautsprechern im Raum zu spielen und die räumliche Empfindung zu verbessern.
Raumkorrektur Die Raumkorrektur optimiert das Hörerlebnis für eine bestimmte Position im Raum, z. B. das Mittelkissen Ihrer Couch, indem automatisch die optimale Kombination aus Verzögerung, Frequenzantwort und Anpassungen berechnet wird. Das Feature zur Raumkorrektur passt besser zum Bild auf dem Videobildschirm und ist auch nützlich in Fällen, in denen Desktoplautsprecher an nicht standardmäßigen Speicherorten platziert werden. Die Raumkorrekturverarbeitung ist eine Verbesserung gegenüber ähnlichen Merkmalen in High-End-Empfängern, da sie besser die Art und Weise berücksichtigt, wie das menschliche Ohr klingt. Die Kalibrierung erfolgt mit Hilfe eines Mikrofons, und das Verfahren kann sowohl mit Stereo- als auch Multikanalsystemen verwendet werden. Der Benutzer platziert das Mikrofon, in dem der Benutzer sitzen soll, und aktiviert dann einen Assistenten, der die Raumantwort misst. Der Assistent spielt eine Reihe speziell gestalteter Töne von jedem Lautsprecher wiederum und misst den Abstand, die Frequenzantwort und den Gesamtgewinn jedes Lautsprechers von der Position des Mikrofons.
Bassmanagement Es gibt zwei Bassverwaltungsmodi: Forward Bass Management und Reverse Bass Management. Forward Bass Management filtert den Niederfrequenzinhalt des Audiodatenstroms heraus. Der Forward Bass Management-Algorithmus leitet die gefilterte Ausgabe an den Subwoofer oder an die vorne-links und vorne-rechts Lautsprecherkanäle um, je nach Kanälen, die tiefen Bassfrequenzen verarbeiten können. Diese Entscheidung basiert auf der Einstellung des LRBig-Flags. Um den LRBig-Flag festzulegen, verwendet der Benutzer das Sound-Applet in der Systemsteuerung, um auf das Dialogfeld „Bass Management-Einstellungen” zuzugreifen. Der Benutzer aktiviert ein Kontrollkästchen, um z. B. anzugeben, dass die vorne-rechts und vorne-links Lautsprecher einen vollen Frequenzbereich haben und diese Aktion den LRBig-Flag festlegt. Um diese Option zu deaktivieren, klicken Sie das Kontrollkästchen an. Reverse Bass Management verteilt das Signal vom Subwoofer-Kanal an die anderen Ausgabekanäle. Das Signal wird abhängig von der Einstellung des LRBig-Flags entweder an alle Kanäle oder an die vorne-links und vorne-rechts Kanäle weitergeleitet. Bei diesem Prozess wird eine erhebliche Verstärkungsreduktion verwendet, wenn das Subwoofer-Signal den anderen Kanälen zugemischt wird. Der verwendete Bassverwaltungsmodus hängt von der Verfügbarkeit eines Subwoofers und der Basswiedergabefähigkeit der Standard-Lautsprecher ab. In Windows stellt der Benutzer diese Informationen über das Sound-Applet in Systemsteuerung bereit.
Umwelteffekte Umwelteffekte funktionieren, um die Realität der Audiowiedergabe zu erhöhen, indem reale Audioumgebungen genauer simuliert werden. Es gibt eine Reihe verschiedener Umgebungen, die Sie auswählen können, z. B. „Stadion” simuliert die Akustik eines Sportstadiums.
Lautsprecherschutz Der Zweck des Lautsprecherschutzes besteht darin, resonante Frequenzen zu unterdrücken, die dazu führen würden, dass die Lautsprecher physische Schäden an den Systemkomponenten der PCs vornehmen. Beispielsweise können einige physische Festplatten beschädigt werden, indem ein lauter Sound in der richtigen Frequenz wiedergegeben wird. Zweitens funktioniert der Lautsprecherschutz, um Schäden an Lautsprechern zu minimieren, indem das Signal reduziert wird, wenn es bestimmte Werte überschreitet.
Lautsprecherausgleich Einige Lautsprecher können den Klang besser wiedergeben als andere. Ein bestimmter Lautsprecher kann zum Beispiel Töne unter 100 Hz dämpfen. Manchmal sind Audiotreiber und Firmware-DSP-Lösungen mit den spezifischen Leistungsmerkmalen der Lautsprecher, die sie abspielen, vertraut und können eine Verarbeitung hinzufügen, um die Einschränkungen der Lautsprecher zu kompensieren. Beispielsweise könnte ein Endpunkteffekt (EFX) erstellt werden, der auf Frequenzen unter 100 Hz angewendet wird. Dieser Effekt führt in Verbindung mit der Dämpfung im physischen Lautsprecher zu einer verbesserten Audiowiedergabe.
Komprimierung dynamischer Bereiche Dynamische Bereichskomprimierung amplifiziert ruhige Sounds durch Eingrenzen oder „Komprimieren” des dynamischen Bereichs eines Audiosignals. Bei der Audiokompression werden leise Töne, die unter einem bestimmten Schwellenwert liegen, verstärkt, während laute Töne unbeeinflusst bleiben.

Die hier gezeigten #define Anweisungen sind in der Headerdatei „KSMedia.h” verfügbar.

STANDARD

#define STATIC_AUDIO_SIGNALPROCESSINGMODE_DEFAULT 0xc18e2f7e, 0x933d, 0x4965, 0xb7, 0xd1, 0x1e, 0xef, 0x22, 0x8d, 0x2a, 0xf3
DEFINE_GUIDSTRUCT("C18E2F7E-933D-4965-B7D1-1EEF228D2AF3", AUDIO_SIGNALPROCESSINGMODE_DEFAULT);
#define AUDIO_SIGNALPROCESSINGMODE_DEFAULT DEFINE_GUIDNAMED(AUDIO_SIGNALPROCESSINGMODE_DEFAULT)

RAW

#define STATIC_AUDIO_SIGNALPROCESSINGMODE_RAW 0x9e90ea20, 0xb493, 0x4fd1, 0xa1, 0xa8, 0x7e, 0x13, 0x61, 0xa9, 0x56, 0xcf
DEFINE_GUIDSTRUCT("9E90EA20-B493-4FD1-A1A8-7E1361A956CF", AUDIO_SIGNALPROCESSINGMODE_RAW);
#define AUDIO_SIGNALPROCESSINGMODE_RAW DEFINE_GUIDNAMED(AUDIO_SIGNALPROCESSINGMODE_RAW)

AKUSTISCHE ECHOUNTERDRÜCKUNG

#define STATIC_AUDIO_EFFECT_TYPE_ACOUSTIC_ECHO_CANCELLATION 0x6f64adbe, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adbe-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_ACOUSTIC_ECHO_CANCELLATION);
#define AUDIO_EFFECT_TYPE_ACOUSTIC_ECHO_CANCELLATION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_ACOUSTIC_ECHO_CANCELLATION)

RAUSCHUNTERDRÜCKUNG

#define STATIC_AUDIO_EFFECT_TYPE_NOISE_SUPPRESSION          0x6f64adbf, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adbf-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_NOISE_SUPPRESSION);
#define AUDIO_EFFECT_TYPE_NOISE_SUPPRESSION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_NOISE_SUPPRESSION)

AUTOMATISCHE VERSTÄRKUNGSSTEUERUNG

#define STATIC_AUDIO_EFFECT_TYPE_AUTOMATIC_GAIN_CONTROL     0x6f64adc0, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc0-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_AUTOMATIC_GAIN_CONTROL);
#define AUDIO_EFFECT_TYPE_AUTOMATIC_GAIN_CONTROL DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_AUTOMATIC_GAIN_CONTROL)

BEAMFORMING

#define STATIC_AUDIO_EFFECT_TYPE_BEAMFORMING                0x6f64adc1, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc1-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_BEAMFORMING);
#define AUDIO_EFFECT_TYPE_BEAMFORMING DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_BEAMFORMING)

KONSTANTE TONENTFERNUNG

#define STATIC_AUDIO_EFFECT_TYPE_CONSTANT_TONE_REMOVAL      0x6f64adc2, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc2-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_CONSTANT_TONE_REMOVAL);
#define AUDIO_EFFECT_TYPE_CONSTANT_TONE_REMOVAL DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_CONSTANT_TONE_REMOVAL)

EQUALIZER

#define STATIC_AUDIO_EFFECT_TYPE_EQUALIZER                  0x6f64adc3, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc3-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_EQUALIZER);
#define AUDIO_EFFECT_TYPE_EQUALIZER DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_EQUALIZER)

LAUTSTÄRKE-EQUALIZER

#define STATIC_AUDIO_EFFECT_TYPE_LOUDNESS_EQUALIZER         0x6f64adc4, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc4-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_LOUDNESS_EQUALIZER);
#define AUDIO_EFFECT_TYPE_LOUDNESS_EQUALIZER DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_LOUDNESS_EQUALIZER)

BASSVERSTÄRKUNG

#define STATIC_AUDIO_EFFECT_TYPE_BASS_BOOST                 0x6f64adc5, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc5-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_BASS_BOOST);
#define AUDIO_EFFECT_TYPE_BASS_BOOST DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_BASS_BOOST)

VIRTUAL SURROUND

#define STATIC_AUDIO_EFFECT_TYPE_VIRTUAL_SURROUND           0x6f64adc6, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc6-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_VIRTUAL_SURROUND);
#define AUDIO_EFFECT_TYPE_VIRTUAL_SURROUND DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_VIRTUAL_SURROUND)

VIRTUELLE KOPFHÖRER

#define STATIC_AUDIO_EFFECT_TYPE_VIRTUAL_HEADPHONES         0x6f64adc7, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc7-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_VIRTUAL_HEADPHONES);
#define AUDIO_EFFECT_TYPE_VIRTUAL_HEADPHONES DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_VIRTUAL_HEADPHONES)

RAUMKORREKTUR

#define STATIC_AUDIO_EFFECT_TYPE_ROOM_CORRECTION            0x6f64adc9, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adc9-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_ROOM_CORRECTION);
#define AUDIO_EFFECT_TYPE_ROOM_CORRECTION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_ROOM_CORRECTION)

BASS MANAGEMENT

#define STATIC_AUDIO_EFFECT_TYPE_BASS_MANAGEMENT            0x6f64adca, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adca-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_BASS_MANAGEMENT);
#define AUDIO_EFFECT_TYPE_BASS_MANAGEMENT DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_BASS_MANAGEMENT)

UMWELTEFFEKTE

#define STATIC_AUDIO_EFFECT_TYPE_ENVIRONMENTAL_EFFECTS      0x6f64adcb, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adcb-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_ENVIRONMENTAL_EFFECTS);
#define AUDIO_EFFECT_TYPE_ENVIRONMENTAL_EFFECTS DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_ENVIRONMENTAL_EFFECTS)

LAUTSPRECHERSCHUTZ

#define STATIC_AUDIO_EFFECT_TYPE_SPEAKER_PROTECTION         0x6f64adcc, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adcc-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_SPEAKER_PROTECTION);
#define AUDIO_EFFECT_TYPE_SPEAKER_PROTECTION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_SPEAKER_PROTECTION)

LAUTSPRECHERAUSGLEICH

#define STATIC_AUDIO_EFFECT_TYPE_SPEAKER_COMPENSATION       0x6f64adcd, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adcd-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_SPEAKER_COMPENSATION);
#define AUDIO_EFFECT_TYPE_SPEAKER_COMPENSATION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_SPEAKER_COMPENSATION)

KOMPRIMIERUNG DYNAMISCHER BEREICHE

#define STATIC_AUDIO_EFFECT_TYPE_DYNAMIC_RANGE_COMPRESSION  0x6f64adce, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa
DEFINE_GUIDSTRUCT("6f64adce-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_DYNAMIC_RANGE_COMPRESSION);
#define AUDIO_EFFECT_TYPE_DYNAMIC_RANGE_COMPRESSION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_DYNAMIC_RANGE_COMPRESSION)

Starke Rauschunterdrückung

Ab Windows 11, Version 24H2, ist eine neue GUID verfügbar, um Deep Noise Suppression zu aktivieren.

Es gibt zwei Bezeichnungen für Rauschunterdrückungseffekte. Es gibt eine vorhandene Bezeichnung für die Rauschunterdrückung und die neue Bezeichnung, der für starke Rauschunterdrückung hinzugefügt wird. Die erste ist für „niedrige” (einfache) Rauschunterdrückung, während letzteres „hoch” ist und als KI/Machine Learning-Lösung implementiert wird. Wie bei allen verfügbaren Audioeffekten liegt es an der Anwendung, auszuwählen, welches sie je nach Bedarf und bestimmten Szenarien verwenden möchten.

#define STATIC_AUDIO_EFFECT_TYPE_DEEP_NOISE_SUPPRESSION 0x6f64add0, 0x8211, 0x11e2, 0x8c, 0x70, 0x2c, 0x27, 0xd7, 0xf0, 0x01, 0xfa

DEFINE_GUIDSTRUCT("6f64add0-8211-11e2-8c70-2c27d7f001fa", AUDIO_EFFECT_TYPE_DEEP_NOISE_SUPPRESSION);

#define AUDIO_EFFECT_TYPE_DEEP_NOISE_SUPPRESSION DEFINE_GUIDNAMED(AUDIO_EFFECT_TYPE_DEEP_NOISE_SUPPRESSION)

Audioeffekte wie Deep Noise Suppression werden als Audioverarbeitungsobjekt (APO) implementiert. Weitere Informationen finden Sie unter Windows-Audioverarbeitungsobjekte.

Die APO muss die IAudioSystemEffects3 Schnittstelle implementieren, wenn sie Effekte verfügbar macht, deren Zustand dynamisch aktiviert oder deaktiviert werden kann. Weitere Informationen finden Sie unter IAudioSystemEffects3-Schnittstelle (audioengineextensionapo.h).