So its calling set=optical five times when you change saturation via
sysfs? I haven:t been able to get it to do that for me, wonder whats
different.

Also boris do you have a cleanedup version of the atch that has the
checkpatch.pl errors fixed?

On Sun, Mar 22, 2009 at 3:37 PM, Josua Grawitter
<[email protected]> wrote:
> Am Sonntag 22 März 2009 14:34:08 schrieb Boris Borisov:
>> Josua Grawitter wrote:
>> > Am Samstag 21 Mдrz 2009 08:23:26 schrieb Brian Johnson:
>> >> Ok both i've submitted a patch for both vlc and amsn to their
>> >> respective devel mailing lists in regards to this issue i'll do kde's
>> >> tomorrow sometime.
>> >>
>> >> The reason i originally did tie AWB to the red/blue gains is that
>> >> logically that is how you would expect it to work. If i have the
>> >> driver managing my white balance i would also expect the color gains
>> >> to be unavailable. Even if yes technically because one is using the
>> >> sensor and the other the bridge you can modify the color gains even
>> >> when AWB is in effect.  It would also be conceivable since we get AWB
>> >> window data back from the bridge to write a similar function to the
>> >> software based ae function to implement whitebalanace calculations for
>> >> sensors that don't support whitebalance such as the micron sensors
>> >> without an IFP. If we ever did this then at least for some sensors the
>> >> AWB and color gains would be connected.
>> >>
>> >> Hmm i don't get a lockup on my system when hue drops below 40. does it
>> >> still happen if you set it using sysfs to less then 40?
>> >>
>> >> As for the wrapper functions yes we should probably be able to get rid
>> >> of them just fine. The only real reason i could think of to keep them
>> >> is that a function name like set_contrast is somewhat more obvious
>> >> then set_optical_parameters, but i don't think that by itself should
>> >> justify keeping the them either.
>> >>
>> >> On Fri, Mar 20, 2009 at 4:22 PM, Josua Grawitter
>> >>
>> >> <[email protected]> wrote:
>> >>> Am Freitag 20 Mдrz 2009 10:05:06 schrieb Brian Johnson:
>> >>>> Ok just took a quick look at amsn source and yes the code for setting
>> >>>> an attribute is definitely broken it checks the value tht you are
>> >>>> setting for a range of 0 - 65535. this is definitely wrong as av4l2
>> >>>> control value is first of all signed and second of all it should be
>> >>>> using its defined min/max values anyways. I attached a quick patch
>> >>>> that fixes this issue with amsn in case anyone is interested.
>> >>>>
>> >>>> Also kopete seems to have two issues one it appears it also doesn't
>> >>>> bother to consider that a control value can be negative and kopete
>> >>>> actually natively knows bayer format whcih unless i use somethign like
>> >>>> libv4l it will use by default. and none of the controls that use our
>> >>>> bridges color matrix (hue/sat/contrast/brightness) work when using
>> >>>> bayer since it is not being converted to YUV. this is one reason you
>> >>>> should not use bayer unless there is no other choice.
>> >>>>
>> >>>> Also I'm of the mind that we should not modify our driver in order to
>> >>>> fix broken applications. The more correct thing will be to patch the
>> >>>> applications to properly follow v4l2 specs. In this case allow
>> >>>> controls with negative values.
>> >>>
>> >>> I just did some testing:
>> >>> 1. Somehow green/blue gain are still locked if AWB is enabled. I
>> >>> thought my patch fixed that but apparently it didn't.
>> >>> 2. Saturation, hue, etc work as expected, however ...
>> >>> 3. If saturation is set to less than circa 40 my computer locks up. I
>> >>> suspect the framerate drops and the buffer is unhappy but I can't tell
>> >>> exactly because there is no kernel-oops and dmesg looks fine after I
>> >>> reboot.
>> >>> 4. Why do we keep a wrapper function which calls wrapper functions
>> >>> through a set of pointers which in the end all end up with the same
>> >>> functions - for hue, saturation, blue/red gain, brightness, contrast
>> >>> and gamma there is only the bridge functions so why not call them
>> >>> directly? And why not call "sn9c20x_set_optical_parameters()" directly?
>> >>> I think clearing that mess will make the module and the struct
>> >>> usb_sn9c20x at least a bit smaller and also the code clearer. I'll post
>> >>> a patch once the style isses are fixed.
>> >>>
>> >>> GWater
>> >
>> > yes, the computer locks up whether I set saturation via v4l-ioctl or
>> > sysfs.
>> >
>> > Here's what dmesg tells me:
>> > usb 1-4: new high speed USB device using ehci_hcd and address 4
>> > usb 1-4: configuration #1 chosen from 1 choice
>> > usb 1-4: New USB device found, idVendor=0c45, idProduct=624e
>> > usb 1-4: New USB device strings: Mfr=0, Product=1, SerialNumber=0
>> > usb 1-4: Product: USB20 Camera
>> > sn9c20x: SN9C20X USB 2.0 Webcam - 0C45:624E plugged-in.
>> > sn9c20x: Detected SOI968 Sensor.
>> > sn9c20x: Webcam device 0C45:624E is now controlling video device
>> > /dev/video0 sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Using yuv420 output format
>> > usbcore: registered new interface driver sn9c20x
>> > sn9c20x: SN9C20x USB 2.0 Webcam Driver v2009.01 loaded
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> > sn9c20x: Hue Value: 180
>> > sn9c20x: Hue vsettings.hue: 180
>> >
>> > Note: I set saturation only once. Still it seems optical_parameters was
>> > called 5 times.
>> >
>> > GWater
>>
>> Maybe the problem is in userland program. With amsn is call not
>> immediately after slide the sliders - that provoke a little delay on
>> camera reaction.
>>
>> > My Konsole doesn't delay - I used sysfs.
>
> GWater
>

--~--~---------~--~----~------------~-------~--~----~
Lets make microdia webcams plug'n play, (currently plug'n pray)
To post to this group, send email to [email protected]
Visit us online https://groups.google.com/group/microdia
-~----------~----~----~----~------~----~------~--~---

Reply via email to