【问题标题】:Capture video from multiple cameras in Processing在处理中从多个摄像机捕获视频
【发布时间】:2015-12-10 16:05:09
【问题描述】:

我试图在同一处理窗口中显示来自连接到计算机的摄像头的 2 个(或更多)不同捕获:默认内置摄像头和 USB 摄像头。

如果我同时启动两个摄像头,似乎什么也没有显示。甚至可能有 2 个(或更多)不同的捕获吗? 代码如下:

import processing.video.*;
Capture camA;
Capture camB;
String[] cameras;

void setup(){
cameras=Captures.list();
camA = new Capture(this,1280,960,cameras[15]);
camB = new Capture(this,1280,960,cameras[1]);
camA.start(); 
camB.start();
}
void draw() {
  image(camA, 100, 100, 360,240);
  image(camB, 500, 100, 360,240);
}

void captureEvent(Capture c) {
  if(c==camA){   
    camA.read();
  }else if(c==camB) {
    camB.read();
  }
}

【问题讨论】:

    标签: camera processing video-capture capture


    【解决方案1】:

    通过从列表中选择其他相机分辨率进行修复。两者都具有更高的分辨率不会渲染它们。它与一个 640x320 和另一个 320x180 一起工作,这对我来说已经足够了。

    【讨论】:

    • 我想你首先检查了最大值。每个相机的分辨率(它们可能不同)。一个疯狂的猜测是,在最大分辨率下,每台相机都需要更高的 USB 带宽。如果您用于 USB 摄像头的 USB 端口与笔记本电脑主板上的内置摄像头位于同一个 USB 集线器上,那么它们将共享相同的“数据管道”。要么检查你的笔记本电脑主板和 USB 集线器/控制器的数据表,要么为 USB 摄像头尝试不同的 USB 端口?您也许可以使用更高的分辨率。如果您身边有一个 USB 集线器,另一种选择可能是使用有源 USB 集线器。巴夫塔!
    猜你喜欢
    • 1970-01-01
    • 2017-08-22
    • 1970-01-01
    • 2017-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多