IReferenceClockTimerControl::SetDefaultTimerResolution メソッド (strmif.h)

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

メソッドは SetDefaultTimerResolution 、タイマーの最小解像度を設定します。

構文

HRESULT SetDefaultTimerResolution(
  [in] REFERENCE_TIME timerResolution
);

パラメーター

[in] timerResolution

最小タイマー解像度 (100 ナノ秒単位)。 値が 0 の場合、参照クロックは前の要求を取り消します。

戻り値

HRESULT 値を返します。 使用可能な値は次のとおりです。

リターン コード 説明
S_OK
正常終了しました。

注釈

参照クロックは、タイマーの期間を timerResolution に設定しようとします。 タイマーの実際の期間は、ハードウェアによって異なる場合があります。 タイマーの最小解像度と最大解像度を調べるには、 timeGetDevCaps 関数を 呼び出します。 参照クロックは、 timeBeginPeriod を呼び出すことによって設定されるタイマー解像度を設定します。 timerResolution が 0 の場合、メソッドは timeEndPeriod を呼び出して前のタイマー要求を取り消します。 (参照クロックが破棄されると、以前の要求が自動的に取り消されます)。

このメソッドが呼び出されない場合、参照クロックはタイマーの解像度を 1 ミリ秒に設定します。 最高の電源管理パフォーマンスを得るには、値 0 でこのメソッドを呼び出することをお勧めします。 これにより、クロックの既定の設定である 1 ミリ秒がオーバーライドされます。 グラフ内のフィルターに高いタイマー解像度が必要な場合は、 timeBeginPeriod を個別に呼び出すことができます。 通常、レンダラーのみが特定のタイマー解決を必要とします。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー strmif.h (Dshow.h を含む)
Library Strmiids.lib

こちらもご覧ください

エラーコードと成功コード

IReferenceClockTimerControl インターフェイス