如何获得基于硬件的屏幕截图?

时间:2008-09-21 01:55:57

标签: flash video video-capture

过去,我的一些项目要求我创建全屏Flash应用程序的电影版本。最简单的方法是获取屏幕截图。但是,捕获超过1024x768的任何内容都会导致视频不连贯,这是不可接受的。我知道有一些基于硬件的解决方案可以捕获全屏视频,但我还是无法找到它们是什么。我的输出需要可以扩展到1920x1080,并且会产生一个没有压缩的AVI文件。

7 个答案:

答案 0 :(得分:3)

各种专业产品支持全高清拍摄:

http://www.decklink.com/products/hd/

http://www.aja.com/

还有其他人。捕获完整的,未压缩的数字或模拟流是一个非常重要的要求。

- 亚当

答案 1 :(得分:2)

如果Flash应用程序是非交互式的,那么有很多工具可以对AVI文件或一系列PNG进行非实时捕获(但是非常流畅和完美)。

如果它是交互式的并且你绝对需要实时捕获,那么FRAPS实际上可以完成这项工作,至少在Vista上,通过使用Aero作为一个通常难以操作FRAPS来记录各种非DirectShow应用程序图形层。

答案 2 :(得分:1)

如果将影片加载到Flash ActiveX控件中,您可以调用控件上的IViewObject::Draw方法(或OleDraw辅助函数)将其绘制到您选择的DC中并循环显示每个动画中的帧。提取音频将更加困难,但如果您在内部制作动画应该不会太麻烦。

答案 3 :(得分:0)

运气不错,您的图形适配器已经有模拟视频输出。您可以连接DVD录像机,只需在独立的硬件盒上数字化视频信号。

虽然不会给你1920x1080。

如果您确实需要获得高于DVD分辨率的捕获,则需要专业(以及难以置信的昂贵的)视频捕获设备。

编辑:

顺便说一下 - 如果你想以每秒30帧的速度捕获真实色彩的1920x1080,你必须以某种方式存储每秒237兆字节。只是为了让您知道您需要处理多少数据......

答案 4 :(得分:0)

Phillips dvdr3575h和其他机顶盒可能是最简单的。但是,我不相信他们支持您正在寻找的解决方案。

答案 5 :(得分:0)

如果您不需要在电影中单击,则Flash CS3支持逐帧导出Flash影片(包括脚本内容)。

在Flash中打开你的动画,如果你没有.fla可用,制作一个加载你的swf的简单包装也应该有效。 然后去File - >出口 - >导出电影,然后选择Quicktime。根据自己的喜好设置各种小巧的位,然后Flash会尽可能快地逐步完成动画,既可以节省帧丢失的风险,又可以等待1 fps的捕获。

答案 6 :(得分:0)

http://rgb.com/ 我之前看过他们的产品 - 非常高端/昂贵但完美的视频,这是一个硬件解决方案,因此在你试图进行演示的机器上不是处理器密集型。