IMFPMediaItem::GetDuration 方法 (mfplay.h)
重要 废弃。 此 API 可能会从 Windows 的未来版本中删除。 应用程序应使用 媒体会话 进行播放。
获取媒体项的持续时间。
语法
HRESULT GetDuration(
[in] REFGUID guidPositionType,
[out] PROPVARIANT *pvDurationValue
);
parameters
[in] guidPositionType
指定持续时间值的时间单位。 定义了以下值。
值 | 含义 |
---|---|
|
100 纳秒单位。
pvDurationValue 中返回的值是LARGE_INTEGER。
|
[out] pvDurationValue
指向接收持续时间的 PROPVARIANT 的指针。
返回值
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
方法返回内容的总持续时间,而不考虑通过 IMFPMediaItem::SetStartStopPosition 设置的任何值。
示例
#include <propvarutil.h>
HRESULT GetPlaybackDuration(IMFPMediaItem *pItem, ULONGLONG *phnsDuration)
{
PROPVARIANT var;
HRESULT hr = pItem->GetDuration(MFP_POSITIONTYPE_100NS, &var);
if (SUCCEEDED(hr))
{
hr = PropVariantToUInt64(var, phnsDuration);
PropVariantClear(&var);
}
return hr;
}
要求
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
目标平台 | Windows |
标头 | mfplay.h |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈