Java VNC Applet与屏幕捕获技术的比较

5
我正在尝试制作一个应用程序,其中一个组件可以捕获用户的屏幕(用于屏幕广播)。我知道有两种选项可以使用Java applet实现相同的功能(如果我错了,请纠正我)。第一种是使用Java applet连续拍摄屏幕截图并将其转换为视频,并将其上传为视频文件。第二种是创建Java VNC服务器并将其记录为.fbs文件,然后使用像http://www.wizhelp.com/flashlight-vnc/index.html这样的播放器进行播放。
我想知道最佳解决方案,包括视频质量、文件大小、跨平台兼容性(Windows和Mac)、防火墙问题以及实现的简易程度。
我对Java非常陌生,请告诉我如何解决我的问题。另外,它是否足够容易让我自己编程,还是应该通过自由职业者来开发它。我有大量的编程经验(在LAMP中超过5年),但在Java中没有经验。
非常感谢。

我认为这并不是那么简单明了的。 - OscarRyz
4个回答

3

我认为这很困难。我曾为以前的雇主实施了这两个解决方案(VNC和屏幕截取),还使用第三个解决方案(通过Epiphan抓取器从外部VGA源捕获)。在三种情况下,我将帧+捕获时间缩短为PNG,并在QuickTime参考电影中对它们进行排序。然后,我制作了结果的平面视频(MPEG4或SWF)。在我的情况下,我将屏幕视频与DV流同步。

最终技术起作用了(请参见输出的示例),但我们的商业模式失败了。


@Chris Dolan "查看输出样例" -- 该域名已过期。 - MikeNereson
@MikeNereson -- 感谢您指出这一点。他们是我的前雇主,我已经转达了这个消息。我认为这是意外发生的。 - Chris Dolan

2

据我所知,旧版本的小程序存在安全限制,可能无法进行屏幕截图。相反,Java应用程序可能是可行的。 关于自己构建还是雇佣开发人员,这取决于您如何评估自己的时间与在自由职业者网站上找到的人才的价值。 我认为您可以在印度/罗马尼亚/波兰/其他国家找到一些能够以合理价格完成此项工作的人。


1

考虑到你的Java知识和任务的难度,你是否考虑采用另一种方法?例如,为最终用户提供本地VNC服务器,只需下载一个小程序,然后点击“运行”。该本地服务器被编程为捕获屏幕并将其直接发送到您的Web服务器,该服务器具有像vnc2swf或其他将VNC流转换为视频或.fbs文件的客户端。这一切都有意义吗?

不可否认,如果没有Java,您必须为每个要支持的平台准备一个可执行程序,但是我不知道。对我来说,这仍然听起来更容易。考虑一下Copilot.com。他们正在使用VNC,但仍然为每个平台使用小型本机应用程序。


0

很抱歉,但这似乎是需要大量经验的工作。即使你在网络上找到了各种代码片段来修复这个问题和那个问题,总体结果可能比雇用有经验的Java程序员更糟糕。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接