Java 64bit VM - 视频帧抓取实时像素操作

时间:2017-10-10 23:59:11

标签: java video jvm 64-bit real-time

创作实时VJ应用程序(Chaoslab VJ)。一直使用JMF进行视频播放和帧抓取。得到的抓取图像只是一个int数组。性能并不差,可以处理多个视频混合效果,没问题。

但是...... JMF已经老了,有稳定性问题,没有维护,也不适用于64位JVM。在Windows上,32位JVM限制为1.5g内存,其中64位JVM限制为8g内存。

问题: 什么是最好的64位JVM兼容Java API /库用于视频播放和帧抓取(到一个int数组)。

更新

JavaCV / OpenCV也是如此,并且让它发挥作用。随意询问您是否需要手动抓取Java中的视频流中的原始像素数据。

教程 - http://ganeshtiwaridotcomdotnp.blogspot.co.nz/search/label/OpenCV-JavaCV

GitHub - https://github.com/bytedeco/javacv

2 个答案:

答案 0 :(得分:0)

正如你所说,JMF已经很老了,并且很长一段时间没有更新。它的局限性在于它仅支持video4Linux版本1,而不支持版本2,这意味着不支持大多数现代网络摄像头。

另一种选择是FMJ(Java中的Freedom for Media)。这主要是与JMF API兼容,因此是一个很好的替代品。

http://fmj-sf.net/

https://github.com/Metaswitch/fmj

https://sourceforge.net/projects/fmj/

答案 1 :(得分:-2)

尽管这不是问什么是最好的地方,我建议你去看看OpenCV(https://opencv.org/)或它的Java-Implementation JavaCV(https://github.com/bytedeco/javacv)< / p>