10-09-2008 10:52 AM
Hi,
I'm using c++ to implement an application which does a continuous grab from my firewire camera. According to the manual, there are two ways of doing this after an imaq1394CameraOpen2:
1) imaq1394SetupGrab -> imaq1394Grab2 (many times)
2) imaq1394ConfigureAcquisition -> imaq1394GetBuffer2 (many times) -> imaq1394StopAcquisition
Both options seem to do pretty much the same thing if I set continuous=1 and bufferCount=3.
What I didn't understand is the last parameter rectangle. I could set this to anything but unless I changed the IMG1394_ATTR_FORMAT7_* with SetAttribute before ConfigureAcquisition, the image size wouldn't change, which was confirmed by GetAttribute. Unfortunately, this doesn't seem to work while an acquisition is running. So here is my question: Do I have to Stop, Clear, Configure and Start every time I change the ROI or is there an other way of going it?
Setting attributes like shutter time or gain works fine during an acquisition.
I'm using a Redlake Megaplus II ES11000 with NI-DAQ IEEE 1394 drivers version 2.0.1.
Cheers,
Tom
Solved! Go to Solution.
10-16-2008 09:27 AM
52 views and nobody knows an answer? 😞
10-16-2008 09:42 AM
Hi Tom,
You do in fact have to unconfigure the acquisition to change the ROI. If you only want to move the ROI but keep it the same size you may be able to use raw register writes to the right registers on your camera to change the position on-the-fly.
-Eric
10-16-2008 10:30 AM
Hello Tom,
You cannot configure all attributes for a firewire camera during acquisition of images; it depends on the attribute in question. If you are getting an error when you try to change the value of an attribute during a grab, it is because the attribute must be configured before starting a grab. As the attributes vary depending on the camera, this will have to be tried out to specify which ones can be reconfigured while acquiring images.
I hope this answers your question!
10-16-2008 10:47 AM
That was quick, thanks guys!
Tom