VRAM_SURFACE_INFO 結構 (ksmedia.h)

VRAM_SURFACE_INFO結構描述 AVStream 迷你驅動程式擷取音訊或視訊數據的系統或顯示記憶體區域。

語法

typedef struct {
  UINT_PTR  hSurface;
  LONGLONG  VramPhysicalAddress;
  DWORD     cbCaptured;
  DWORD     dwWidth;
  DWORD     dwHeight;
  DWORD     dwLinearSize;
  LONG      lPitch;
  ULONGLONG ullReserved[16];
} VRAM_SURFACE_INFO, *PVRAM_SURFACE_INFO;

成員

hSurface

識別 VRAM 表面的核心模式句柄指標。

VramPhysicalAddress

此成員包含顯示記憶體中表面的實體位址。 minidriver 會在處理程式中填入KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS的這個成員。

cbCaptured

此成員會指定複製到 VRAM 介面的位元元組數目。 minidriver 會設定此值。

dwWidth

此成員會以像素指定視訊數據的寬度。 minidriver 會設定此值。

dwHeight

此成員會以像素為單位指定視訊數據的高度。 minidriver 會設定此值。

dwLinearSize

這個成員會指定非矩形表面的線性大小,以位元組為單位。 minidriver 會設定此值。

lPitch

此成員會指定表面的間距;也就是說,下一行開頭的距離,以位元組為單位。 這也稱為表面 的步幅 。 minidriver 會設定此值。

ullReserved[16]

minidriver 可以使用這個成員,在處理 KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS 要求時儲存表面的相關信息。 不過,請小心;此結構不會在 AVStrMiniPinProcess 呼叫之間保存。

備註

當 minidriver 透過 KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS 屬性呼叫收到VRAM_SURFACE_INFO時,成員清單中的 VramPhysicalAddress 成員 (除了 ullReserved) 之外,會以零為單位。擷取驅動程式可以將擷取相關的私人數據儲存在這些成員中。

AVStream 接著會將此資訊儲存在數據流標頭中,並將其傳回 至 AVStrMiniPinProcess 回呼函式中的 minidriver。

這些成員中的數據會在數據流標頭的存留期內保存。 刪除所有複製品或前置邊緣為進階時,將無法再存取此數據。

規格需求

需求
標頭 ksmedia.h (包含 Ksmedia.h)

另請參閱

AVStrMiniPinProcess

KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS