IAMTimeline::ValidateSourceNames 方法

[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayerIMFMediaEngine音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

备注

[已弃用。 此 API 可能会从 Windows 的未来版本中删除。]

 

方法ValidateSourceNames使用媒体定位符验证时间线中的源名称。 (可选)此方法还会更新它找到文件的任何源对象。

语法

HRESULT ValidateSourceNames(
   long          ValidateFlags,
   IMediaLocator *pOverride,
   long          NotifyEventHandle
);

参数

ValidateFlags

指定媒体定位符行为的 文件名验证标志 的按位组合。 必须存在SFN_VALIDATEF_REPLACE和SFN_VALIDATEF_CHECK标志,否则该方法返回E_INVALIDARG。

pOverride

指向媒体定位 符的 IMediaLocator 接口的可选指针,用于替代默认值。 若要使用默认媒体定位符,请将此参数的值设置为 NULL。 有关更多信息,请参见备注。

NotifyEventHandle

事件的句柄。 方法在完成验证后向事件发出信号。

返回值

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

备注

使用 pOverride 参数,可以提供自己的 IMediaLocator 接口的自定义实现。 例如,默认媒体定位器不会通知应用程序它找到的文件 (或找不到) 。 若要绕过此限制,可以实现自定义媒体定位符,使其成为默认版本的包装器。 在自定义版本中,将 IMediaLocator::FindMediaFile 调用直接传递到默认版本,并检查返回值。

备注

头文件 Qedit.h 与版本 7 之后的 Direct3D 标头不兼容。

 

备注

若要获取 Qedit.h,请下载适用于 Windows Vista 和 .NET Framework 3.0 的Microsoft Windows SDK更新。 Qedit.h 在 Windows 7 和 .NET Framework 3.5 Service Pack 1 的Microsoft Windows SDK中不可用。

 

要求

要求
标头
Qedit.h

Strmiids.lib

另请参阅

IAMTimeline 接口

错误和成功代码