Compartilhar via


estrutura VRAM_SURFACE_INFO (ksmedia.h)

A estrutura VRAM_SURFACE_INFO descreve uma região de sistema ou memória de exibição na qual um minidriver AVStream captura dados de áudio ou vídeo.

Sintaxe

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;

Membros

hSurface

Um ponteiro para um identificador do modo kernel que identifica a superfície de VRAM.

VramPhysicalAddress

Esse membro contém o endereço físico da superfície na memória de exibição. O minidriver preenche esse membro no manipulador para KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS.

cbCaptured

Esse membro especifica o número de bytes copiados para a superfície de VRAM. O minidriver define esse valor.

dwWidth

Esse membro especifica a largura dos dados de vídeo em pixels. O minidriver define esse valor.

dwHeight

Esse membro especifica a altura dos dados de vídeo, em pixels. O minidriver define esse valor.

dwLinearSize

Esse membro especifica o tamanho linear, em bytes, de uma superfície não retangular. O minidriver define esse valor.

lPitch

Esse membro especifica o tom da superfície; ou seja, a distância, em bytes, até o início da próxima linha. Isso também é conhecido como o passo da superfície. O minidriver define esse valor.

ullReserved[16]

O minidriver pode usar esse membro para armazenar informações sobre a superfície à medida que lida com uma solicitação de KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS . No entanto, tenha cuidado; essa estrutura não persiste entre chamadas AVStrMiniPinProcess .

Comentários

Quando o minidriver recebe VRAM_SURFACE_INFO por meio de uma chamada de propriedade KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS , os membros que seguem VramPhysicalAddress na lista de membros (exceto ullReserved) são zerados. O driver de captura pode armazenar dados privados relacionados à captura nesses membros.

O AVStream armazena essas informações no cabeçalho do fluxo e as retorna ao minidriver na função de retorno de chamada AVStrMiniPinProcess .

Os dados nesses membros persistem durante o tempo de vida do cabeçalho do fluxo. Quando todos os clones são excluídos ou a borda superior é avançada, esses dados não são mais acessíveis.

Requisitos

Requisito Valor
Cabeçalho ksmedia.h (inclua Ksmedia.h)

Confira também

AVStrMiniPinProcess

KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS