我尝试编写一个应用程序来检测和捕获来自网络摄像头的视频。我使用 JMF 2.1 和 JDK 1.7u5,但是当我编译和运行我的应用程序时,它无法检测到任何设备。然后,我尝试使用 JMyron,但它在 x64 中不受支持(我的操作系统是 Win 7 x64)。
你能告诉我为什么吗?以及如何在我的 Java 应用程序中从网络摄像头捕获视频?
谢谢你的帮助!
我尝试编写一个应用程序来检测和捕获来自网络摄像头的视频。我使用 JMF 2.1 和 JDK 1.7u5,但是当我编译和运行我的应用程序时,它无法检测到任何设备。然后,我尝试使用 JMyron,但它在 x64 中不受支持(我的操作系统是 Win 7 x64)。
你能告诉我为什么吗?以及如何在我的 Java 应用程序中从网络摄像头捕获视频?
谢谢你的帮助!
JMF 2.1.1e使用 64 位 JDK/JRE。我在 Windows 7 x64 上对其进行了测试。假设网络摄像头驱动程序已正确安装,并且您还可以使用 Skype 等替代应用程序对其进行测试以确保其正常工作,那么您就可以验证您的 JMF 安装了。
启动JMStudio并转到“文件->首选项”菜单。这会调出 JMF 注册表编辑器。转到“捕获设备”选项卡,然后单击“检测捕获设备”。这应该会在列表中显示您的网络摄像头。它将被列为“ WDM Image Capture ”或类似名称。请注意,如果您想提交某些内容,那么您应该以管理权限启动 JMStudio。
您可以通过选择“文件->捕获”菜单(Ctrl-P)来使用网络摄像头捕获视频或拍摄快照。
如果上述方法有效,您的应用程序应该能够使用 JMF 并使用您的网络摄像头,除非您忘记包含正确的库或在代码中遗漏某些内容。
我知道您可能不想要这个,但我建议您使用 HTML5 来捕获、录制或流式传输视频。看看http://www.html5rocks.com/en/tutorials/getusermedia/intro/并希望你能在你的要求允许的情况下完成它。HTML5 提供了很多可以轻松实现的功能。