IXAudio2Voice::SetEffectParameters-Methode (xaudio2.h)
Legt Parameter für einen bestimmten Effekt in der Effektkette der Stimme fest.
Syntax
\\HRESULT SetEffectParameters(
[in] UINT32 EffectIndex,
[in] const void *pParameters,
[in] UINT32 ParametersByteSize,
[in] UINT32 OperationSet
);
Parameter
[in] EffectIndex
Nullbasierter Index eines Effekts innerhalb der Effektkette der Stimme.
[in] pParameters
Gibt die aktuellen Werte der effektspezifischen Parameter zurück.
[in] ParametersByteSize
Größe des pParameters-Arrays in Bytes.
[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 .
Schlägt mit E_NOTIMPL fehl, wenn der Effekt keine generische Parametersteuerungsschnittstelle unterstützt.
Hinweise
Der verwendete spezifische Effekt bestimmt die gültige Größe und das Format des pParameters-Puffers . Der Aufruf schlägt fehl, wenn pParameters ungültig ist oder ParametersByteSize nicht genau die Größe aufweist, die der Effekt erwartet. Der Client muss darauf achten, den SetEffectParameters-Aufruf an den richtigen Effekt zu leiten. Wenn dieser Aufruf an einen anderen Effekt weitergeleitet wird, der die gleiche Parameterblockgröße akzeptiert, werden die Parameter unterschiedlich interpretiert. Dies kann zu unerwarteten Ergebnissen führen.
Der speicher, auf den pParameters verweist, darf nicht sofort freigegeben werden, da XAudio2 später darauf verweisen muss, wenn die Parameter tatsächlich auf den Effekt angewendet werden. Dies geschieht während des nächsten Audioverarbeitungsdurchlaufs, wenn das Argument OperationSetXAUDIO2_COMMIT_NOW ist. Andernfalls werden die Parameter später auf den Effekt angewendet, während des ersten Verarbeitungsdurchlaufs, nachdem die IXAudio2::CommitChanges-Funktion mit demselben OperationSet-Argument aufgerufen wurde.
SetEffectParameters wird sofort wirksam, wenn von einem XAudio2-Rückruf mit einem OperationSetXAUDIO2_COMMIT_NOW aufgerufen wird.
Plattformanforderungen
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | xaudio2.h |
Weitere Informationen
So wird's gemacht: Erstellen einer Effektkette