Condividi tramite


VRAM_SURFACE_INFO struttura (ksmedia.h)

La struttura VRAM_SURFACE_INFO descrive un'area di sistema o memoria di visualizzazione in cui un minidriver AVStream acquisisce dati audio o video.

Sintassi

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;

Members

hSurface

Puntatore a un handle in modalità kernel che identifica la superficie VRAM.

VramPhysicalAddress

Questo membro contiene l'indirizzo fisico della superficie nella memoria di visualizzazione. Il minidriver riempie questo membro nel gestore per KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS.

cbCaptured

Questo membro specifica il numero di byte copiati nella superficie VRAM. Il minidriver imposta questo valore.

dwWidth

Questo membro specifica la larghezza dei dati video in pixel. Il minidriver imposta questo valore.

dwHeight

Questo membro specifica l'altezza dei dati video, in pixel. Il minidriver imposta questo valore.

dwLinearSize

Questo membro specifica le dimensioni lineari, in byte, di una superficie nonrectangulare. Il minidriver imposta questo valore.

lPitch

Questo membro specifica il passo della superficie; ovvero la distanza, in byte, all'inizio della riga successiva. Questo è noto anche come stilo della superficie. Il minidriver imposta questo valore.

ullReserved[16]

Il minidriver può usare questo membro per archiviare informazioni sulla superficie mentre gestisce una richiesta di KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS . Prestare attenzione, tuttavia; questa struttura non persiste nelle chiamate AVStrMiniPinProcess .

Commenti

Quando il minidriver riceve VRAM_SURFACE_INFO tramite una chiamata di proprietà KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS , i membri che seguono VramPhysicalAddress nell'elenco dei membri (ad eccezione di ullReserved) vengono zero. Il driver di acquisizione può archiviare i dati privati correlati all'acquisizione in questi membri.

AVStream archivia quindi queste informazioni nell'intestazione di flusso e la restituisce al minidriver nella funzione di callback AVStrMiniPinProcess .

I dati di questi membri vengono mantenuti per la durata dell'intestazione di flusso. Quando tutti i cloni vengono eliminati o il bordo principale è avanzato, questi dati non sono più accessibili.

Requisiti

Requisito Valore
Intestazione ksmedia.h (includere Ksmedia.h)

Vedi anche

AVStrMiniPinProcess

KSPROPERTY_MAP_CAPTURE_HANDLE_TO_VRAM_ADDRESS