CBaseReferenceClock.AdviseTime 方法
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 AdviseTime
创建一次性建议请求。 此方法实现 IReferenceClock::AdviseTime 方法。
语法
HRESULT AdviseTime(
REFERENCE_TIME baseTime,
REFERENCE_TIME streamTime,
HEVENT hEvent,
DWORD_PTR *pdwAdviseToken
);
参数
-
baseTime
-
基准参考时间,以 100 纳秒为单位。
-
streamTime
-
流偏移时间,以 100 纳秒为单位。
-
hEvent
-
由调用方创建的事件的句柄。
-
pdwAdviseToken
-
指向接收建议请求标识符的变量的指针。
返回值
返回下表中显示的 HRESULT 值之一。
返回代码 | 说明 |
---|---|
|
成功 |
|
无效的时间值 |
|
失败 |
|
NULL 指针参数 |
备注
此方法为引用时间 baseTime + streamTime 创建一次性建议请求。 总和必须大于零且小于 MAX_TIME,否则该方法返回E_INVALIDARG。 在请求的时间,时钟向 hEvent 参数中指定的事件发出信号。
若要在到达时间之前取消通知,请调用 CBaseReferenceClock::Unadvise 方法并传递从此调用返回的 pdwAdviseToken 值。 通知发生后,时钟会自动清除它,因此无需调用 Unadvise。 但是,这样做不是错误。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|