EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS fonction de rappel (acxelements.h)
Le rappel EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS est implémenté par le pilote et est appelé lorsque les limites de taille de mémoire tampon pour un format de données donné sont demandées pour le moteur audio spécifié.
Syntaxe
EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS EvtAcxAudioengineRetrieveBufferSizeLimits;
NTSTATUS EvtAcxAudioengineRetrieveBufferSizeLimits(
ACXAUDIOENGINE AudioEngine,
ACXDATAFORMAT Format,
PULONG MinBufferSizeInBytes,
PULONG MaxBufferSizeInBytes
)
{...}
Paramètres
AudioEngine
Objet ACXAUDIOENGINE pour lequel les limites de taille de mémoire tampon ont été demandées. Pour plus d’informations sur les objets ACX, consultez Résumé des objets ACX.
Format
ACXDATAFORMAT pour lequel le rappel détermine la taille minimale et maximale des mémoires tampons avec lesquelles le moteur audio peut l’accueillir.
MinBufferSizeInBytes
Taille minimale de mémoire tampon que le moteur audio matériel peut prendre en charge pour le format de données donné, à l’instance lorsqu’il est appelé. La taille de la mémoire tampon est spécifiée en octets.
MaxBufferSizeInBytes
Taille maximale de mémoire tampon que le moteur audio matériel peut prendre en charge pour le format de données donné, à l’instance lorsqu’il est appelé. La taille de la mémoire tampon est spécifiée en octets.
Valeur de retour
Retourne STATUS_SUCCESS
si l’appel a réussi. Sinon, elle retourne un code d’erreur approprié. Pour plus d’informations, consultez Using NTSTATUS Values.
Remarques
Exemple
L’exemple d’utilisation est illustré ci-dessous.
EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS CodecR_EvtAcxAudioEngineRetrieveBufferSizeLimits;
NTSTATUS
CodecR_EvtAcxAudioEngineRetrieveBufferSizeLimits(
_In_ ACXAUDIOENGINE AudioEngine,
_In_ ACXDATAFORMAT DataFormat,
_Out_ PULONG MinBufferBytes,
_Out_ PULONG MaxBufferBytes
)
{
PAGED_CODE();
ULONG bytesPerSecond = AcxDataFormatGetAverageBytesPerSec(DataFormat);
*MinBufferBytes = (ULONG) (MIN_AUDIOENGINE_BUFFER_DURATION_IN_MS * bytesPerSecond / 1000);
*MaxBufferBytes = (ULONG) (MAX_AUDIOENGINE_BUFFER_DURATION_IN_MS * bytesPerSecond / 1000);
return STATUS_SUCCESS;
}
Configuration requise pour ACX
version minimale d’ACX : 1.0
Pour plus d’informations sur les versions ACX, consultez vue d’ensemble de la version ACX.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | acxelements.h |
IRQL | PASSIVE_LEVEL |