PDA

View Full Version : Using Multiple Instances on Graphedit



mahoaga
May 9, 2012, 15:53:29
Hello
I am working on a project that it's aim is to display the stereo stream which source is a remote streaming server with two DFK 31BF03 Firewire cameras. We are using RTSP for communication.

For the first phase of the project,I have implemented the system that client can get an image pair and display it in stereo mode.On this system,for the server,I have written a C++ application with Imaging Source SDK.In the application,as a summary,I created two grabber objects at the same time , by taking bandwidth issues into account.That phase is implemented and in a working state.

In the second part, I am trying to improve the system that streaming server will stream real time video.For that purpose,I am using Graphedit to build the graph that gets the frames,encodes them and send them over RTP.
However,in graphedit, I cannot connect two camera filters at the same time. If one device is connected,graphedit does not allow to connect the second device to any filter.

Is there a way that I can change some parameters maybe in registry and use them both in application?

Attached image contains the graph that I am using.

Stefan Geissler
May 9, 2012, 17:38:34
Hello,

I had no problems doing exactly the same. Do you receive any error message, when you try to connect the second camera to the RTSP server? Maybe you must be sure, that both cameras are configured in the same way.

Also it might be a good idea, to run both cameras first with the video renderer only, to make sure, graphedit can handle both cameras.

mahoaga
May 9, 2012, 18:47:36
Thank you for your interests,first of all.

There is an error code,however I cannot remember it.I will post it tomorrow,since the computer that I am working on project is in the office.

I also tried to use a render filter instead of the RTSP filter,however,result was the same.Still,I could not connect the second filter to any other filter,after connecting the first one to a filter.

mahoaga
May 10, 2012, 10:04:07
Hello Stefan;

The error code for the problem is 0x80040217.You can see the error in the attached picture file.This time,as you said,I tried with multiple render filters again,still the same problem.

Regards

Stefan Geissler
May 10, 2012, 18:00:21
For some reason, the cameras have the same name in IC Capture. Usually there is one "DFK 31BF03" and one "DFK 31BF03 1". Are you sure, you selected different capture devices from the Graphedit filter selection box?

mahoaga
May 11, 2012, 09:52:19
Yes,and I am curious about why both devices have the same name. In IS Capture Application , devices are named as you mentioned.However,in graphedit , they have the same name.

Stefan Geissler
May 11, 2012, 10:07:00
Please delete both cameras from the Windows Device Manager, disconnect them and connect them again. Then try again in graphedit and make sure, you have selected different cameras :-)

mahoaga
May 11, 2012, 11:15:09
I have deleted the devices,disconnected and reconnected them.Still the same error code.Anyways,this time one of the devices name is Generic 1394 DCAM Camera,but as I said,still the same error.
Even if I use one device in one graphedit process and the other device in another graphedit process,same error message is prompted.

Stefan Geissler
May 11, 2012, 12:39:12
I am very sorry, but I have no idea, what wents wrong on your system. I suppose, it is something with device enumeration, that fails.

The cameras are setup in the same way: same video format, same frame rate, right?

So you may also ask the Microsoft support, because this is a DirectShow problem.

mahoaga
May 11, 2012, 12:41:29
Thank you very much for your interests.I will try to figure it out some way or another.

mahoaga
May 11, 2012, 13:57:51
The problem might be related with the default opening settings of the devices.For instance,when I create the first device object in graphedit,it is being opened by the default settings(UVYV ,@15 Hz).So,there is not enough bandwidth for second device to be opened.
My question is;is there a configuration file or an entry in registry that I can manipulate it in order change the default create parameters?

Stefan Geissler
May 11, 2012, 14:04:59
Hi,

all devices are opened with default settings. There is no registry setting. You must open the device and change the settings in the device properties and pin dialog.

mahoaga
May 11, 2012, 14:12:13
In properties dialog,as far as I see,there is no option to change the video format or refresh rate. I am not sure if changing settings trick works or not,but so far,that is the only workaround I can imagine.

Stefan Geissler
May 11, 2012, 14:23:04
Pin dialog? Perform a right mouseclick on the little pin.

mahoaga
May 11, 2012, 14:28:04
My mistake.Thank you for making me notice that one.Problem solved now

Stefan Geissler
May 11, 2012, 16:59:22
Ah, ok.

BTW: this is one of the differences between FireWire and USB: Using USB cameras, the connection worked, but you wont get images. FireWire checks for bandwidth needs before the cameras can be connected.