Compartir a través de


Método CBaseControlVideo.SetDefaultTargetRect

[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 SetDefaultTargetRect método establece el rectángulo de vídeo de destino predeterminado (virtual puro). Se trata de una función miembro interna a la que se llama cuando se restablece el rectángulo de origen.

Sintaxis

virtual HRESULT SetDefaultTargetRect() = 0;

Parámetros

Este método no tiene parámetros.

Valor devuelto

Devuelve un valor HRESULT .

Observaciones

Las clases derivadas deben invalidar esto para restablecer el rectángulo de vídeo de destino. Se llama desde la función miembro CBaseControlVideo::SetDefaultDestinationPosition .

En el ejemplo siguiente se muestra una implementación de esta función en una clase derivada.

// This is called when you reset the default target rectangle.
HRESULT CVideoText::SetDefaultTargetRect()
{
    VIDEOINFO *pVideoInfo = (VIDEOINFO *) m_pRenderer->m_mtIn.Format();
    BITMAPINFOHEADER *pHeader = HEADER(pVideoInfo);
    RECT TargetRect = {0,0,m_Size.cx,m_Size.cy};
    m_pRenderer->m_DrawImage.SetTargetRect(&TargetRect);
    return NOERROR;
}

En este ejemplo, CVideoText es una clase derivada de CBaseControlVideo, m_pRenderer contiene un objeto de una clase derivada de CBaseVideoRenderer y el miembro de datos m_DrawImage, definido en la clase derivada, contiene un objeto CDrawImage . El m_mtIn miembro de datos, también definido en la clase derivada, contiene un objeto CMediaType con el tipo de medio del pin de entrada.

Requisitos

Requisito Value
Encabezado
Ctlutil.h (include Streams.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Consulte también

CBaseControlVideo (clase)