IRenderEngine 接口

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

注意

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

 

接口IRenderEngine通过从时间线构造筛选图来呈现 DirectShow Editing Services (DES) 项目。

DES 提供实现此接口的两个组件:

  • 基本呈现引擎创建未压缩输出。 可以使用输出进行预览,也可以通过压缩筛选器路由输出并将其写入文件。
  • 智能呈现引擎使用智能重新压缩创建压缩输出。 使用智能重压,仅当源文件的格式与输出格式不同时,才重新压缩源文件。 具有匹配格式的源将直接写入输出文件。 根据具体方案,智能重压可以大大缩短呈现时间。

智能呈现引擎还支持 ISmartRenderEngine 接口。

尽管应用程序可以创建筛选器图并将其传递给呈现引擎,但呈现引擎的典型方案是创建筛选器图。 构建图形的过程分为两个阶段。 首先,通过调用 IRenderEngine::ConnectFrontEnd 方法生成前端。 然后将前端的输出引脚连接到所需的呈现筛选器:

  • 用于预览的视频和音频呈现器,或者
  • 用于生成最终输出的压缩器、多路复用器和文件编写器。

成员

IRenderEngine 接口继承自 IUnknown 接口。 IRenderEngine 也有以下类型的成员:

方法

IRenderEngine 接口具有这些方法。

方法 说明
Commit 未实现。
ConnectFrontEnd 从当前时间线生成筛选器图的前端。
取消提交 未实现。
DoSmartRecompression 不支持。
GetCaps 未实现。
GetFilterGraph 检索呈现引擎已构造的筛选器图(如果有)。
GetGroupOutputPin 检索指定组的输出引脚。
GetTimelineObject 检索呈现引擎当前使用的时间线。
GetVendorString 检索供应商字符串。
RenderOutputPins 创建筛选器图的预览部分。
ScrapIt 放弃呈现引擎的筛选器图和所有关联的对象。
SetDynamicReconnectLevel 设置呈现期间的动态重新连接级别。
SetFilterGraph 指定呈现引擎要使用的筛选器图。
SetInterestRange 不支持。
SetInterestRange2 不支持。
SetRenderRange 设置要呈现的时间范围。
SetRenderRange2 将要呈现的时间范围设置为 双精度值。
SetSourceConnectCallback 不支持。
SetSourceNameValidation 指定呈现引擎如何验证文件名。
SetTimelineObject 设置呈现引擎要使用的时间线。
UseInSmartRecompressionGraph 不支持。

 

备注

注意

头文件 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

另请参阅

呈现项目