The problem is that I wanted to shut off auto-exposure, and that didn't seem to work with my particular webcam. I'm using WC1200RED webcam, which internally has an Arkmicro Technologies Inc. device (18ec:3299). According to the Linux uvc page this is model number QC3231, although I don't see this model number anywhere (although I since tossed the packaging).
After playing around with the camera for a bit, I stumbled upon a way to disable auto-exposure with the following change:
case A_EXPOSURE_OFF:
control.id =V4L2_CID_EXPOSURE_AUTO;
- control.value =8;
+ control.value =2;
if ((value = ioctl(videoIn->fd, VIDIOC_S_CTRL, &control)) < 0)
printf("Set Auto Exposure off error\n");
I can't find this documented anywhere, but it does seem to work; it's probably worth posting a question on the UVC list at some point.
hi! thanks for the articles,
ReplyDeletei have a problem with my webcam if you can help me,
i installed ubuntu 11.10 on my beagleboard and i'm trying to run a program using opencv and accessing the webcam however it can't acces it
it's problem with ubuntu uvc driver
sometimes i see /dev/video0 and sometimes not
specially when i execute my program
and when i excute dmesg after taht i see:
usb 2-1 :disconnect...;
please help me!!!
Sorry for the delayed response, I just saw your comment!
ReplyDeleteRegarding your problem - I wonder if it's a power drain issue; i.e., perhaps the Beagle Board doesn't provide enough power from it's internal USB port for your webcam.
Have you tried using an externally powered hub into which you plug the webcam?