Hi Felix, On Wednesday 12 September 2007, Felix Domke wrote: > Laurent Pinchart wrote: > >> i've spent some time on the Microsoft Xbox Live Vision cam (it's pretty > >> cheap, USB 2.0, nearly uvc 1.0 compliant, has a pretty good image > >> quality, manual focus, allegedly a 1280x960 sensor (i haven't checked, > >> it might just upscale, but i don't think so), and supports MJPG and > >> YUYV). > > > > *nearly* UVC compliant ? *sigh*... Can't they test their hardware with > > Linux ? :-) > > *g* > > Well, given that the thing is designed for a gaming console, I consider > it as an advancement already that it a.) doesn't have a proprietary > connector, and b.) at least tries to follow SOME standard, and c.) > doesn't try to put all the magic into the host. > > > SET_INTERFACE shouldn't be required. Upon being plugged in, the webcam > > should select the default alternate setting. > > here is a lsusb -v: > > http://tmb.elitedvb.net/lsusb_045e0294
Thanks. > What's with that "Xbox Security Method 3" interface? So that's not the > default interface? (We can/should totally ignore that interface, it's > only an optional authentication between the host and the device. I just > want to be sure that this is not the default interface.) There is no such thing as a default interface. USB devices have several interfaces, each of them with one or more alternate setting. Alternate setting 0 should be selected by default for each interface. usb_set_interface() selects an alternate setting for a given interface. The "Xbox Security Method 3" interface isn't even seen by the Linux UVC driver. > >> b.) The cam requires about ~3sec time after the initial SET_INTERFACE. > > > > Now this is bad news. What happens if you query controls during those > > ~3sec ? Those the webcam timeout but stay functional, or does it crash ? > > It stays functional. It just responds with NAKs, and then, after it has > initialized itself, it answers (unless, of course, the transaction has > been cancelled). Ok. > > I'll test the SET_INTERFACE part and commit it soon. Regarding the > > timeouts, what happens if you modify the streaming timeout only ? > > I can currently not test it, because the cam is operating at a remote > place (and I don't want to risk a crash), but I can this test tomorrow. > My guess it that it will work, because the streaming command is done first. > > I still vote for a dummy transaction after the SET_INTERFACE with a long > timeout, to make sure the cam has initialized itself. After that the > short timeout should suffice. Just incrementing the timeout is a bad > thing, i'd say. That's my opinion too. I'll have to test that with different cameras to make sure they don't crash or somehow misbehave. Best regards, Laurent Pinchart _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
