IRenderEngine 接口
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 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中不可用。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|
另请参阅