我可以在WPF中创建一个运动着色像素着色器吗



我有一段在屏幕上画线的视频。是否可以创建一个像素着色器(用于WPF),使新着色的像素在N毫秒内变为特定颜色?

这样,当线条不经常移动并且用户不总是看着屏幕时,可以向用户指示在屏幕上移动。

您可以使用DirectShow。它是用非托管代码编写的,因此您需要使用此包装器DirectShow.NET,以便在托管环境中运行的C#应用程序中使用它(包括示例,甚至包括EVR,它代表增强的视频渲染器,这意味着更好的视频质量)。当您将一个控件句柄传递给用于设置视频输出的包装器方法时,您需要一个WinForms控件,因为只有从它们中才能获得所需的控件句柄。然后,当您需要在WPF应用程序中使用某些WinForms控件时,您可以使用为此类情况提供的WindowsFormsHost控件将该WinForms控件托管在WPF程序中。这只是理论,所以我不知道这是否是你的最终解决方案。

BTW:整个想法是基于这样一个事实,即DirectShow只是由分离的过滤器构建的一些查询。渲染器是一个过滤器(EVR、VMR-7、VMR-9)。声音播放器是一个过滤器。它们通过引脚连接。它就像一张图表。电子模式或类似的东西。例如,你可以把Grey scale滤波器放在那里。瞧,视频输出将是灰度级的。这里有很多教程。并完成了简单的过滤器。不幸的是,过滤器必须用C++编写:(

PS:我从来没有说过这会很容易:D

最新更新