CBaseControlVideo 类
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
CBaseControlVideo 类实现 IBasicVideo 接口,并控制通用视频窗口的视频属性。 通常, CBaseControlVideo 对象是一种视频呈现器,用于将视频绘制到显示器上的窗口中。
许多 CBaseControlVideo 成员函数只需要将视频呈现器连接到筛选器图。 如果未连接,成员函数将返回 VFW_E_NOT_CONNECTED。 在视频呈现器上设置的属性在连续连接和断开连接之间保留。 所有应用程序都应确保在开始演示之前重置呈现器属性。
使用视频时,应用程序可以选择视频的一部分来使用。 此部分是 CBaseControlVideo 对象控制的源矩形。 CBaseControlVideo 使应用程序能够设置和检索源矩形。 CBaseControlVideo 使用的所有矩形都采用宽度和高度值,而不是右值和底部值。 如果未设置源矩形,则源矩形的属性将返回完整的本机视频大小。
受保护的数据成员 | 说明 |
---|---|
m_pFilter | 指向拥有媒体筛选器的指针。 |
m_pInterfaceLock | 外部定义的关键部分。 |
m_pPin | 控制连接的媒体类型。 |
成员函数 | 说明 |
CBaseControlVideo | 构造 CBaseControlVideo 对象。 |
CopyImage | 创建视频图像的内存副本。 |
GetImageSize | 检索视频图像大小信息。 |
SetControlVideoPin | 设置此对象应与之同步的引脚。 |
可重写成员函数 | 说明 |
CheckSourceRect | 确定源矩形是否有效。 |
CheckTargetRect | 确定目标矩形是否有效。 |
GetSourceRect | 检索当前源视频矩形 (纯虚拟) 。 |
GetStaticImage | 返回内存缓冲区中的当前图像 (纯虚拟) 。 |
GetTargetRect | 检索当前目标视频矩形 (纯虚拟) 。 |
GetVideoFormat | 检索包含视频格式的 VIDEOINFOHEADER 结构。 |
IsDefaultSourceRect | 确定呈现器是否使用纯虚拟) (默认源矩形。 |
IsDefaultTargetRect | 确定呈现器是否使用默认目标矩形 (纯虚拟) 。 |
OnUpdateRectangles | 在源或目标矩形更改时调用。 |
OnVideoSizeChange | 将EC_VIDEO_SIZE_CHANGED传递到应用程序。 |
SetDefaultSourceRect | 设置纯虚拟) (默认源视频矩形。 |
SetDefaultTargetRect | (纯虚拟) 设置默认目标视频矩形。 |
SetSourceRect | 将当前源视频矩形 (纯虚拟) 。 |
SetTargetRect | 将当前目标矩形 (纯虚拟) 。 |
IBasicVideo 方法 | 说明 |
get_AvgTimePerFrame | 检索每个帧的大致平均时间。 |
get_BitErrorRate | 检索近似位错误率。 |
get_BitRate | 检索视频的近似比特率。 |
GetCurrentImage | 检索当前图像的内存呈现。 |
get_DestinationHeight | 检索当前目标矩形的高度。 |
get_DestinationLeft | 检索当前目标矩形的左坐标。 |
GetDestinationPosition | 检索当前目标位置。 |
get_DestinationTop | 检索当前目标矩形的顶部坐标。 |
get_DestinationWidth | 检索当前目标矩形的宽度。 |
get_SourceHeight | 检索当前源矩形的高度。 |
get_SourceLeft | 检索当前源矩形的左坐标。 |
GetSourcePosition | 检索当前源位置。 |
get_SourceTop | 检索当前源矩形的顶部坐标。 |
get_SourceWidth | 检索当前源矩形的宽度。 |
get_VideoHeight | 检索本机视频高度。 |
GetVideoPaletteEntries | 检索视频的调色板条目范围。 |
GetVideoSize | 检索本机视频的宽度和高度。 |
get_VideoWidth | 检索本机视频宽度。 |
IsUsingDefaultDestination | 确定呈现器是否正在使用默认目标窗口。 |
IsUsingDefaultSource | 确定呈现器是否正在使用默认源窗口。 |
put_DestinationHeight | 设置目标矩形的高度。 |
put_DestinationLeft | 设置目标矩形的左坐标。 |
put_DestinationTop | 设置目标矩形的顶坐标。 |
put_DestinationWidth | 设置目标矩形的宽度。 |
put_SourceHeight | 设置源矩形的高度。 |
put_SourceLeft | 设置源矩形的左坐标。 |
put_SourceTop | 设置源矩形的顶坐标。 |
put_SourceWidth | 设置源矩形的宽度。 |
SetDefaultDestinationPosition | 再次设置默认目标位置。 |
SetDefaultSourcePosition | 再次设置默认源位置。 |
SetDestinationPosition | 设置目标矩形位置。 |
SetSourcePosition | 设置源矩形位置。 |
另请参阅