2010-03-26 112 views
7

如何使用Java(以跨平台方式)从网络摄像机获取视频和音频流?如何使用Java从网络摄像机获取视频和音频流?

例如,我们有一台带有3-4个USB网络摄像头的电脑;我们希望获得他们的流并使其在用户界面中可见。我们怎么能做这样的事情?我需要一个简单的应用程序的代码,它可以找到计算机上的所有相机,并让我们选择相机来扫描。任何一个,请分享这样一个?

回答

-2

我会使用flex。它可以相对容易地与java后端集成。

UPD:

纯Java需要

那么你应该考虑JavaFX的解决方案。我不是javafx的大专家,我只写了一些基本的测试应用程序,但我确信这是一种用纯java解决所述问题的现代方法。

+0

对不起 - 纯Java需要...我喜欢Flex ...不是我的老板... – Rella 2010-03-26 17:33:48

+0

bugaga ... =)是的 - 现代的方式...或者你建议发送视频流从Flash到Java编码而JAVA可以自行修改它只是为了好玩吗?=) – Rella 2010-03-26 17:51:45

+0

@Ole Jak:你不同意哪一部分?由于闪光灯更受欢迎,您不同意闪光灯(柔性)解决方案更好?或者你不同意JavaFX解决方案比基于applet的解决方案更好的解决方案吗?如果你知道答案,那么不要问问题。 -1。 – Roman 2010-03-26 18:03:57

3

一个例子,我看到你的有关解决方案的需要是“纯”的java评论,但是这确实是“几乎”是不可能的。您将需要使用某种本地库来访问设备,并说明这一点;我建议你将Xuggler视为你的解决方案。 Xuggler支持Windows,Mac和Linux,并且还提供处理音频和视频的示例代码。最后,图书馆是免费的。 网络摄像头捕捉例如:http://xuggle.googlecode.com/svn/trunk/java/xuggle-xuggler/src/com/xuggle/xuggler/demos/DisplayWebcamVideo.java

虽然Xuggle没有麦克风捕获的一个例子,你可以在邮件列表上找到的样品或者你可以使用由包mulitbroadcaster项目编写代码在这里找到:https://code.google.com/p/packet-multibroadcaster/

+0

事实上,这里有一篇关于捕捉屏幕和麦克风的文章:http://groups.google.com/group/xuggler-users/browse_thread/thread/111792482bdf1d21 – 2010-08-21 16:33:19

0

你可以试试my solution。它使用OpenCV捕获图像和码头服务器,通过WebSocket传输它。这个例子有三个类,它会很容易理解。 现在我只能发送视频,但我正在处理音频。

+0

通过添加一些源代码来改善您的答案。链接可能在未来破产 – ddb 2016-08-27 09:58:46

+0

你是否完成了音频 – 2018-02-07 06:56:05

相关问题