6

我们需要在 Linux 上轻松捕获实时视频并显示。我们需要具有简单 API 的廉价卡或 USB 设备。有人想分享一些经验吗?

4

8 回答 8

5

使用video4linux库。我已经将它与 c++ 程序一起使用,并且能够在大约一个小时内捕获网络摄像头帧。(非常易于使用和设置)

于 2008-09-17T14:37:02.777 回答
4

如果你需要编程,你最好使用GStreamer,这是一个 Linux 下的多媒体框架。

Jackbravo 提到的 Cheese 是基于 GStreamer 的,我工作的流媒体服务器Flumotion也是如此。

于 2008-09-18T13:18:22.037 回答
3

如前所述,使用 dvgrab 从相机的 Firewire 接口捕获,然后根据需要使用 ffmpeg(命令行)或 kino(简单 gui 视频编辑器)等工具处理视频。基于 PCI 的 Firewire 卡相对便宜且容易找到。

这里有些例子:

  • 从火线连续捕获,每隔几分钟自动分割

    dvgrab --size 500 --autosplit <filename>
    
  • 看摄像机直播

    dvgrab - | mplayer -
    

请注意,一些最近的发行版(例如 Fedora8)正在使用新的但不成熟的火线驱动程序。但是,Ubuntu 运行良好。

于 2008-09-20T21:10:39.177 回答
2

那里有“密封”相机解决方案,背面带有迷你网络服务器和以太网端口。只需将其插入网络,设置其 IP,然后打开浏览器……在 linux 或任何地方

如果你想在 linux 中捕捉,我曾经有一个便宜的网络摄像头在 perl 脚本中捕捉单帧,它可以被实时修改——尽管那是大约 10 年前的事了。无论如何,它是可能的:-/

于 2008-09-17T18:25:25.113 回答
1

奶酪侏儒应用程序。使用起来真的很简单。没有太多功能,只是视频捕获。

于 2008-09-17T14:38:35.300 回答
1

openCV 将允许您从相机捕获单个帧并保存到磁盘。如果您需要随后操作这些来创建视频,我建议您使用 netpbm,这是一套非常强大的命令行工具,您可以使用一些 shell 脚本来制作视频或做任何您需要的事情。

于 2008-09-18T02:05:22.183 回答
1

另一种选择是使用 Firewire (IEEE1394) 摄像机,例如最常见的 DV 摄像机。它们往往工作得非常好,并且提供比廉价网络摄像头更好的视频,并且 Linux 中有大量用于处理 dv 视频的工具,例如dvgrab

于 2008-09-18T13:22:32.570 回答
1

如果您使用 java,v4l4j 使得从任何 V4L 设备捕获帧变得非常简单。它还允许您从 java 控制设备。我将它与 PTZ 网络摄像头(罗技 quickam orbit)一起使用,我可以控制亮度、饱和度和自动白平衡等常用参数,还可以控制相机的倾斜和平移。非常便利 !

于 2009-01-24T00:47:16.743 回答