如何在Windows Media Player中叠加或水印图片

时间:2009-01-14 13:22:14

标签: vb.net winforms video overlay wmf

我在使用Windows媒体播放器组件的分布式媒体播放器上工作。 现在,客户问我是否可以将他们的徽标叠加在播放的媒体上,而不是他们必须使用标识渲染每部电影。

我有谷歌它似乎我可以使用directshow过滤器来做到这一点,但我还没有找到任何关于如何做的好信息。

如果有人在这里知道如果我可以以编程方式执行此操作,使用插件,过滤器或其他方式,那将很高兴知道。如果它的插件也花钱也很好。

我想要的是能够在Windows Media Player 11中使用jpg / png作为水印/叠加到正在运行的电影

1 个答案:

答案 0 :(得分:2)

可以通过将您自己的自定义DirectShow过滤器强制转换为WMP的过滤器图表来实现此目的。这涉及将过滤器的merit设置得非常高,以便DirectShow的自动图形构建将您的过滤器插入到WMP链中。但是,我不推荐这种方法,因为a)过滤器可能不会总是插入某些过滤器图形链,而b)它也会被添加到任何其他已安装的第三方DirectShow应用程序的过滤器图形中。第二个问题可能是一个主要问题。

应该可以创建WMP DSP plugin来执行此操作。这些实现为DirectX媒体对象(DMO s),它们与DirectShow过滤器类似但更简单。这种方法可能是您最好的选择。

最后一种方法是在DirectShow中重写应用程序的整个媒体播放部分,而不是使用WMP控件。这将需要更多的努力,但如果您计划现在或将来进行大量自定义媒体流处理,那么它可能是一个很好的选择。