创作实时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
答案 0 :(得分:0)
正如你所说,JMF已经很老了,并且很长一段时间没有更新。它的局限性在于它仅支持video4Linux版本1,而不支持版本2,这意味着不支持大多数现代网络摄像头。
另一种选择是FMJ(Java中的Freedom for Media)。这主要是与JMF API兼容,因此是一个很好的替代品。
答案 1 :(得分:-2)
尽管这不是问什么是最好的地方,我建议你去看看OpenCV(https://opencv.org/)或它的Java-Implementation JavaCV(https://github.com/bytedeco/javacv)< / p>