MFFrameRateToAverageTimePerFrame 函式 (mfapi.h)
將視訊畫面播放速率轉換成畫面持續時間。
語法
HRESULT MFFrameRateToAverageTimePerFrame(
[in] UINT32 unNumerator,
[in] UINT32 unDenominator,
[out] UINT64 *punAverageTimePerFrame
);
參數
[in] unNumerator
畫面播放速率的分子。
[in] unDenominator
畫面播放速率的分母。
[out] punAverageTimePerFrame
接收視訊畫面的平均持續時間,以 100 奈秒為單位。
傳回值
如果此函式成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
根據畫面播放速率,此函式適用于計算樣本上的時間戳記。
此外,每個畫面的平均時間會用於較舊的 VIDEOINFOHEADER 和 VIDEOINFOHEADER2 格式結構。 如果管線中的所有元件需要在舊版格式結構與媒體基礎中使用的媒體類型屬性之間轉譯,此函式會提供標準轉換,讓管線中的所有元件都可以使用一致的值。
針對特定常見的畫面播放速率,函式會從查閱資料表取得畫面持續時間:
每秒框架數 (浮點數) | 每秒的畫面格數 (小數) | 每個畫面的平均時間 |
---|---|---|
59.94 | 60000/1001 | 166833 |
29.97 | 30000/1001 | 333667 |
23.976 | 24000/1001 | 417188 |
60 | 60/1 | 166667 |
30 | 30/1 | 333333 |
50 | 50/1 | 200000 |
25 | 25/1 | 400000 |
24 | 24/1 | 416667 |
大部分的視訊內容都使用此處所列的其中一個畫面播放速率。 對於其他畫面播放速率,函式會計算持續時間。
需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | mfapi.h |
程式庫 | Mfplat.lib |
Dll | Mfplat.dll |