Méthode CBaseControlVideo.SetDefaultSourceRect

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est 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 SetDefaultSourceRect méthode définit le rectangle vidéo source par défaut (virtuel pur). Ceci dans une fonction membre interne qui est appelée lorsque le rectangle source est réinitialisé.

Syntaxe

virtual HRESULT SetDefaultSourceRect() = 0;

Paramètres

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

Valeur retournée

Retourne une valeur HRESULT .

Notes

Les classes dérivées doivent remplacer cela pour réinitialiser le rectangle source. Il est appelé à partir de CBaseControlVideo::SetDefaultSourcePosition.

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

// This is called when you reset the default source rectangle.
HRESULT CVideoText::SetDefaultSourceRect()
{
    VIDEOINFO *pVideoInfo = (VIDEOINFO *) m_pRenderer->m_mtIn.Format();
    BITMAPINFOHEADER *pHeader = HEADER(pVideoInfo);
    RECT SourceRect = {0,0,pHeader->biWidth,pHeader->biHeight};
    m_pRenderer->m_DrawImage.SetSourceRect(&SourceRect);
    return NOERROR;
}

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 multimé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

Classe CBaseControlVideo