问题标签 [video-capture]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2736 浏览

c# - 使用 C# 从相机捕获视频流的最简单、最快的方法是什么?

使用 C# 从相机捕获视频流的最简单、最快的方法是什么?

0 投票
1 回答
9124 浏览

visual-c++ - 如何使用 DirectShow 捕捉 RGB 中的实时摄像机帧

我正在通过 DirectShow 实现实时视频捕获以进行实时处理和显示。(增强现实应用程序)。

我可以很容易地访问像素,但似乎我无法让 SampleGrabber 提供 RGB 数据。设备(iSight——在 VMWare 中运行 VC++ Express)仅报告 MEDIASUBTYPE_YUY2。

经过广泛的谷歌搜索,我仍然无法弄清楚 DirectShow 是否应该为这类事情提供内置的色彩空间转换。一些网站报告说没有内置 YUV<->RGB 转换,其他网站报告说您只需在 ISampleGrabber 上使用 RGB 子类型调用 SetMediaType。

任何建议都非常感谢,我对这个很疯狂。下面提供的代码。请注意

  • 该代码有效,只是它不提供 RGB 数据
  • 我知道我可以实现自己的转换过滤器,但这不可行,因为我必须预测每一种可能的设备格式,这是一个相对较小的项目

    /li>
0 投票
1 回答
4534 浏览

video-capture - 直接屏幕像素/帧缓冲区访问

我想尝试创建一个玩游戏的程序。即“机器人”。

我希望能够直接访问屏幕上的像素。即让我的程序“看到”一个游戏,然后“采取行动”(或至少画出它会采取什么行动的图片)。

Windows 和 Linux 的建议都值得赞赏,尽管我的猜测是在 Linux 上应该更容易做到。

我猜这可以通过一些 X/Gnome 调用来完成?
我不怕 C,甚至欢迎复杂的样本。

0 投票
2 回答
13259 浏览

c++ - 为什么 OpenCV 的 `cvCreateCameraCapture` 和 `cvCreateFileCapture` 不起作用?

有一个 AVI 视频文件和一个网络摄像头。cvQueryFrame在这两种情况下都返回 null。应用代码(仅适用于凸轮):

0 投票
3 回答
37420 浏览

java - 如何从网络摄像头捕获视频(在 java 中)?

我想用java开发一个应用程序来从网络摄像头捕获视频并将其存储到特定位置。谁能提供我的工作代码?

为了开发应用程序,最好使用哪种类型的网络摄像头(usb、ip 等)。

请帮我。如何进行?

0 投票
3 回答
972 浏览

linux - 用于视频捕获和显示的 Linux+语言

很快,我们将开展一个使用开源软件的项目,该软件可以做很多事情,其中​​一个模块涉及从基于 USB 的摄像头捕获长达 48 小时的实时信息并在不间断循环中覆盖它。这将与应用程序中的其他操作并行进行。我们还必须将至少 48 小时的捕获提要作为菜单选项显示给用户。

我希望你们都建议一个合适的开源技术堆栈,考虑到模块的音频/视频部分,没有这个功能我绝对可以使用 Qt 来做我的工作,但是有了这个功能就变得很困难了。我已经在 Linux 平台上使用 Qt 开发了 GUI 应用程序,但还没有想出可以在应用程序中记录和显示视频的东西。Qt 有声子,但设置它是一场噩梦。早些时候你们中的一些人建议使用 v4linux。我试图在 RHEL 4 机器上编译示例程序capture.c,它给出了以下错误。

所以走到了死胡同,此外我还没有提出具体可行的例子。此外,该网站没有经常更新,这表明开发过程停滞不前。

由于应用程序将是基于菜单的用户交互的图形化应用程序,因此它需要使用 Qt 或类似的东西作为图形部分。令人头疼的是我无法弄清楚如何在虚拟应用程序中实现/集成视频捕获/显示功能(我的尝试是使用 Qt 可能你们中的一些人已经使用其他库或语言完成了它) .

编辑:能够通过导入 videodev2.h 的本地副本并添加定义语句以包含 __user 宏来编译程序。但现在它无法运行,因为它找不到 /dev/video 设备。所以再次陷入 video4linux 的死胡同

0 投票
3 回答
3605 浏览

linux - 保存 V4L2 摄像机输出

如果我以位图格式捕获使用 V4L2 保存相机的输出时,哪种视频格式最容易?当然,直接获取 mpeg 可能很好,但不幸的是,我不能指望这一点。

我已经设法捕捉到这些帧,现在我需要以某种方式查看视频。我可以使用一些 Linux 工具简单地转换这些帧,还是可以直接从我的应用程序轻松保存视频?

0 投票
5 回答
8982 浏览

air - 如何在 AIR 中将视频录制到本地磁盘?

我正在尝试将网络摄像头的视频和音频录制到存储在用户本地硬盘上的 FLV 文件中。我有这个代码的一个版本,它使用 NetConnection 和 NetStream 通过网络将视频流式传输到 FMS (Red5) 服务器,但我希望能够在本地存储视频以应对低带宽/不稳定的网络情况。我正在使用 Flex 3.2 和 AIR 1.5,所以我认为不应该有任何沙盒限制来防止这种情况发生。

我见过的东西:

  • FileStream - 允许读取、写入本地文件,但不允许使用 .attachCamera 和 .attachAudio 方法来创建 FLV。
  • flvrecorder - 从网络摄像头生成屏幕抓取并创建它自己的 flv 文件。不支持音频。许可禁止商业用途。
  • SimpleFLVWriter.as - 类似于没有奇怪许可证的 flvrecorder。不支持音频。
  • 这篇 stackoverflow 帖子- 演示了使用 NetConnection/NetStream 从本地磁盘播放视频。

鉴于我已经有一个使用 NetStream 流式传输到服务器的版本,我认为最后一个版本最有前途,并继续将这个演示应用程序放在一起。代码编译并运行没有错误,但我在磁盘上没有单击停止按钮的 FLV 文件。-

在我看来,上述代码有问题导致它无法正常工作,或者 NetStream 不能以这种方式被滥用来录制视频。

我想知道的是,a)上面的代码有什么问题(如果有的话)?b) 如果 NetStream 不支持录制到磁盘,是否还有其他替代方法可以将音频和视频捕获到用户本地硬盘上的文件中?

提前致谢!

0 投票
1 回答
1608 浏览

c++ - 从网络摄像机捕获实时图像

从网络 IP 摄像机捕获流式 MJPEG 的最佳方法是什么?

我想使用 c++(或用 c++ 扩展的 python)获取帧并处理它们。

OpenCV 是我最好的选择吗?

0 投票
1 回答
1556 浏览

c# - DirectShow - 如何调试引脚连接失败

我正在使用 IGraphBuilder 将视频捕获设备呈现到屏幕上。该过程包括将捕获过滤器添加到图形,然后将 VideoMixingRenderer 添加到图形(使用自定义分配器),最后调用 graph.Render() 以使用 Intelligent Connect 连接引脚。在某些情况下,这很好用,并且我的自定义分配器已正确加载(并调用 InitializeDevice),但在其他情况下,未使用自定义分配器,并且我得到一个 ActiveMovie 窗口显示捕获设备而不是添加到图表中的 VMR . 智能连接似乎不想将捕获设备过滤器连接到 VMR,而是创建自己的渲染器。是否有任何工具或技术来调试它?对 graph.Render() 的调用成功,HR 为 0,所以我' m 没有从 DirectShow 得到任何关于连接失败的信息。希望有一个诊断工具可以让我更好地了解 DirectShow 中发生的事情。