Re: [libdc] Fwd: question
Capture and control API for IIDC compliant cameras
Brought to you by:
ddouxchamps,
gordp
From: David M. <dcm@MIT.EDU> - 2009-05-31 04:14:54
|
On Sun, 2009-05-31 at 02:19 +0000, Michael Williamson wrote: > OK, on the openSuSE computer, > I got the new libdc1394 version, I unplugged the AVT Marlin F131B, > and plugged in the IMI-17FT camera, and it worked at first: > Okay, good progress. A couple things: - It seems the camera gets into a bad state after a capture operation is not cleaned up properly. While that is squarely the camera firmware's fault, you might try running dc1394_video_set_transmission(camera, DC1394_OFF) at the start of your program to see if that helps unwedging it. - On legacy ieee1394 kernel drivers (opensuse), you need to call dc1394_capture_stop() in order to free channel and bandwidth allocations from the bus. If you ctrl-c without doing this, they will not get cleaned up, and eventually the bus will run out of bandwidth. Run the dc1394_reset_bus() function, or the command-line program examples/dc1394_reset_bus to forcibly free these resources after an uncleanly aborted program. Note that on juju (fedora), the kernel will do this cleanup automatically. - You can use the dc1394_camera_reset() function to ask the camera to reset itself. However, there is no guarantee this will do anything meaningful -- it is up to the camera's firmware. Unfortunately, there is no way to force a power-cycle without physically unplugging the camera. - You might also find the resetting the bus (as above) may cause the camera to do some amount of internal reset. -David |