Hi Yannick,
On Saturday 26 April 2008, yannick wrote:
> I did more testing:
> $ modinfo uvcvideo
> filename:
> /lib/modules/2.6.24-16-generic/ubuntu/media/usbvideo/uvcvideo.ko version:
> SVN r205
>
> $ uvcdynctrl -V
> uvcdynctrl 0.2 (SVN Revision : 21)
>
> $ uvcdynctrl -cv
> Listing available controls for device video0:
> Focus, Auto
> ID : 0x00000013,
> Type : Boolean,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 70 .. 2875, step size: 187 ],
> Default : 1
> Focus (absolute)
> ID : 0x00000014,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 70 .. 2875, step size: 187 ],
> Default : 70
> Exposure (Absolute)
> ID : 0x00000011,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 100 .. 2400, step size: 100 ],
> Default : 300
> Exposure, Auto
> ID : 0x0000000f,
> Type : Choice,
> Flags : { CAN_READ, CAN_WRITE },
> Values : { 'Manual Mode'[0], 'Auto Mode'[1], 'Shutter Priority
> Mode'[2], 'Aperture Priority Mode'[3] },
> Default : 3
> Backlight Compensation
> ID : 0x0000000c,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 0 .. 1, step size: 1 ],
> Default : 0
> Sharpness
> ID : 0x00000007,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 0 .. 9, step size: 1 ],
> Default : 0
> White Balance Temperature
> ID : 0x00000008,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 2800 .. 6500, step size: 1850 ],
> Default : 6500
> Power Line Frequency
> ID : 0x0000000d,
> Type : Choice,
> Flags : { CAN_READ, CAN_WRITE },
> Values : { 'Disabled'[0], '50 Hz'[1], '60 Hz'[2] },
> Default : 2
> Gamma
> ID : 0x00000006,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 25 .. 125, step size: 25 ],
> Default : 50
> White Balance Temperature, Auto
> ID : 0x00000009,
> Type : Boolean,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ -30 .. 30, step size: 1 ],
> Default : 1
> Hue
> ID : 0x00000005,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ -30 .. 30, step size: 1 ],
> Default : 0
> Saturation
> ID : 0x00000004,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 0 .. 19, step size: 1 ],
> Default : 5
> Contrast
> ID : 0x00000002,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 0 .. 3, step size: 1 ],
> Default : 1
> Brightness
> ID : 0x00000001,
> Type : Dword,
> Flags : { CAN_READ, CAN_WRITE },
> Values : [ 0 .. 31, step size: 1 ],
> Default : 0
>
> $ uvcdynctrl -g 'Exposure, Auto'
> 3
>
> $ uvcdynctrl -s 'Exposure, Auto' -- 0
>
> $ uvcdynctrl -g 'Exposure, Auto'
> 0
>
> $ uvcdynctrl -g 'Exposure (Absolute)'
> 1500
>
> /usr/local/bin/luvcview -i 30 -f yuv
> There I get 10~15fps
>
>
> The weird thing is I *must* follow this order to be able to set
> 'Exposure (Absolute)' and 'Focus (absolute)':
> 1- get the Auto value,
> 2- set the auto value,
> 3- get the absolute value
> 4- set the absolute value
>
> or I get this error:
> $ uvcdynctrl -s 'Exposure (Absolute)' 2400
> ERROR: Unable to set new control value: A Video4Linux2 API call returned
> an unexpected error 5. (Code: 12)
Does it work when you skip steps 1 and 3 ? The UVC specification makes it
mandatory to disable auto-exposure before setting the absolute exposure
value. If you don't the device ignores the absolute exposure request.
> This works:
> $ uvcdynctrl -g 'Exposure, Auto'
> 0
> $ uvcdynctrl -s 'Exposure, Auto' -- 0
> $ uvcdynctrl -g 'Exposure (Absolute)'
> 300
> $ uvcdynctrl -s 'Exposure (Absolute)' 100
> $ uvcdynctrl -g 'Exposure (Absolute)'
> 100
>
> This works too:
> $ uvcdynctrl -g 'Focus, Auto'
> 0
> $ uvcdynctrl -s 'Focus, Auto' 0
> $ uvcdynctrl -g 'Focus (absolute)'
> 1566
> $ uvcdynctrl -s 'Focus (absolute)' 70
> $ uvcdynctrl -g 'Focus (absolute)'
> 70
The focus control shouldn't have any influence on the frame rate.
> But what ever I tried, I'm not able to have 30fps :(
>
> It seems if there is more light in the room, the fps increase a bit.
I played a bit with my Creative Live! Cam Optia (non AF version, as I don't
own an AF one). With auto exposure on, the frame rate decreases with ambient
light. After disabling auto exposure off, the frame rate stays around 30fps
even if I obscure the lens.
Now, if I change the absolute exposure time after disabling auto-exposure, the
image will become completely saturated, no matter what absolute exposure time
value I set.
I tried the same operations on a Logitech Quickcam Pro for Notebooks. The
absolute exposure time can be changed when auto-exposure is off, and the
effect on the image is immediately visible (although the image gets darker
when I increase the exposure time, I would have expected the opposite).
This seems to mean that the absolute exposure time issue I encountered is not
caused by the driver but by the Creative Live! Cam Optia.
Have you seen a similar issue ? Does the image change when you modify the
absolute exposure time control after disabling auto-exposure ? You can use
uvcdynctrl to modify the controls while luvcview is running.
Best regards,
Laurent Pinchart
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel