VideoPortDDCMonitorHelper 関数 (video.h)
DDC プロトコルを使用して 、モニターに EDID 情報のクエリを実行します。
構文
VIDEOPORT_DEPRECATED VIDEOPORT_API BOOLEAN VideoPortDDCMonitorHelper(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID DDCControl,
[in, out] IN OUT PUCHAR EdidBuffer,
[in] IN ULONG EdidBufferSize
);
パラメーター
[in] HwDeviceExtension
ミニポート ドライバーのデバイス拡張機能へのポインター。
[in] DDCControl
DDC_CONTROL構造体へのポインター。
[in, out] EdidBuffer
ビデオ ポート ドライバーが EDID 構造体を返すバッファーへのポインター。 ACPI デバイスの場合、最初の 4 バイトは、 EDID の読み取り試行を示すためにビデオ ポート ドライバーによって事前設定されます。
[in] EdidBufferSize
EdidBuffer が指すバッファーのサイズ (バイト単位)。
戻り値
VideoPortDDCMonitorHelper は 、成功した場合 に TRUE を 返します。
注釈
この関数は、Windows XP リリースより前に存在しましたが、変更されています。
ビデオ ミニポート ドライバーの HwVidGetVideoChildDescriptor 関数は、DDC2 準拠モニターから EDID 構造体を読み取る際に役立つ VideoPortDDCMonitorHelper を呼び出すことができます。 VideoPortDDCMonitorHelper は、I²C 仕様に従って EDID 構造体を読み取る詳細を実装しますが、個々のデータ ビットを読み取って I²C シリアル クロックとデータ行に書き込むには、ビデオ ミニポート ドライバーにコールバックする必要があります。
I²C クロックとデータ行に個々のビットを読み取りおよび書き込むビデオ ミニポート ドライバーによって実装される 4 つの関数は、 ReadClockLine、 ReadDataLine、 WriteClockLine、および WriteDataLine です。 ビデオ ミニポート ドライバーが VideoPortDDCMonitorHelper を呼び出すと、 DDCControl->I2CCallbacks の 4 つの関数へのポインターが提供されます。
EDID は、Dispmprt.h でエイリアスが定義されているACPI_METHOD_OUTPUT_DDC メソッドを使用して取得できます。 このメソッドは、EDID データを返す別の標準メカニズムを持たない統合 LCD に必要です。
256 バイトのバッファーでは、この関数の呼び出し元は次を受け取ることができます。
- 1 つの 128 バイト EDID
- 2 つの 128 バイト EDID
- 1 つの 256 バイト EDID (P&D ディスプレイから)
- EDID なし
呼び出し元は、セグメントの 2 番目の 128 バイト ブロックだけを読み取ることはできないため、常に完全な 256 バイトを要求する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。 |
対象プラットフォーム | デスクトップ |
Header | video.h (Video.h を含む) |
Library | Videoprt.lib |
[DLL] | Videoprt.sys |
IRQL | PASSIVE_LEVEL |