栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java Applet屏幕捕获到视频

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java Applet屏幕捕获到视频

使用纯Java解决方案,我怀疑它是否会起作用,但这当然取决于您对“视频”的解释。

在分辨率为1920x1200的台式机上,使用Java Robot捕获整个屏幕时,每秒可以获取约20帧。由于每个图像都包含> 6
MB的未压缩数据,因此我需要超过1
Gbps的带宽才能将这些图像的原始数据传输到服务器。很可能,要求这么大的带宽是不可接受的,因此您要么必须减少每秒的帧数,要么对图像进行某种压缩。

一种可能性是使用ImageIO支持的一种图像格式压缩每个图像。压缩图像的大小当然将在很大程度上取决于屏幕上实际显示的内容,但是压缩器的性能并不是特别好。压缩为PNG应该为大多数桌面内容提供最佳的无损压缩率,但是至少我的计算机每秒只能处理大约2帧。使用默认质量设置的JPEG压缩器可达到约5帧/秒。

通过jffmpeg之类的抽象层使用通用视频编解码器可能会同时实现更好的性能和更好的压缩率,但是我怀疑主流视频编解码器(例如WMV或H.264)是否适合通用桌面内容。

如果您真的需要一个纯Java解决方案(并且不能使用任何可用的独立软件,这些软件都可以满足您的要求),那么我将尝试实现自己的简单压缩算法。在常见的桌面活动下,大多数连续屏幕快照之间的差异应该很小,因此可能会比较有效的方法是完全传输第一帧,然后实施一种算法来大致检测矩形,在矩形中进行更改然后仅传输与JPG结合使用,最好传输(质量)PNG压缩结合的图片。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/453580.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号