共用方式為


IMFPMediaItem::GetDuration 方法 (mfplay.h)

重要 廢棄。 此 API 可能會從未來的 Windows 版本中移除。 應用程式應該使用 媒體會話 進行播放。
 

取得媒體專案的持續時間。

語法

HRESULT GetDuration(
  [in]  REFGUID     guidPositionType,
  [out] PROPVARIANT *pvDurationValue
);

參數

[in] guidPositionType

指定持續時間值的時間單位。 定義下列值。

意義
MFP_POSITIONTYPE_100NS
100 奈秒單位。

pvDurationValue中傳回的值是LARGE_INTEGER

  • variant 類型 (vt) :VT_I8
  • Variant 成員: hVal

[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

另請參閱

如何取得播放持續時間

IMFPMediaItem

使用 MFPlay 進行音訊/視訊播放