when I run single camera with single usb hub. i run example from the github can archive frame speed 6-7 fps @10MP the problem when i use multiple camera with multiple usb hub
like this image
i can archive 6-7fps @10MP but sometimes got some frame error and many of usb timeout error.
and i already try using single application access multiple camera with the same hardware configuration but still have very slower camera roughly 2 fps when i should switch between the camera ie. should open-close the camera each time switch the camera.
do you have any clue/suggestion about this problem?
Thanks for your detail hardware information. We have tested it
After our test, two USB3.0+MT9J001, using the configuration specified by the customer, can run normally at the same time, 6-7fps.
Analyze the customer’s usage scenarios, and the following points need to be confirmed:
① Check whether the About of the two upper computers display Device3 Interface3;
②Confirm whether both HUBs are connected to USB3.0;
③If the notebook has only one 3.0, connect it to a 3.0 HUB and try again.
There is indeed a problem with using the hub. It seems that the hub will affect the USB bandwidth. Please try to remove the hub, connect the camera directly to the computer
Regarding the bad frame you mentioned, does it keep appearing after clicking stop and open or does it return to normal after a few bad frames? I test it on my computer, When I click the stop and open it also appear bad frames but after a few bad frames it will return to normal.Even if I use one camera , the same result. When I click close and open it will not appear bad frame. You can try it.
About the bad frame when click stop and open, it is due to When we click click , we do not have clear the data buffer.
About the c++ streaming example, our engineer will help you check it. Please attach us your whole code.
you correct bin in my pc happen like your explain “When I click the stop and open it also appear bad frames but after a few bad frames it will return to normal”
then because of that the frame rate is going slow after start(begin capture)+capture
for wong
“request capture” is at first call is begin capture dan ArduCam_captureImage
Since no threads are opened inside the SDK, we need ArduCam_captureImage to read data from usb in a loop. If you do a time-consuming operation between two ArduCam_captureImage calls, some data will be lost and the frame rate will drop. Therefore we recommend using a separate thread to call ArduCam_captureImage.
From current example without modified only handle 1 camera so the frame rate is 6-7fps
When i run multiple example to access camera sometime frame len not enough and sometime usb timeout
The problem when example to use camera more than 1 the code should modified when code running in single app or process. In mya modified version like on your manual follow this step for each camera
open camera
Process where the proses is begin capture, capture,read image, endcapture
Close camera
This make the frame drop to 2-3fps
Are u have example when multiple camera running accessed using single process
And arducam camera sdk for python have the same handling? Should be multiple process (not thread)?