функция обратного вызова EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION (acxelements.h)
Функция обратного вызова EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION реализуется драйвером и вызывается при установке позиции последнего допустимого байта в звуковом буфере для указанного обработчика потоковой передачи.
Синтаксис
EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION EvtAcxStreamaudioengineAssignLastBufferPosition;
NTSTATUS EvtAcxStreamaudioengineAssignLastBufferPosition(
ACXSTREAMAUDIOENGINE StreamAudioEngine,
ULONG Position
)
{...}
Параметры
StreamAudioEngine
Существующий инициализированный объект ACXSTREAMAUDIOENGINE. Дополнительные сведения об объектах ACX см. в разделе Сводка по объектам ACX.
Position
Указывает положение последнего допустимого байта в звуковом буфере указанного обработчика потоковой передачи. Дополнительные сведения о значении позиции см. в разделе KSPROPERTY_AUDIO_WAVERT_CURRENT_WRITE_LASTBUFFER_POSITION.
Возвращаемое значение
Возвращает значение STATUS_SUCCESS
, если вызов был успешным. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в разделе Использование значений NTSTATUS.
Remarks
Пример
Ниже приведен пример использования.
EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION CodecR_EvtAcxStreamAudioEngineAssignLastBufferPosition;
NTSTATUS
CodecR_EvtAcxStreamAudioEngineAssignLastBufferPosition(
_In_ ACXSTREAMAUDIOENGINE StreamAudioEngine,
_In_ ULONG Position
)
{
NTSTATUS status = STATUS_INVALID_PARAMETER;
ACXSTREAM stream;
PCODEC_STREAM_CONTEXT ctx;
CRenderStreamEngine * streamEngine = NULL;
PAGED_CODE();
stream = AcxStreamAudioEngineGetStream(StreamAudioEngine);
if (stream)
{
ctx = GetCodecStreamContext(stream);
streamEngine = static_cast<CRenderStreamEngine*>(ctx->StreamEngine);
status = streamEngine->SetLastBufferPosition(Position);
}
return status;
}
Требования ACX
Минимальная версия ACX: 1.0
Дополнительные сведения о версиях ACX см. в статье Обзор версий ACX.
Требования
Требование | Значение |
---|---|
Заголовок | acxelements.h |
IRQL | PASSIVE_LEVEL |