Método IAudioClient3::GetSharedModeEnginePeriod (audioclient.h)

Devuelve el intervalo de periodicidades admitidos por el motor para el formato de secuencia especificado. La periodicidad del motor es la velocidad a la que el motor activa un cliente de audio controlado por eventos para transferir datos de audio hacia o desde el motor. Los valores devueltos dependen de las características del cliente de audio según se especifica a través de una llamada anterior a IAudioClient2::SetClientProperties.

Sintaxis

HRESULT GetSharedModeEnginePeriod(
  [in]  const WAVEFORMATEX *pFormat,
  [out] UINT32             *pDefaultPeriodInFrames,
  [out] UINT32             *pFundamentalPeriodInFrames,
  [out] UINT32             *pMinPeriodInFrames,
  [out] UINT32             *pMaxPeriodInFrames
);

Parámetros

[in] pFormat

Tipo: const WAVEFORMATEX*

Formato de secuencia para el que se consultan las periodicidades admitidas.

[out] pDefaultPeriodInFrames

Tipo: UINT32*

Período predeterminado con el que el motor reactivará el cliente para transferir ejemplos de audio

[out] pFundamentalPeriodInFrames

Tipo: UINT32*

El período fundamental con el que el motor reactivará al cliente para transferir muestras de audio. Al establecer la periodicidad del motor de audio, debe usar un múltiplo entero de este valor.

[out] pMinPeriodInFrames

Tipo: UINT32*

El período más corto, en fotogramas de audio, con el que el motor de audio reactivará al cliente para transferir muestras de audio.

[out] pMaxPeriodInFrames

Tipo: UINT32*

El período más largo, en fotogramas de audio, con el que el motor de audio reactivará al cliente para transferir muestras de audio.

Valor devuelto

Tipo: HRESULT

Este método devuelve S_OK para indicar que se ha completado correctamente. De lo contrario, devuelve un código de error adecuado.

Comentarios

Los clientes de audio solicitan una periodicidad específica del motor de audio con el parámetro PeriodInFrames a IAudioClient3::InitializeSharedAudioStream. El valor de PeriodInFrames debe ser un múltiplo entero del valor devuelto en el parámetro pFundamentalPeriodInFrames . PeriodInFrames también debe ser mayor o igual que el valor devuelto en pMinPeriodInFrames y menor o igual que el valor de pMaxPeriodInFrames.

Por ejemplo, para un formato de 44100 kHz, GetSharedModeEnginePeriod podría devolver:

  • pDefaultPeriodInFrames = 448 fotogramas (aproximadamente 10,16 milisegundos)

  • pFundamentalPeriodInFrames = 4 fotogramas (aproximadamente 0,09 milisegundos)

  • pMinPeriodInFrames = 48 fotogramas (aproximadamente 1,09 milisegundos)

  • pMaxPeriodInFrames = 448 fotogramas (igual que el valor predeterminado)

Los valores permitidos para el parámetro PeriodInFrames para InitializeSharedAudioStream incluirían 48 y 448. También incluirían cosas como 96 y 128.

NO incluirían 4 (que es menor que el valor mínimo permitido) o 98 (que no es un múltiplo del fundamental) o 1000 (que es mayor que el valor máximo permitido).

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2016 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado audioclient.h

Consulte también

IAudioClient3