Condividi tramite


Metodo IVMRWindowlessControl::GetCurrentImage (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il GetCurrentImage metodo recupera una copia dell'immagine corrente visualizzata da VMR.

Sintassi

HRESULT GetCurrentImage(
  [out] BYTE **lpDib
);

Parametri

[out] lpDib

Indirizzo di un puntatore a una matrice BYTE.

Valore restituito

Se il metodo ha esito positivo, viene restituito S_OK. Se ha esito negativo, viene restituito un codice di errore.

Codice restituito Descrizione
VFW_E_WRONG_STATE
VmR non è in modalità senza finestra.

Commenti

Questo metodo restituisce l'immagine corrente visualizzata. L'immagine viene restituita sotto forma di WINDOWS DIB con pacchetto. L'immagine inizia con una struttura BITMAPINFOHEADER , possibilmente inclusa le voci della tavolozza e/o le maschere di colore, seguite dai dati dell'immagine.

VmR alloca la memoria per l'immagine e restituisce un puntatore alla risorsa nella variabile lpDib . Il chiamante deve liberare la memoria chiamando CoTaskMemFree.

Questo metodo può essere chiamato in qualsiasi momento, indipendentemente dallo stato in cui il filtro è in esecuzione, arrestato o sospeso. Tuttavia, le chiamate frequenti a questo metodo riducono le prestazioni di riproduzione video.

Esempio

C++
BYTE *lpDib = NULL;
hr = pWindowlessControl->GetCurrentImage(&lpDib);
if (SUCCEEDED(hr))
{
    BITMAPINFOHEADER *pBMIH = (BITMAPINFOHEADER*)lpDib;
    /* .... */
    CoTaskMemFree(lpDib);
}

Requisiti

Requisito Valore
Client minimo supportato Windows XP con SP1 [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)
Libreria Strmiids.lib

Vedi anche

Codici errore e esito positivo

Interfaccia IVMRWindowlessControl

Uso del renderer di mix video