CBaseControlVideo.IsDefaultSourceRect 方法
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 IsDefaultSourceRect
确定呈现器是否使用默认源矩形 (纯虚拟) 。
语法
virtual HRESULT IsDefaultSourceRect() = 0;
参数
此方法没有任何参数。
返回值
如果呈现器使用默认源,则返回S_OK;否则,返回S_FALSE。
备注
必须在派生类中实现此成员函数。 它由 CBaseControlVideo::IsUsingDefaultSource 成员函数调用。
以下示例演示了派生类中此函数的实现。
// 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;
}
在此示例中,CVideoText 是派生自 CBaseControlVideo 的类,m_pRenderer包含派生自 CBaseVideoRenderer 的类的对象,在派生类中定义的 m_DrawImage 数据成员包含 CDrawImage 对象。 m_mtIn数据成员(也在派生类中定义)包含具有输入引脚媒体类型的 CMediaType 对象。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|