On Thursday 06 December 2007, Philipp Kolmann wrote: > Hi Laurent, > > thanks for looking into this issue. > > On Wed, Dec 05, 2007 at 11:31:58PM +0100, Laurent Pinchart wrote: > > Hi Philipp, > > > > On Tuesday 04 December 2007, Philipp Kolmann wrote: > > > Hi, > > > > > > I have a Logitech QuickCam 9000 which works really nice during daylight > > > with Skype 2.0 Beta. > > > > > > Skype starts the Video-Calls with 15fps settings (dwFrameInterval: > > > 666666) wich works nicely. After some time, it changes the fps to 30fps > > > (dwFrameInterval: 333333) and the cam locks up. > > > > Changing the frame rate from 15fps to 30fps would exceed the allocated > > bus bandwidth. That's not allowed by the UVC spec. Changing from 30fps to > > 15fps might be legal but I'm not sure about it. > > It works for me with good light. Not in bad light conditions tough. > > > > The only possibility to solve this issue is to unplug the cam > > > completely from the computer. > > > > The device shouldn't deadlock, that might be a device bug. > > > > > I have added a few lines of debug code to the uvc module I will attach > > > to this report. Additional I have attached the output of these debug > > > lines to syslog. > > > > > > Maybe you have an idea, what's going wrong here. Skype told me to get > > > in touch with you, since it works during daylight but not with bad > > > light during the night. > > > > > > If you would have any patches to test, I am more then willing to test > > > them. > > > > > > I hope you can help me with this issue, > > > > The application should stop video streaming before changing the frame > > rate. Could you add debug messages to VIDIOC_STREAMOFF and see if it gets > > called before changing the frame rate ? > > I added debug output to VIDIOC_STREAMON and VIDIOC_STREAMOFF. > VIDIOC_STREAMON is called after all initial setup is done, but then no > VIDIOC_STREAMOFF before changes. > > > If it doesn't, I'm not sure who is to blame. V4L2 doesn't clearly state > > if changing the frame rate during video streaming is allowed or not. > > > > I will raise the issue on the video4linux mailing list if you confirm > > that Skype doesn't stop streaming before changing the frame rate. > > Attached find a new syslog with the new debugging in it.
For some unknown reason, the camera crashes when requesting a higher frame rate in low light conditions while streaming. Raising the frame rate while streaming is probably illegal. It would raise the bandwidth, which requires bandwidth renegotiation when using isochronous transfers. As we can't fix the webcam itself, there are two main solutions. - The uvcvideo driver could stop streaming, renegotiate the parameters and restart streaming. The webcam might still crash as the cause of the crash is not understood. - Skype could stop streaming, change the frame rate and restart streaming. Ditto about the webcam crash. It would be interesting to write a small application to stress-test different use cases and see what works before making modifications to Skype or to the driver. Best regards, Laurent Pinchart _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
