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
此成员包含显示内存中图面的物理地址。 微型驱动程序在处理程序中填充此成员,用于 KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS。
cbCaptured
此成员指定复制到 VRAM 图面的字节数。 微型驱动程序设置此值。
dwWidth
此成员指定视频数据的宽度(以像素为单位)。 微型驱动程序设置此值。
dwHeight
此成员指定视频数据的高度(以像素为单位)。 微型驱动程序设置此值。
dwLinearSize
此成员指定非矩形矩形表面的线性大小(以字节为单位)。 微型驱动程序设置此值。
lPitch
此成员指定图面的间距;即到下一行开头的距离(以字节为单位)。 这也称为表面 的步幅 。 微型驱动程序设置此值。
ullReserved[16]
微型驱动程序可以使用此成员在处理 KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS 请求时存储有关表面的信息。 但是,请谨慎使用;此结构不会在 AVStrMiniPinProcess 调用中持久化。
注解
当微型驱动程序通过KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS属性调用接收 VRAM_SURFACE_INFO 时,成员列表中的 VramPhysicalAddress (除 ullReserved) 之外的成员将被归零。捕获驱动程序可以在这些成员中存储与捕获相关的私有数据。
然后,AVStream 将此信息存储在流标头中,并将其返回到 AVStrMiniPinProcess 回调函数中的微型驱动程序。
这些成员中的数据在流标头的生存期内保留。 删除所有克隆或先行先行后,将无法再访问此数据。
要求
要求 | 值 |
---|---|
Header | ksmedia.h (包括 Ksmedia.h) |