从WPF/Silverlight动画创建视频

从WPF/Silverlight动画创建视频,wpf,silverlight,video-capture,Wpf,Silverlight,Video Capture,我有一个用XAML写的动画。我需要创建一个视频(AVI)从该动画。有办法吗?如果您有Expression Encoder,可以执行以下操作: 创建一个与动画具有相同帧数的空白电影(如果出现错误,可以稍后更改长度) 使用XAML动画覆盖选项添加基于XAML的动画 将动画渲染到WMV 将视频从WMV转换为AVI(许多免费工具都可以做到这一点) 我相信政府会处理这件事 如果Expression Encoder不适合您,您也可以使用像Jing或Camtasia这样的屏幕捕获软件。以下是如何为WPF(即不

我有一个用XAML写的动画。我需要创建一个视频(AVI)从该动画。有办法吗?

如果您有Expression Encoder,可以执行以下操作:

  • 创建一个与动画具有相同帧数的空白电影(如果出现错误,可以稍后更改长度)
  • 使用XAML动画覆盖选项添加基于XAML的动画
  • 将动画渲染到WMV
  • 将视频从WMV转换为AVI(许多免费工具都可以做到这一点)
  • 我相信政府会处理这件事


    如果Expression Encoder不适合您,您也可以使用像Jing或Camtasia这样的屏幕捕获软件。

    以下是如何为WPF(即不是Silverlight)执行此操作


    对于Silverlight,我的方法是:

  • 将画布快照放入WriteableBitmap
  • 使用免费的ImageTools Silverlight库将它们转换为.jpg
  • 将其保存到文件夹中
  • 启动FFmpeg.exe(来自Silverlight)并将其转换为视频
  • 如果无法启动.exe文件,则唯一的选项是将每个.jpg文件(作为字节数组)发送到服务器,并在那里使用“Process.Start”;然后将生成的视频发送回Silverlight


    由于ImageTools的速度不是很快,我不得不将每张图像保存为.bmp,并使用libjpeg-turbo将其转换为.jpg。

    谢谢。虽然我们很久以前就以一种完全不同的方式实现了这一点,但很高兴知道它可以实现,而且已经消失了。