I've attached my wo patches i've been working on to this message
1. adds support for USB suspend/resume
2. exposes webcam button presses via the linux evdev input system
Suspend/Resume support seems to work reasonably well on my own
machine, with me being able to open up mplayer suspend the machine and
when i resume mplayer is still delivering a valid video stream.
My second patch is is a combination of the two patches related to
webcam buttons in a previous post that i have combined into one as
well as modified my thread function to support suspend/resume. This
patch probably needs a bit of testing with different web cams that
have buttons. It should work ok as it is now, however i would like
some more information about which webcams are known to have buttons,
if there are any that have more then one and which bits in the general
purpose input registers(1005 and 1009) are set when a button is
pressed. You can find out that information using debugfs. Testing the
current button events cn be done using gizmod.
# sudo gizmod -g
Thsi will start gizmod in debug mode and you should see information
about BTN_0 - BTN_7 show up when pressing your webcam buttons
About the buttons,
I couldn't get gizmod compiled and there seem to be no RPMs ou there. I will
try to do it with keytouch. BTW - can you explain that for-loop - I don't
quite get how it is supposed to work (the cams use different GPIOs, don't
they?)
GWater
GWater
It also wasn't committed due to not having the checkpatch.pl errors fixed yet. Do you know what exactly is so performance hungry in regards to set_optical_parameters? Also how would removing the wrappers fix it from being called 4 times you stil need to set each of those 4 items even without the wrappers correct? though since all the wrappers do is call set_optical_parameters they should probably be removed anyways. 2009/3/25 Gray Water <grew...@googlemail.com>:
Your patch was not commited because it locked my computer up several times. Luckily I hope to have found the cause: 1. set_optical_parameters() is very performance hungry - which is ok љљ as long as it is called only once. 2. MPlayer always resets the video device ("just to make sure"). 3. Our reset function calls set_optical_parameters() 4 times љљ through wrapper functions: љљ - contrast љљ - brightness љљ - hue љљ - saturation 4. Together with the isoc_init in the usb subsystem, the buffer system љљ initializing itself and mplayer loading libv4l in userspace my computer љљ can't cope and locks up. љљ Hopefully removing the wrappers as I suggested before will fix this. љљ GWater 2009/3/25 Boris Borisov <lz1...@gmail.com>
: Your patch was not commited because it locked my computer up several times. Luckily I hope to have found the cause: 1. set_optical_parameters() is very performance hungry - which is ok љљ as long as it is called only once. 2. MPlayer always resets the video device ("just to make sure"). 3. Our reset function calls set_optical_parameters() 4 times љљ through wrapper functions: љљ - contrast љљ - brightness љљ - hue љљ - saturation 4. Together with the isoc_init in the usb subsystem, the buffer system љљ initializing itself and mplayer loading libv4l in userspace my computer љљ can't cope and locks up. љљ Hopefully removing the wrappers as I suggested before will fix this. љљ GWater 2009/3/25 Boris Borisov <lz1...@gmail.com>