2011-04-27 85 views
8

我们正在使用HTML5 + Javascript创建动画。现在,我们希望将这些动画转换为视频文件(MPEG4或其他,无所谓),以便受到浏览器挑战的人也可以看到动画。动画包含音轨。呈现HTML5动画服务器端?

我们正在寻找解决方案,将HTML页面呈现并记录在服务器端。我知道存在用于呈现网页缩略图等静态图像的工具。但是,在我们的用例中,我们应该输出一个视频文件。

有什么选择?是无头的X服务器+ Firefox的路要走吗?最好我们会在云端运行(Amazon EC2)。如果在非实时速度下播放动画时我们需要考虑一些特殊的东西,我想听听 - 比如说,将HTML5音频与动画同步。

回答

3

只是要注意的是,我们通过

  • 解决了这个问题一个无头的服务器上运行Firefox。一个体面的图形卡的服务器。

  • 有一个硒的Python控制脚本来启动/停止渲染

  • 将使用Firefox的XPCOM API直接在编码流水线

  • 自订JavaScript渲染饲料<canvas>原始像素的自定义渲染循环循环其中时钟不是来自实时时钟,但它将帧以稳定的帧速率切片到非渲染器

一个相当复杂的系统,所以不适合一个答案框中:(

0

听起来很有趣。我用QtWebKit库做了类似的事情,需要运行一个无头X服务器。我正在做的是大规模地将网页转换为PDF。搜索一些webkit2pdf工具来查看可以构建的示例可能是有意义的。

我会看看图书馆,并将其与另一个录音解决方案结合起来。

2

根据您的动画,可能有效的一件事就是创建一个动画gif。将足够多的静态动画串联在一起,您应该可以使用正确的软件将这些动画转换为视频。这是一个非常暴力的解决方案,但是如果您可以通过“逐帧”方式推进您的动画,它可能会奏效。

0

在模具方面我已经受够了这些的Ruby工具一个相当不错的经验:

我有关于他们如何处理音频虽然

+0

可以在音频混合到视频的GStreamer使用不知道 – 2012-08-03 09:04:21