IVMRWindowlessControl::GetCurrentImage-Methode (strmif.h)

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die GetCurrentImage -Methode ruft eine Kopie des aktuellen Images ab, das vom VMR angezeigt wird.

Syntax

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

Parameter

[out] lpDib

Adresse eines Zeigers auf ein BYTE-Array.

Rückgabewert

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Bei einem Fehler wird ein Fehlercode zurückgegeben.

Rückgabecode Beschreibung
VFW_E_WRONG_STATE
Die VMR befindet sich nicht im fensterlosen Modus.

Hinweise

Diese Methode gibt das aktuelle angezeigte Bild zurück. Das Image wird in Form von gepacktem Windows-DIB zurückgegeben. Das Bild beginnt mit einer BITMAPINFOHEADER-Struktur , möglicherweise einschließlich Paletteneinträgen und/oder Farbmasken, gefolgt von den Bilddaten.

Der VMR weist den Arbeitsspeicher für das Image zu und gibt einen Zeiger darauf in der variablen lpDib zurück. Der Aufrufer muss den Arbeitsspeicher durch Aufrufen von CoTaskMemFree freigeben.

Diese Methode kann jederzeit aufgerufen werden, unabhängig davon, in welchem Zustand sich der Filter befindet, unabhängig davon, ob er ausgeführt, angehalten oder angehalten wird. Häufige Aufrufe dieser Methode beeinträchtigen jedoch die Videowiedergabeleistung.

Beispiele

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

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP mit SP1 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile strmif.h (include Dshow.h)
Bibliothek Strmiids.lib

Weitere Informationen

Fehler- und Erfolgscodes

IVMRWindowlessControl-Schnittstelle

Verwenden des Videomischrenderers