Condividi tramite


Metodo CBaseControlVideo.CopyImage

[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.

Crea una copia di memoria di un'immagine.

Sintassi

HRESULT CopyImage(
   IMediaSample    *pMediaSample,
   VIDEOINFOHEADER *pVideoInfo,
   LONG            *pBufferSize,
   BYTE            *pVideoImage,
   RECT            *pSourceRect
);

Parametri

pMediaSample

Puntatore all'esempio contenente l'immagine video.

pVideoInfo

Puntatore al formato che rappresenta l'immagine video.

pBufferSize

Puntatore alle dimensioni del buffer di output.

pVideoImage

Puntatore al buffer di output.

pSourceRect

Puntatore al rettangolo video di origine.

Valore restituito

Se il parametro pVideoImage è NULL, il parametro pBufferSize viene compilato con il numero di byte necessario per archiviare l'immagine. Se il buffer passato è troppo piccolo o la funzione membro non riesce a allocare memoria sufficiente, la funzione membro restituisce E_OUTOFMEMORY.

Commenti

La funzione membro recupera l'immagine dall'esempio e la copia nel buffer di output. La sezione del video copiata nel buffer di output riflette il rettangolo di origine impostato tramite l'interfaccia IBasicVideo (anche se non riflette il rettangolo di destinazione).

Requisiti

Requisito Valore
Intestazione
Ctlutil.h (includere Streams.h)
Libreria
Strmbase.lib (build al dettaglio);
Strmbasd.lib (build di debug)

Vedi anche

Classe CBaseControlVideo