I am unable to capture (continuously) simultaneously from a USB and a GigE camera, is there a limitation in Labview ? Both cameras work if I use them one at a time. I am using Labview 2012. Both cameras are IMAQdx devices and I am using IMAQdx VIs.
This is not a LabVIEW limitation. I just used the Low-Level Grab.vi (NI Example Finder>>Browse>>Hardware Input and Output>>IMAQdx>>Low-Level) and copied the existing code and acquired from both cameras properly at the same time. It is most likely an issue with your code. Try modifying the Low-Level snap and seeing if you’re able to acquire with both cameras and then compare your code to the modified example.
Also look at this KnowledgeBase. It will give you some guidance as to the caveats of multiple acquisitions at once. Your BUS will not be a limitation though, since you are using separate buses.
I don't think using HL VIs should present a problem.
You did not mention if you are using USB 2.0 or 3.0. Since most cameras are 2.0 take a look at your data requirments:
1 mega pixel color camera ->3 MB per frame -> 30 frames per second 90 MB per second -> 720 Mb per second - USB 2.0 Limits you to 480 Mb per second. Note USB also requires CPU intervention for each transfer (not a requirement for USB 3.0).
If you are using giga bit ethernet it limits you to around 800 - 900 Mb per second, no CPU intervention
You should do your calculations based on your cameras. I found out using firewire basler camera, 640x480 8 bit mono 400 Mb per second limits me to 30 frames a second (requires no CPU intevention).
I have just converted to low level, just in case. Not tested yet...
USB camera: USB 2.0, 10 frames/sec, 1280x1024 -> about 13 MBytes/sec
GigE camera: 300 frames/sec, 640x480 -> about 90 MBytes/sec
So both cameras data rates are within their respective interface limits. Although when I started to archive raw frames from the USB camera, everything in labview became super slow. The slowness was reduced dramatically once I started storing to compressed AVI files (rates went from 15 Mbytes to approx. 1.5 Mbytes/sec). I have not tested archival with the GigE camera yet, I am expecting troubles, just dont know how severe.
Thanks for your help,
Take a look at your cpu requirements. I bet it is pretty high. Remeber, USB 2.0 is polled and require CPU intervention for data transfer. This seems to be indicated by your video reduction. If you have multiple CPUs, consider one to do the USB Camera transfer. I bet you can get a significant increase in video reduction.