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) |