IMFVirtualCamera::CreateSyncEvent 方法 (mfvirtualcamera.h)

IKsControl::KsEvent 方法的包装器,用于启用或禁用事件。

语法

HRESULT CreateSyncEvent(
  REFGUID             kseventSet,
  ULONG               kseventId,
  ULONG               kseventFlags,
  HANDLE              eventHandle,
  IMFCameraSyncObject **cameraSyncObject
);

参数

kseventSet

表示 KSEVENT 的 GUID。设置 字段。

kseventId

表示 KSEVENT.Id 字段的 ULONG。

kseventFlags

一组表示 KSEVENT 的按位或按位标志 。标志 字段。

eventHandle

表示 KSEVENTDATA 的句柄。EventHandle.Event 字段。

cameraSyncObject

接收 IMFSyncObject 接口的输出参数。 调用方负责释放此对象。

返回值

返回 HRESULT 值,包括但不限于以下值:

错误代码 说明
S_OK 已成功

注解

此方法允许调用方在调用方和虚拟相机之间创建事件对象,以便进行同步。 调用此 API 时,虚拟相机实现将收到对 IKsControl::KsEvent 的调用。 生成的 IMFCameraSyncObject 可用于阻止来自虚拟相机的事件。

获取 IMFCameraSyncObject 后,调用方可以选择使用 IMFCameraSyncObject::WaitOnSignal 方法,或者在提供给 CreateSyncObject 方法的 HANDLE 上调用 WaitForSingleObjectWaitForMultipleObjects 调用方不得同时等待这两者,因为驱动程序只能设置事件上的信号一次。

当不再需要同步对象时,调用方必须调用 IMFCameraSyncObject::Shutdown ,无论等待操作是否成功。

要求

要求
最低受支持的客户端 Windows 内部版本 22000
标头 mfvirtualcamera.h
Library mfsensorgroup.lib
DLL mfsensorgroup.dll

另请参阅

IKsControl::KsEvent

IMFCameraSyncObject

IMFCameraSyncObject::WaitOnSignal

WaitForSingleObject

WaitForMultipleObjects