Hi Filippo, On Wednesday 12 November 2008, Filippo Argiolas wrote: > On mer, 2008-11-12 at 11:38 +0100, Laurent Pinchart wrote: > > Then, and this might be the real issue here, the application calls > > VIDIOC_S_FMT but libv4l doesn't relay that to the driver. I suppose > > there's a check in the library that compares the requested format with > > the current format and returns immediately if they are identical. This > > means the camera doesn't receive any set format request between the two > > runs. I wouldn't be surprised if camera developers never expected that. > > > > As a quick workaround, could you please try the attached patch ? It > > modifies device initialisation to make sure a set format request is send > > right before starting the video stream. > > It seems you are right, with this patch applied I can run the gst-launch > pipeline plenty of times without any lock. Cheese seems fixed too > (webcam startup is a bit slow when the maximum resolution is set but itd > did always behave this way). > So where is the right place to fix this?
Probably in the driver, as what libv4l does is valid according the the V4L2 specification. I'll commit the patch (to the uvcvideo hg repository on linuxtv.org, the switch from SVN is not complete) and hope it won't disturb other cameras. I suppose the change should be pushed to Ubuntu 8.10 as well. Do you have contacts with the Ubuntu kernel maintainers ? > > I'm moving from the SVN repository on Berlios to Mercurial on > > linuxtv.org. It was easier for me yesterday to generate the patch against > > SVN. > > Thanks for making it clear. You're welcome. Best regards, Laurent Pinchart _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
