Partager via


Méthode CBaseControlVideo.CopyImage

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

Crée une copie mémoire d’une image.

Syntaxe

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

Paramètres

pMediaSample

Pointeur vers l’exemple contenant l’image vidéo.

pVideoInfo

Pointeur vers le format représentant l’image vidéo.

pBufferSize

Pointeur vers la taille de la mémoire tampon de sortie.

pVideoImage

Pointeur vers la mémoire tampon de sortie.

pSourceRect

Pointeur vers le rectangle vidéo source.

Valeur renvoyée

Si le paramètre pVideoImage a la valeur NULL, le paramètre pBufferSize est rempli avec le nombre d’octets requis par la mémoire tampon de sortie pour stocker l’image. Si la mémoire tampon passée est trop petite ou si la fonction membre ne parvient pas à allouer suffisamment de mémoire, la fonction membre retourne E_OUTOFMEMORY.

Notes

La fonction membre récupère l’image de l’exemple et la copie dans la mémoire tampon de sortie. La section de la vidéo copiée dans la mémoire tampon de sortie reflète le rectangle source défini via l’interface IBasicVideo (bien qu’elle ne reflète pas le rectangle de destination).

Configuration requise

Condition requise Valeur
En-tête
Ctlutil.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)

Voir aussi

CBaseControlVideo, classe