AForge.NET

  :: AForge.NET Framework :: Articles :: Forums ::

Dual camera, moniker string?

Forum to discuss AForge.NET Framework, its features, API, how-tos, etc.

Dual camera, moniker string?

Postby gripner » Thu Oct 25, 2018 9:16 pm

Hello

Im trying to use 2 identical webcameras with aforge, did not get it working so googled some and found ppl saying, cant have same moniker string. So started checking there. this is what i have.

When I use 2 diff cameras it works, see moniker strings
@device:pnp:\\?\usb#vid_046d&pid_082d&mi_00#7&2b924d9b&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{bbefb6c7-2fc4-4139-bb8b-a58bba724083}
@device:pnp:\\?\usb#vid_0c45&pid_6300&mi_00#7&598b202&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global

When I use 2 identical cameras this is the 2 moniker strings
@device:pnp:\\?\usb#vid_0c45&pid_6300&mi_00#7&598b202&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global
@device:pnp:\\?\usb#vid_0c45&pid_6300&mi_00#7&2e79cb64&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global

to me the moniker strings are clearly different.
I have tried the two camera samples, same result in that application.

Anyone got any idea?
gripner
 
Posts: 5
Joined: Thu Oct 25, 2018 9:03 pm

Re: Dual camera, moniker string?

Postby andrew.kirillov » Fri Oct 26, 2018 7:02 am

Hello,

Well, it really depends on camera drivers. I heard from people many times, that if they have two identical cameras, then things don't work for them. Long time ago I had two cameras of the same model and luckily it did work fine (some cheap noname cameras, so can not name them). The problem is that some manufacturers (or driver developers) simply can not think of a use case for two cameras.
With best regards,
Andrew


Interested in supporting AForge.NET Framework?
User avatar
andrew.kirillov
Site Admin, AForge.NET Developer
 
Posts: 3446
Joined: Fri Jan 23, 2009 9:12 am
Location: UK

Re: Dual camera, moniker string?

Postby JuKu » Sat Nov 03, 2018 3:39 pm

At least on Windows, two identical cameras work without issues. You can find link to the source code of my software at https://www.liteplacer.com/downloads/ to see how I did it. The application will work without the associated hardware, so you can try it, too.
JuKu
 
Posts: 16
Joined: Wed Nov 13, 2013 10:44 am

Re: Dual camera, moniker string?

Postby JuKu » Tue Nov 13, 2018 1:07 pm

I'm back in the office, so I can look in my code. I do all kinds of tests to see it actually starts etc(*), but basically it is simple:
Code: Select all
VideoSource = new VideoCaptureDevice(MonikerStr);
VideoSource.NewFrame += new NewFrameEventHandler(Video_NewFrame);
VideoSource.Start();


*: In practice, it is not this simple. The issues are in Windows and USB, not in Aforge. Some systems can use both at the same time, usually those that have separate USB controllers in the machine, others are limited to one at the time. On some of these, you need to stop both cameras and set VideoSource to null and create the source again, some are fine using just start and stop. See also https://github.com/openpnp/openpnp/wiki/USB-Camera-Troubleshooting-FAQ about issues on multiple USB cameras.
JuKu
 
Posts: 16
Joined: Wed Nov 13, 2013 10:44 am

Re: Dual camera, moniker string?

Postby gripner » Wed Jun 19, 2019 11:59 am

Dont know if im dumb or blind, but looking into the troubleshooting it talks about OpenPnpCaptureCamera driver.
I am unable to find any driver to download. Do one need to install the entire openPnP system to get the drive installed?

leif
gripner
 
Posts: 5
Joined: Thu Oct 25, 2018 9:03 pm

Re: Dual camera, moniker string?

Postby gripner » Mon Jun 24, 2019 6:43 am

After finaly finding some information.
Issue seems to be that the "usbvideo.sys" enumerates the usb and basicaly "asks" for just about all USB bandwidth/resources thus when camera nr 2 using same driver there are no resources left.

Where i found this information they mentioned USB3 might work better, did not for me, might be since cameras are not true USB3 cameras uncertain.
But "easiest" solution is to put the 2 camera son DIFFERERNT usb controllers, easy way for me was to put one camera in USB2 connector and one camera in USB3 connector, then I for sure know its on two different controllers.

Works just fine like this.
gripner
 
Posts: 5
Joined: Thu Oct 25, 2018 9:03 pm




Return to AForge.NET Framework

cron