Condividi tramite


Metodo CBaseControlVideo.IsDefaultSourceRect

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine 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, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il IsDefaultSourceRect metodo determina se il renderer usa il rettangolo di origine predefinito (virtuale puro).

Sintassi

virtual HRESULT IsDefaultSourceRect() = 0;

Parametri

Questo metodo non presenta parametri.

Valore restituito

Restituisce S_OK se il renderer usa l'origine predefinita; in caso contrario, restituisce S_FALSE.

Commenti

Questa funzione membro deve essere implementata nella classe derivata. Viene chiamato dalla funzione membro CBaseControlVideo::IsUsingDefaultSource .

Nell'esempio seguente viene illustrata un'implementazione di questa funzione in una classe derivata.

// Return S_OK if using the default source; otherwise, S_FALSE.
HRESULT CVideoText::IsDefaultSourceRect()
{
    RECT SourceRect;

    VIDEOINFO *pVideoInfo = (VIDEOINFO *) m_pRenderer->m_mtIn.Format();
    BITMAPINFOHEADER *pHeader = HEADER(pVideoInfo);
    m_pRenderer->m_DrawImage.GetSourceRect(&SourceRect);

    // Check the coordinates that match the video dimensions.

    if (SourceRect.left != 0 || SourceRect.top != 0 ||
            SourceRect.right != pHeader->biWidth ||
                SourceRect.bottom != pHeader->biHeight) {
                    return S_FALSE;
    }
    return S_OK;
}

In questo esempio CVideoText è una classe derivata da CBaseControlVideo, m_pRenderer contiene un oggetto di una classe derivata da CBaseVideoRenderer e il membro dati m_DrawImage, definito nella classe derivata, contiene un oggetto CDrawImage . Il m_mtIn membro dati, definito anche nella classe derivata, contiene un oggetto CMediaType con il tipo di supporto del pin di input.

Requisiti

Requisito Valore
Intestazione
Ctlutil.h (include Streams.h)
Libreria
Strmbase.lib (build retail);
Strmbasd.lib (build di debug)

Vedi anche

Classe CBaseControlVideo