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 つの関数は、 ReadClockLineReadDataLineWriteClockLine、および 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

こちらもご覧ください

HwVidGetVideoChildDescriptor

I2C 関数

ReadClockLine

ReadDataLine

WriteClockLine

WriteDataLine