Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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. Die Modi sind in der nachstehenden Tabelle zusammengefasst.
| Modus | Rendern/Erfassen | BESCHREIBUNG |
|---|---|---|
| Roh | Beides | Der Unformatierte Modus gibt an, dass keine Signalverarbeitung auf den Datenstrom angewendet werden soll. Eine Anwendung kann einen rohen Datenstrom anfordern, der völlig unberührt ist und eine eigene Signalverarbeitung durchführt. |
| Standard | Beides | Dieser Modus definiert die Standardaudioverarbeitung. |
| Filme* | Erbringen | Filmaudiowiedergabe |
| Medien* | Beides | Musikaudiowiedergabe (Standard für die meisten Mediendatenströme) |
| Rede* | Erfassung | Menschliche Sprachaufnahme (z. B. Eingabe an persönlichen Assistenten) |
| Kommunikationen* | Beides | VOIP-Rendern und Erfassen (z. B. Teams, Skype, Lync) |
| Benachrichtigung* | Erbringen | Klingeltöne, Alarme, Warnungen usw. |
* Neu in Windows 10.
Von Bedeutung
Unformatierte Aufnahmedatenströme dürfen keine zeitunterschiedliche oder adaptive Verarbeitung enthalten, z. B. Echosteuerung, automatische Verstärkungssteuerung oder Rauschunterdrückung. Die einzige in der Rohaufnahme zulässige Audioverarbeitung ist eine lineare Entsprechung mit einer flachen Frequenzantwort.
Anforderungen des Signalverarbeitungsmodustreibers
Audiogerätetreiber müssen mindestens den Raw- 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 Abgleichsmodus.
Das folgende Diagramm zeigt ein System, das mehrere Modi unterstützt:
Windows Audio Stream-Kategorien
Um das System über die Verwendung eines Audiostreams zu informieren, haben Anwendungen die Möglichkeit, den Datenstrom mit einer bestimmten Audiostreamkategorie zu kategorisieren. Anwendungen können die Audiokategorie mithilfe einer der Audio-APIs direkt nach dem Erstellen des Audiodatenstroms festlegen. In Windows gibt es neun Audiostreamkategorien.
| Kategorie | BESCHREIBUNG |
|---|---|
| Film | Filme, Video mit Dialogfeld (ForegroundOnlyMedia ersetzen) |
| Medien | Standardkategorie für die Medienwiedergabe (Ersetzt BackgroundCapableMedia) |
| Spielechat | In-Game-Kommunikation zwischen Benutzern (neue Kategorie in Windows 10) |
| Rede | Spracheingabe (z. B. persönlicher Assistent) und Ausgabe (z. B. Navigations-Apps) (Neue Kategorie in Windows 10) |
| Kommunikationen | VOIP, Echtzeitchat |
| Alarmsignale | Alarm, Klingelton, Benachrichtigungen |
| Soundeffekte | Signalton, Klingeltöne usw. |
| Spielemedien | In-Game-Musik |
| Spieleffekte | Bälle, die springen, Automotorgeräusche, Schüsse usw. |
| Andere | Nicht kategorisierte Datenströme |
Wie bereits erwähnt, werden 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 ein bestimmter Streamingeffekt wie "akustisches Echounterdrückung" verfügbar ist oder ob keine Effekte verwendet werden. Wenn keine Effekte verwendet werden, 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 Stream als Kommunikation kennzeichnen, wird Windows informiert, dass die 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 fragt, 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 modusbezogenen 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 (NS) | Einfache Rauschunterdrückung (Simple Noise Suppression, NS) unterdrückt Rauschen wie Brummen und Summen, wenn es im Audiodatenstrom vorhanden ist. |
| Tiefe Rauschunterdrückung | Deep Noise Suppress verwendet erweiterte KI-/maschinelle Lerntechniken, um Rauschen insbesondere bei Sprachanrufen zu unterdrücken. |
| Automatische Gewinnsteuerung (AGC) | 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 (BF) | 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 gegenüber dem omnidirektionalen Empfangs-/Übertragungsmodus wird als Empfangs-/Übertragungsgewinn (oder Verlust) bezeichnet. |
| Konstante Tonentfernung | Konstanter Tonabzug wird verwendet, um konstante Hintergrundgeräusche wie Band-Rauschen, elektrische Lüfter oder Humus zu attenuieren. |
| Ausgleich | 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 Equalizereffekt reduziert die wahrgenommenen Lautstärkeunterschiede, indem die Audioausgabe abgleicht wird, sodass lautere und leiseere Sounds 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. |
| Virtueller Raumklang | 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 Hinweise, 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 den Hörern, die Richtung und Quelle des Geräusches zu finden, sondern sie verbessern auch die Art der akustischen Umgebung, die den Zuhörer umgibt. |
| Lautsprecherfüllung | Die meisten 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 Musik also nur von den vorderen linken und vorderen rechten Lautsprechern ausgeht, ist das ein suboptimales Klangerlebnis. 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 gespielt zu werden und die räumliche Empfindung zu verbessern. |
| Raumkorrektur | Die Raumkorrektur optimiert das Hörerlebnis für eine bestimmte Position im Raum, zum Beispiel das Mittelkissen Ihrer Couch, indem sie automatisch die optimale Kombination aus Verzögerung, Frequenzgang und Pegelanpassungen berechnet. Das Feature zur Raumkorrektur stimmt den Ton besser mit dem Bild auf dem Bildschirm ab und ist auch nützlich bei Desktoplautsprechern, die an nicht standardmäßigen Positionen platziert werden. Die Raumkorrektur-Verarbeitung stellt eine Verbesserung gegenüber ähnlichen Funktionen in High-End-Receivern dar, da sie besser berücksichtigt, wie das menschliche Ohr Schall verarbeitet. 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 nacheinander eine Reihe speziell entwickelter Töne von jedem Lautsprecher ab und misst den Abstand, die Frequenzantwort und die Gesamtverstärkung jedes Lautsprechers aus der Position des Mikrofons. |
| Bassmanagement | Es gibt zwei Bassverwaltungsmodi: Forward Bass Management und Reverse Bass Management. Vorwärts-Bassmanagement filtert die niedrigen Frequenzanteile aus dem Audiodatenstrom heraus. Der Vorwärtsbassverwaltungsalgorithmus leitet die gefilterte Ausgabe an den Subwoofer oder an die Front-Links- und Front-Rechts-Lautsprecherkanäle um, abhängig von den Kanälen, die tiefe Bassfrequenzen verarbeiten können. Diese Entscheidung basiert auf der Einstellung des LRBig-Flags. Um das LRBig-Flag festzulegen, verwendet der Benutzer das Sound-Applet in der Systemsteuerung, um auf das Dialogfeld "Bassverwaltungseinstellungen" zuzugreifen. Der Benutzer aktiviert ein Kontrollkästchen, um z. B. anzugeben, dass die Front-Rechts- und Front-Links-Lautsprecher Full-Range sind und diese Aktion die LRBig-Flagge festlegt. Um dieses Kennzeichen zu deaktivieren, aktivieren Sie das Kontrollkästchen. Umgekehrte Bassverwaltung verteilt das Signal vom Subwoofer-Kanal auf die anderen Ausgabekanäle. Das Signal wird abhängig von der Einstellung des LRBig-Flags entweder an alle Kanäle oder an die Front-Links- und Front-Rechts-Kanäle weitergeleitet. Bei diesem Prozess wird eine erhebliche Pegelabsenkung verwendet, wenn das Subwoofer-Signal in die anderen Kanäle eingemischt wird. Der verwendete Bassverwaltungsmodus hängt von der Verfügbarkeit eines Subwoofers und der Basswiedergabefähigkeit der Hauptlautsprecher ab. In Windows stellt der Benutzer diese Informationen über das Sound-Applet in der 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. |
| Sprechervergütung | Einige Lautsprecher sind besser bei der Wiedergabe von Sound als bei anderen. Beispielsweise kann ein bestimmter Lautsprecher Geräusche unter 100 Hz dämpfungen. Manchmal verfügen Audiotreiber und Firmware-DSP-Lösungen über Kenntnisse über die spezifischen Leistungsmerkmale der Lautsprecher, an denen sie spielen, und sie können die Verarbeitung hinzufügen, um die Lautsprecherbeschränkungen auszugleichen. Beispielsweise könnte ein Endpunkteffekt (EFX) erstellt werden, der einen Verstärkungsgewinn auf Frequenzen unter 100 Hz anwendet. Dieser Effekt führt in Kombination mit der Dämpfung im physischen Lautsprecher zu einer verbesserten Audiotreue. |
| Komprimierung dynamischer Bereiche | Dynamische Bereichskomprimierung amplifiziert ruhige Sounds durch Eingrenzen oder "Komprimieren" des dynamischen Bereichs eines Audiosignals. Die Audiokomprimierung verstärkt leise Sounds, die unter einer bestimmten Schwelle liegen, während laute Geräusche nicht betroffen sind. |
Die hier gezeigten #define Anweisungen sind in der Headerdatei "KSMedia.h" verfügbar.
VORGABE
#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 GEWINNSTEUERUNG
#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)
KONSTANTER TONABZUG
#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ÄRKEEQUALIZER
#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)
Bass-Boost
#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)
VIRTUELLER 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)
Bassverwaltung
#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)
SPRECHERVERGÜTUNG
#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 BEREICH
#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)
Tiefe Rauschunterdrückung
Ab Windows 11, Version 24H2, ist eine neue GUID verfügbar, um deep Noise Suppression zu aktivieren.
Es gibt zwei Bezeichner für Rauschunterdrückungseffekte. Es gibt einen vorhandenen Bezeichner für die Rauschunterdrückung und einen neuen Bezeichner, der für die Tiefenrauschunterdrückung hinzugefügt wird. Das 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 Audio Processing Objects.
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).