Freigeben über


EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS Rückruffunktion (acxelements.h)

Der EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS Rückruf wird vom Treiber implementiert und aufgerufen, wenn die Puffergrößenbeschränkungen für ein bestimmtes Datenformat für das angegebene Audiomodul angefordert werden.

Syntax

EVT_ACX_AUDIOENGINE_RETRIEVE_BUFFER_SIZE_LIMITS EvtAcxAudioengineRetrieveBufferSizeLimits;

NTSTATUS EvtAcxAudioengineRetrieveBufferSizeLimits(
  ACXAUDIOENGINE AudioEngine,
  ACXDATAFORMAT Format,
  PULONG MinBufferSizeInBytes,
  PULONG MaxBufferSizeInBytes
)
{...}

Parameter

AudioEngine

Das ACXAUDIOENGINE-Objekt, für das die Grenzwerte für die Puffergröße angefordert wurden. Weitere Informationen zu ACX-Objekten finden Sie unter Summary of ACX Objects.

Format

Das ACXDATAFORMAT, für das der Rückruf die Min- und Max-Puffergrößen bestimmt, mit denen das Audiomodul es aufnehmen kann.

MinBufferSizeInBytes

Die minimale Größe des Puffers, den das Hardwareaudiomodul für das angegebene Datenformat unterstützen kann, bei der Instanz, wenn sie aufgerufen wird. Die Puffergröße wird in Byte angegeben.

MaxBufferSizeInBytes

Die maximale Größe des Puffers, den das Hardwareaudiomodul für das angegebene Datenformat unterstützen kann, bei der Instanz, wenn es aufgerufen wird. Die Puffergröße wird in Byte angegeben.

Rückgabewert

Gibt STATUS_SUCCESS zurück, wenn der Anruf erfolgreich war. Andernfalls wird ein entsprechender Fehlercode zurückgegeben. Weitere Informationen finden Sie unter Verwenden von NTSTATUS-Werten.

Bemerkungen

Beispiel

Die Beispielverwendung wird unten gezeigt.

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;
}

ACX-Anforderungen

Mindestens ACX-Version: 1.0

Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.

Anforderungen

Anforderung Wert
Header- acxelements.h
IRQL- PASSIVE_LEVEL

Siehe auch