次の方法で共有


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 形式の構造体で使用されます。 この関数は、パイプライン内のすべてのコンポーネントが、古い形式構造と Media Foundation で使用されるメディアの種類の属性の間で変換する必要がある場合に、一貫性のある値を使用できるように標準変換を提供します。

特定の一般的なフレーム レートの場合、関数は検索テーブルからフレーム期間を取得します。

1 秒あたりのフレーム数 (浮動小数点) 1 秒あたりのフレーム数 (小数部) フレームあたりの平均時間
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
Library Mfplat.lib
[DLL] Mfplat.dll

関連項目

MFAverageTimePerFrameToFrameRate

メディア ファンデーション機能

メディアの種類