Método IVMRWindowlessControl::GetCurrentImage (strmif.h)
[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
El GetCurrentImage
método recupera una copia de la imagen actual que el VMR muestra.
Sintaxis
HRESULT GetCurrentImage(
[out] BYTE **lpDib
);
Parámetros
[out] lpDib
Dirección de un puntero a una matriz BYTE.
Valor devuelto
Si el método se realiza correctamente, devuelve S_OK. Si se produce un error, devuelve un código de error.
Código devuelto | Descripción |
---|---|
|
VmR no está en modo sin ventanas. |
Comentarios
Este método devuelve la imagen actual que se muestra. La imagen se devuelve en forma de DIB de Windows empaquetado. La imagen comienza con una estructura BITMAPINFOHEADER , posiblemente incluidas las entradas de paleta o máscaras de color, seguidas de los datos de imagen.
VmR asigna la memoria para la imagen y devuelve un puntero a ella en la variable lpDib . El autor de la llamada debe liberar la memoria llamando a CoTaskMemFree.
Se puede llamar a este método en cualquier momento, independientemente del estado en el que se encuentra el filtro, ya sea en ejecución, detenido o en pausa. Sin embargo, las llamadas frecuentes a este método degradarán el rendimiento de la reproducción de vídeo.
Ejemplos
C++ |
---|
BYTE *lpDib = NULL; hr = pWindowlessControl->GetCurrentImage(&lpDib); if (SUCCEEDED(hr)) { BITMAPINFOHEADER *pBMIH = (BITMAPINFOHEADER*)lpDib; /* .... */ CoTaskMemFree(lpDib); } |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP con SP1 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | strmif.h (incluye Dshow.h) |
Library | Strmiids.lib |