IXAudio2Voice::EnableEffect-Methode (xaudio2.h)
Aktiviert den Effekt an einer bestimmten Position in der Effektkette der Stimme.
Syntax
\\HRESULT EnableEffect(
[in] UINT32 EffectIndex,
[in] UINT32 OperationSet
);
Parameter
[in] EffectIndex
Nullbasierter Index eines Effekts in der Effektkette der Stimme.
[in] OperationSet
Identifiziert diesen Aufruf als Teil eines verzögerten Batches. Weitere Informationen finden Sie in der Übersicht über XAudio2-Vorgänge .
Rückgabewert
Gibt bei erfolgreicher Ausführung S_OK zurück. andernfalls ein Fehlercode. Beschreibungen von Fehlercodes finden Sie unter XAudio2-Fehlercodes .
Hinweise
Seien Sie vorsichtig, wenn Sie einen Effekt aktivieren, während die Stimme, die ihn hostet, ausgeführt wird. Eine solche Aktion kann zu einem Problem führen, wenn der Effekt die Tonhöhe oder Lautstärke des Audios erheblich ändert.
Die Effekte in der Effektkette einer bestimmten XAudio2-Stimme müssen Audio mit der Verarbeitungs-Samplerate dieser Stimme nutzen und erzeugen. Der einzige Aspekt des Audioformats, das sie ändern können, ist die Kanalanzahl. Beispielsweise kann ein Reverb-Effekt Monodaten in 5.1 konvertieren. Der Client kann das OutputChannels-Feld der XAUDIO2_EFFECT_DESCRIPTOR-Struktur verwenden, um die Anzahl der Kanäle anzugeben, die von den einzelnen Effekten erzeugt werden sollen. Jeder Effekt in einer Effektkette muss eine Reihe von Kanälen erzeugen, die der nächste Effekt nutzen kann. Alle Aufrufe von IXAudio2Voice::EnableEffect oder IXAudio2Voice::D isableEffect , die dazu führen würden, dass die Effektkette diese Anforderungen nicht mehr erfüllt, schlagen fehl.
EnableEffect wird sofort wirksam, wenn Sie es über einen XAudio2-Rückruf mit einem OperationSetvon XAUDIO2_COMMIT_NOW aufrufen.
Plattformanforderungen
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Requirements (Anforderungen)
Zielplattform | Windows |
Kopfzeile | xaudio2.h |