IReferenceClockTimerControl::SetDefaultTimerResolution メソッド (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
メソッドは SetDefaultTimerResolution
、タイマーの最小解像度を設定します。
構文
HRESULT SetDefaultTimerResolution(
[in] REFERENCE_TIME timerResolution
);
パラメーター
[in] timerResolution
最小タイマー解像度 (100 ナノ秒単位)。 値が 0 の場合、参照クロックは前の要求を取り消します。
戻り値
HRESULT 値を返します。 使用可能な値は次のとおりです。
リターン コード | 説明 |
---|---|
|
正常終了しました。 |
注釈
参照クロックは、タイマーの期間を timerResolution に設定しようとします。 タイマーの実際の期間は、ハードウェアによって異なる場合があります。 タイマーの最小解像度と最大解像度を調べるには、 timeGetDevCaps 関数を 呼び出します。 参照クロックは、 timeBeginPeriod を呼び出すことによって設定されるタイマー解像度を設定します。 timerResolution が 0 の場合、メソッドは timeEndPeriod を呼び出して前のタイマー要求を取り消します。 (参照クロックが破棄されると、以前の要求が自動的に取り消されます)。
このメソッドが呼び出されない場合、参照クロックはタイマーの解像度を 1 ミリ秒に設定します。 最高の電源管理パフォーマンスを得るには、値 0 でこのメソッドを呼び出することをお勧めします。 これにより、クロックの既定の設定である 1 ミリ秒がオーバーライドされます。 グラフ内のフィルターに高いタイマー解像度が必要な場合は、 timeBeginPeriod を個別に呼び出すことができます。 通常、レンダラーのみが特定のタイマー解決を必要とします。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | strmif.h (Dshow.h を含む) |
Library | Strmiids.lib |