Hi,

On Friday 04 November 2011 13:46:36 cheshirekow wrote:
> On Wed, 2011-11-02 at 17:38 +0100, Laurent Pinchart wrote:
> > On Saturday 29 October 2011 09:30:04 Alexey Fisher wrote:
> > > Am 28.10.2011 18:01, schrieb cheshirekow:
> > > > On Sun, 2011-10-23 at 13:50 -0400, cheshirekow wrote:
> > > >> On 10/22/2011 03:16 AM, Alexey Fisher wrote:
> > > >>> Can you please attach the output of this command:
> > > >>> lsusb -vd 10f1:1a26>  lsusb_dump
> > > >> 
> > > >> Sure. The dump file is attached.
> > > >> 
> > > >> Thanks!
> > > > 
> > > > Has anyone by chance managed to take a look at this lsusb dump?
> > > > 
> > > > To recap:
> > > > the HP Slate has two integrated we cams: One forward facing for video
> > > > calls, and one higher-resolution rear-facing for snapping photos.
> > > > There appears to be a single controller for both cameras. In linux,
> > > > lsusb only shows one webcam device. In windows, the device manager
> > > > also shows only one device for the webcam. However, in windows
> > > > applications that use the webcam (i.e. HP's webcam application, and
> > > > in skype) I'm able to select which one to use as an option. In
> > > > linux, there is only one video device, /dev/video0.
> > > > 
> > > > There does not appear to be any control available from uvcdynctrl or
> > > > within vlc to select which physical camera to use. I've tried setting
> > > > the resolution in vlc when I use the "open capture device" menu item.
> > > > I know that the forward facing camera is VGA so I tried specifying
> > > > 640x480, but the result is that it shows the rear-camera stream at a
> > > > low resolution, rather then showing the forward-camera stream.
> > > > 
> > > > I'd appreciate any suggestions on how to get the forward-facing
> > > > camera to work in linux (for skype/google video calls). Also, if it
> > > > is clear that this facility is not available in UVC and that there
> > > > is no way this is possilble, that would also be useful information.
> > > > 
> > > > Thanks again
> > > 
> > > Hi,
> > > 
> > > suddenly i do not see any control to switch the sensor. I assume there
> > > can be two variants how it may work:
> > > 1. vendor specific extension unit for uvc
> > > 2. or usb mode switcher
> > > 
> > > if both sensors have same capabilities, the 1. make sense. If not then
> > > second. Because this usb dump report settings only for one sensor.
> > > 
> > > For 1. it will be probably possible to control it with libwebcam. For
> > > 2. it should be possible to control it with some kind of
> > > usb_modeswitch (i'm not up to date).
> > > 
> > > To find what it is actually, there can be fallowing options:
> > > 1. sniff usb traffic
> > > 2. see if the windows driver has some advise for us
> > > 3. unscrew your laptop and find what control use your webcam.
> > 
> > My guess is that the camera uses either an extension unit (XU) control or
> > a vendor-specific request to select between the two sensors (which is
> > very unfortunate, given that the UVC specification has explicit support
> > for dual- sensor cameras, and I would have liked to test that code :-)).
> 
> Thanks for the information. It is unfortunate that the camera doesn't
> take advantage of what is already in the spec.
> 
> > Let's start with the XU control. I've attached a patch for the yavta test
> > application (http://git.ideasonboard.org/?p=yavta.git;a=summary) to this
> > e- mail. Could you please apply it, compile the application with
> 
> Ok sure. I downloaded the test, applied the patch, and ran it with the
> following output:
> 
> Device /dev/video0 opened.
> Device `HP Webcam' on `usb-0000:00:1d.7-8' is a video capture device.
> XU control 0: info GET SET (0x03) 2 bytes
> XU control 1: info GET SET (0x03) 64 bytes
> XU control 2: info GET SET (0x03) 64 bytes
> XU control 3: info GET SET (0x03) 2 bytes
> XU control 4: info GET SET (0x03) 2 bytes
> XU control 5: info GET SET (0x03) 2 bytes
> XU control 6: info GET SET (0x03) 2 bytes
> XU control 7: info GET SET (0x03) 2 bytes
> Video format: YUYV (56595559) 640x480 buffer size 614400

Those XU controls seem to be quite generic, and are found in other webcams 
that use the same chipset. They probably allow direct access to the sensor and 
bridge registers.

More information will be needed to find out how to select the sensor. I'm 
afraid USB sniffing in windows seems to be unavoidable. I will need a trace of 
all USB control requests (if your USB sniffer allows filtering out the 
isochronous transfers, please do so) sent to the device when you switch from 
one sensor to the other one.

-- 
Regards,

Laurent Pinchart
_______________________________________________
Linux-uvc-devel mailing list
Linux-uvc-devel@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to