Compartir a través de


Método IXAudio2Voice::SetEffectParameters (xaudio2.h)

Establece parámetros para un efecto determinado en la cadena de efectos de la voz.

Sintaxis

\\HRESULT SetEffectParameters(
  [in] UINT32     EffectIndex,
  [in] const void *pParameters,
  [in] UINT32     ParametersByteSize,
  [in] UINT32     OperationSet
);

Parámetros

[in] EffectIndex

Índice de base cero de un efecto dentro de la cadena de efectos de la voz.

[in] pParameters

Devuelve los valores actuales de los parámetros específicos del efecto.

[in] ParametersByteSize

Tamaño de la matriz pParameters en bytes.

[in] OperationSet

Identifica esta llamada como parte de un lote diferido. Consulte la introducción a los conjuntos de operaciones XAudio2 para obtener más información.

Valor devuelto

Devuelve S_OK si se ejecuta correctamente; de lo contrario, un código de error. Consulte Códigos de error de XAudio2 para obtener descripciones de los códigos de error.

Se produce un error con E_NOTIMPL si el efecto no admite una interfaz de control de parámetros genérico.

Comentarios

El efecto específico que se usa determina el tamaño y el formato válidos del búfer pParameters . Se producirá un error en la llamada si pParameters no es válido o si ParametersByteSize no es exactamente el tamaño que espera el efecto. El cliente debe tener cuidado para dirigir la llamada a SetEffectParameters al efecto correcto. Si esta llamada se dirige a un efecto diferente que acepta el mismo tamaño de bloque de parámetros, los parámetros se interpretarán de forma diferente. Esto puede provocar resultados inesperados.

La memoria a la que apunta pParametersno se debe liberar inmediatamente, ya que XAudio2 deberá hacer referencia a ella más adelante cuando los parámetros se apliquen realmente al efecto. Esto sucede durante el siguiente paso de procesamiento de audio si el argumento OperationSet está XAUDIO2_COMMIT_NOW. De lo contrario, los parámetros se aplican al efecto más adelante, durante el primer paso de procesamiento después de llamar a la función IXAudio2::CommitChanges con el mismo argumento OperationSet .

SetEffectParameters surte efecto inmediatamente cuando se llama desde una devolución de llamada XAudio2 con un OperationSet de XAUDIO2_COMMIT_NOW.

NotaIXAudio2Voice::GetEffectParameters siempre devuelve los parámetros actuales reales del efecto. Sin embargo, es posible que no coincidan con los parámetros establecidos por la llamada más reciente a IXAudio2Voice::SetEffectParameters. Los parámetros reales solo se cambian la próxima vez que se ejecute el motor de audio después de la llamada IXAudio2Voice::SetEffectParameters (o después de la llamada IXAudio2::CommitChanges correspondiente, si se llamó a IXAudio2Voice::SetEffectParameters con un identificador de operación diferida).
 

Requisitos de la plataforma

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); SDK de DirectX (XAudio 2.7)

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado xaudio2.h

Consulte también

Cómo: crear un efecto en cadena

IXAPOParameters::SetParameters

IXAudio2Voice

Información general sobre XAPO