Método CBaseControlVideo.CopyImage

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Cria uma cópia de memória de uma imagem.

Sintaxe

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

Parâmetros

pMediaSample

Ponteiro para o exemplo que contém a imagem de vídeo.

pVideoInfo

Ponteiro para o formato que representa a imagem de vídeo.

pBufferSize

Ponteiro para o tamanho do buffer de saída.

pVideoImage

Ponteiro para o buffer de saída.

pSourceRect

Ponteiro para o retângulo de vídeo de origem.

Retornar valor

Se o parâmetro pVideoImage for NULL, o parâmetro pBufferSize será preenchido com o número de bytes necessários para armazenar a imagem. Se o buffer passado for muito pequeno ou a função membro não conseguir alocar memória suficiente, a função membro retornará E_OUTOFMEMORY.

Comentários

A função membro recupera a imagem do exemplo e a copia para o buffer de saída. A seção do vídeo copiado para o buffer de saída reflete o retângulo de origem definido por meio da interface IBasicVideo (embora não reflita o retângulo de destino).

Requisitos

Requisito Valor
parâmetro
Ctlutil.h (inclua Streams.h)
Biblioteca
Strmbase.lib (builds de varejo);
Strmbasd.lib (builds de depuração)

Confira também

Classe CBaseControlVideo