如何将效果应用到已捕获的视频 (HTML)
[ 本文适用于编写 Windows 运行时应用的 Windows 8.x 和 Windows Phone 8.x 开发人员。如果你要针对 Windows 10 进行开发,请参阅 最新文档 ]
使用 MediaCapture.AddEffectAsync 方法将效果应用到捕获的视频。
效果可以是内置效果(例如在 Windows 上受支持的 VideoStabilization 效果或在 Windows Phone 上受支持的 SlowMotionEffectDefinition),也可以是属于媒体基础转换 (MFT) 的自定义效果。有关如何创建和使用 MFT 的信息,请参阅媒体基础转换和媒体扩展示例。
目标: 本教程描述了如何将效果应用到已捕获的视频。
先决条件
本主题假设你可以创建使用 JavaScript 的基本的 Windows 运行时应用。有关创建你的第一个应用的帮助,请参阅创建你的第一个使用 JavaScript 的 Windows 应用商店应用。
说明
若要将效果添加到捕获的视频,请调用 AddEffectAsync 方法。此方法使用以下参数:
- MediaStreamType - 指定流用于视频录制、视频预览、音频还是照片的 MediaStreamType 枚举值之一。
- effectActivationID - 实现该效果的可激活运行时类的类标识符。此参数将被添加到效果链(添加到从设备源出来的源流中)。此运行时类必须实现 IMediaExtension 接口。
- effectSettings - 包含用于该效果的其他配置参数的 IPropertySet。如果不需要为该效果使用任何其他配置,则此参数应该为 null。
应用程序可多次调用此方法以添加多个效果。
此示例调用 AddEffectAsync 以将 VideoStabilization 效果添加到 MediaCapture 对象。
// captureMgr is a MediaCapture object defined elsewhere
capturMgr.addEffectAsync(
Windows.Media.Capture.MediaStreamType.videoRecord,
"Windows.Media.VideoEffects.VideoStabilization",
null);
注意 此示例使用了 Windows Phone 应用商店应用不支持的 VideoStabilizationEffect,但用户可以使用 AddEffectAsync 添加其他受支持的效果。
摘要
有关如何将效果应用到视频的另一个示例,请参阅如何添加视频防抖动主题和媒体捕获示例。