Méthode CBaseControlVideo.IsDefaultSourceRect

[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.]

La IsDefaultSourceRect méthode détermine si le convertisseur utilise le rectangle source par défaut (virtuel pur).

Syntaxe

virtual HRESULT IsDefaultSourceRect() = 0;

Paramètres

Cette méthode n’a aucun paramètre.

Valeur retournée

Retourne S_OK si le convertisseur utilise la source par défaut ; sinon, retourne S_FALSE.

Notes

Cette fonction membre doit être implémentée dans la classe dérivée. Elle est appelée par la fonction membre CBaseControlVideo::IsUsingDefaultSource .

L’exemple suivant illustre une implémentation de cette fonction dans une classe dérivée.

// 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;
}

Dans cet exemple, CVideoText est une classe dérivée de CBaseControlVideo, m_pRenderer contient un objet d’une classe dérivée de CBaseVideoRenderer, et le membre de données m_DrawImage, défini dans la classe dérivée, contient un objet CDrawImage . Le membre de données m_mtIn, également défini dans la classe dérivée, contient un objet CMediaType avec le type de média de la broche d’entrée.

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