V4L2 помощ в настройките на камерата

Бих искал да променя ириса, времето на експозиция и iso параметъра с помощта на v4l2 lib в linux. Никога досега не съм използвал sth по този начин.
Открих, че трябва да променя това: V4L2_CID_EXPOSURE_AUTO; и ще направя това с тази част от кода:

// open capture
int descriptor = v4l2_open("/dev/video0", O_RDWR);

// manual exposure control
v4l2_control c;
c.id = V4L2_CID_EXPOSURE_AUTO;
c.value = V4L2_EXPOSURE_MANUAL;
if(v4l2_ioctl(descriptor, VIDIOC_S_CTRL, &c) == 0)
    cout << "success";

След това бих искал да променя тези три параметъра на камерата: ирис, време на експозиция и iso.

Но не мога да намеря как...


person Marios Sampson Dimiou    schedule 28.09.2014    source източник


Отговори (1)


Разгледайте v4l2 разширен контрол

След като зададете параметър V4L2_CID_EXPOSURE_AUTO на V4L2_EXPOSURE_MANUAL, както направихте, можете да използвате V4L2_CID_EXPOSURE_ABSOLUTE и V4L2_CID_IRIS_ABSOLUTE за контрол на експозицията и ириса.

За да зададете iso параметър, трябва да зададете V4L2_CID_ISO_SENSITIVITY_AUTO на V4L2_CID_ISO_SENSITIVITY_MANUAL, следващото V4L2_CID_ISO_SENSITIVITY може да бъде зададено.

Можете да погледнете v4l-utils, който предоставя инструмента за команден ред v4l2-ctl за управление на v4l2 устройство.

person mpromonet    schedule 24.10.2014