iMediaSeeking 接口 (strmif.h)

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia 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)

另请参阅

查找筛选器图