EVT_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION回调函数 (acxelements.h)
EVT_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION回调函数由驱动程序实现,并在设置指定流音频引擎的当前写入位置时调用。
语法
EVT_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION EvtAcxStreamaudioengineAssignCurrentWritePosition;
NTSTATUS EvtAcxStreamaudioengineAssignCurrentWritePosition(
ACXSTREAMAUDIOENGINE StreamAudioEngine,
ULONG Position
)
{...}
参数
StreamAudioEngine
一个已初始化的现有 ACXSTREAMAUDIOENGINE 对象。 有关 ACX 对象的详细信息,请参阅 ACX 对象的摘要。
Position
ACXSTREAMAUDIOENGINE 对象的当前写入位置(以字节为单位)。 有关位置值的详细信息,请参阅 KSPROPERTY_AUDIO_WAVERT_CURRENT_WRITE_POSITION。
返回值
STATUS_SUCCESS
如果调用成功,则返回 。 否则,它将返回相应的错误代码。 有关详细信息,请参阅 使用 NTSTATUS 值。
备注
示例
示例用法如下所示。
EVT_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION CodecR_EvtAcxStreamAudioEngineAssignCurrentWritePosition;
NTSTATUS
CodecR_EvtAcxStreamAudioEngineAssignCurrentWritePosition(
_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->SetCurrentWritePosition(Position);
}
return status;
}
ACX 要求
最低 ACX 版本: 1.0
有关 ACX 版本的详细信息,请参阅 ACX 版本概述。
要求
要求 | 值 |
---|---|
Header | acxelements.h |
IRQL | PASSIVE_LEVEL |