Share via


CBaseControlVideo::CopyImage

 
Microsoft DirectShow 9.0

CBaseControlVideo::CopyImage

Creates a memory copy of an image.

Syntax

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

Parameters

pMediaSample

Pointer to the sample containing the video image.

pVideoInfo

Pointer to the format representing the video image.

pBufferSize

Pointer to the size of the output buffer.

pVideoImage

Pointer to the output buffer.

pSourceRect

Pointer to the source video rectangle.

Return Value

If the pVideoImage parameter is NULL, the pBufferSize parameter is filled in with the number of bytes the output buffer requires to store the image. If the buffer passed in is too small or the member function fails to allocate sufficient memory, the member function returns E_OUTOFMEMORY.

Remarks

The member function retrieves the image from the sample and copies it into the output buffer. The section of video copied into the output buffer reflects the source rectangle that is set through the IBasicVideo interface (although it does not reflect the destination rectangle).

Requirements

**  Header:** Declared in Ctlutil.h; include Streams.h.

**  Library:** Use Strmbase.lib (retail builds) or Strmbasd.lib (debug builds).

See Also