在c#中使用DirectShow.NET在IVideoWindow上显示半透明的图像对象

本文关键字:显示 半透明 对象 图像 NET DirectShow IVideoWindow | 更新日期: 2023-09-27 18:10:56

我一直在使用DirectShow。NET与c#的网络摄像头接口,到目前为止,一切都进行得很顺利。然而,现在我正在尝试建立一种方法来"裁剪"图像(当它仍然被显示为网络摄像头预览)。

基本上,我试图在IVideoWindow对象的顶部显示某种透明的图像。然而,在c#中处理透明度远非易事。

那么,我怎么能层一个图像对象在IVideoWindow的顶部?谢谢!

在c#中使用DirectShow.NET在IVideoWindow上显示半透明的图像对象

有两种方法可以做到这一点:

  • 使用视频转换过滤器并将混合视频传送到渲染器(即图片+您的叠加)
  • 或者,使用VMR的'mixerbitmap '功能在呈现时叠加

DirectShow的。NET有上面提到的第二个示例:

' VMR9 ' BitMapMixer样品BitmapMixer是一个如何使用VMR9在视频上绘制东西的例子。

另一个例子:

'玩家' DxText样品演示如何在数据流上叠加文本字符串的示例应用程序。流是从avi文件中读取的。