IAMTimelineSrc::SetMediaTimes 方法
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
备注
[已弃用。 此 API 可能会从 Windows 的未来版本中删除。]
方法 SetMediaTimes
设置媒体停止和开始时间。
语法
HRESULT SetMediaTimes(
REFERENCE_TIME Start,
REFERENCE_TIME Stop
);
参数
-
启动
-
介质开始时间,以 100 纳秒为单位。
-
停止
-
介质停止时间,以 100 纳秒为单位。
返回值
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
备注
媒体时间是相对于原始媒体文件的停止和开始时间。 将视频或音频源添加到时间线时,请始终设置媒体时间。 否则,可能会出现呈现问题。 停止时间必须大于开始时间。
若要使用视频源中的静止帧,请将停止时间设置为大于开始时间的小数部分,例如 100 纳秒。 将它们设置为相同的值会导致呈现错误。
如果时间线持续时间与媒体持续时间不匹配,则源会相应地拉伸或收缩。 这会导致剪辑的播放速度比创作速率慢或快。 (音调将在音频源中发生。) 有关详细信息,请参阅 DirectShow 编辑服务中的时间。
可以通过调用 SetMediaLength 方法指定源文件的持续时间。 如果设置的媒体停止时间超过持续时间,DES 将截断停止时间。
备注
头文件 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中不可用。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈