Hi Jan, On Monday 16 February 2009 17:47:01 Jan Ciger wrote: > Hello Laurent, > > Laurent Pinchart wrote: > > You're right. I've attached an updated version of the patch to this > > e-mail. Could you please test it ? > > I have tested your new patch and now I am able to stream from both > cameras at 640x480 and 15fps. 30fps is still giving the "no space on > device" message when I try to open the second camera. The payload sizes > reported are 1152 bytes for 15 fps case and 2380 bytes for 30 fps. > > Is it actually possible to have two cameras on USB 2.0 bus streaming at > 30 fps and VGA resolution? It certainly does work on FireWire 400 - that > should have comparable bandwidth in YUV411 mode (have two such Unibrain > cams on my desk right now).
Short answer, I don't know. The cameras need to transfer 2380 bytes of video data per microframe. The 12 bytes headers are currently not taken into account by the driver, adding them would raise the total to 2392 bytes per microframe per camera. The smallest bandwidth alternate setting that would still allow us to stream 2380+12 bytes per microframe has an endpoint maximum packed size of 2688 bytes. This would lead to 5376 bytes per microframe for both devices. Periodic transfers can't take more than 80% of the available bandwidth. If we neglect overhead, the maximum periodic transfer length is 480e6 / 8 / 8000 * 0.8 = 6000 bytes per microframe. 5376 bytes seem to fit in the available bandwidth, but we need to take overhead into account, as well as other periodic transfers (interrupt). As the USB core rejects our request for twice 2380 bytes per microframe, I'm inclined to believe 2x 640x...@30fps YUYV can't be streamed on high-speed USB. > Other than this, the camera seems to start being usable, good job! Thanks. Unless you believe 30 fps should be supported, I'll take the header size into account and I'll commit the patch. Laurent Pinchart _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
