iMediaSeeking 接口 (strmif.h)
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
接口 IMediaSeeking
包含用于查找流中某个位置的方法,以及用于设置播放速率的方法。 筛选器关系图管理器公开此接口,单个筛选器或引脚也公开。 应用程序应查询筛选器关系图管理器中的接口。
筛选器关系图管理器会分发对关系图中每个呈现器筛选器的任何 IMediaSeeking
调用。 呈现器筛选器将调用上游发送到源筛选器。 此事件序列确保所有流保持同步。 如果任何分布式调用返回错误,筛选器图形管理器将返回它收到的第一个错误值,即使某些分布式调用成功也是如此。 E_NOTIMPL例外:筛选器关系图管理器不会返回E_NOTIMPL,除非它是由所有分布式调用返回的。
当图形处于任何状态时,应用程序可以查找图形, (正在运行、暂停或停止) 。 如果图形正在运行,筛选器关系图管理器会在发出 seek 命令之前暂停图形。 然后,它再次运行图形。 所有查找操作都与当前播放速率无关。 查找操作会导致从图形刷新任何挂起的媒体数据。
对于指定时间的所有 IMediaSeeking
参数,时间单位取决于当前时间格式。 若要设置时间格式,请调用 IMediaSeeking::SetTimeFormat 方法。 时间格式是 uuids.h 中定义的) GUID (全局唯一标识符。 有关详细信息,请参阅 时间格式 GUID。
继承
IMediaSeeking 接口继承自 IUnknown 接口。 IMediaSeeking 还具有以下类型的成员:
方法
IMediaSeeking 接口包含以下方法。
IMediaSeeking::CheckCapabilities CheckCapabilities 方法查询流是否具有指定的查找功能。 |
IMediaSeeking::ConvertTimeFormat ConvertTimeFormat 方法从一种时间格式转换为另一种时间格式。 |
IMediaSeeking::GetAvailable GetAvailable 方法检索查找效率的时间范围。 |
IMediaSeeking::GetCapabilities GetCapabilities 方法检索流的所有查找功能。 |
IMediaSeeking::GetCurrentPosition GetCurrentPosition 方法检索相对于流总持续时间的当前位置。 |
IMediaSeeking::GetDuration GetDuration 方法获取流的持续时间。 |
IMediaSeeking::GetPositions GetPositions 方法检索相对于流总持续时间的当前位置和停止位置。 |
IMediaSeeking::GetPreroll GetPreroll 方法检索将在开始位置之前排队的数据量。 |
IMediaSeeking::GetRate GetRate 方法检索播放速率。 |
IMediaSeeking::GetStopPosition GetStopPosition 方法检索相对于流持续时间停止播放的时间。 |
IMediaSeeking::GetTimeFormat GetTimeFormat 方法检索当前用于搜寻操作的时间格式。 |
IMediaSeeking::IsFormatSupported IsFormatSupported 方法确定查找操作是否支持指定的时间格式。 |
IMediaSeeking::IsUsingTimeFormat IsUsingTimeFormat 方法确定搜寻操作当前是否使用指定的时间格式。 |
IMediaSeeking::QueryPreferredFormat QueryPreferredFormat 方法检索查找的首选时间格式。 |
IMediaSeeking::SetPositions SetPositions 方法设置当前位置和停止位置。 |
IMediaSeeking::SetRate SetRate 方法设置播放速率。 |
IMediaSeeking::SetTimeFormat SetTimeFormat 方法设置后续查找操作的时间格式。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | strmif.h (包括 Dshow.h) |