我有一个three.js场景:
var scene = new THREE.Scene();
场景包含许多动画对象。我的目标是将动画导出为mpg4视频。
我的问题:
编辑:
我需要它在网站或基于Java的服务器上运行。请不要使用浏览器扩展程序。
答案 0 :(得分:5)
您可以使用此Chrome扩展程序记录<canvas>
:
https://chrome.google.com/webstore/detail/rendercan/enlfmgpmfaibbeoelliknejffljklemg
这将生成包含所有帧的压缩文件。如果该文件未压缩,您可以使用ffmpeg
将所有帧组合在一个视频中,如下所示:
ffmpeg -r 60 -i canvas-%09d.png out.mp4
如果命令行路线吓倒了你,我认为After Effects或类似版本允许你这样做。
答案 1 :(得分:0)
实现所需功能的最佳方法是使用https://github.com/tungs/timecut,即使该解决方案并不完美,它也会以JPG或PNG格式记录每个帧,然后使用ffmpeg
来合并所有单个视频中的帧。