Re: [Linux-uvc-devel] Problem with webcam: 18ec:3288 (Arkmikro chipset)
Linux UVC driver and tools
Brought to you by:
pinchartl
From: Laurent P. <lau...@sk...> - 2009-01-04 01:35:22
|
On Monday 29 December 2008, K wrote: > Hi Laurent, > > I tried the quirks=2 settings. The loading looks better but Motion returns > a 640x480 picture whose content is completely black. It seems the Jpeg > format used by this webcam is not supported. Ok, here we go: > > I tried all of this with "echo 2 > ... quirks" > > dmesg: > > uvcvideo 4-2:1.0: usb_probe_interface > uvcvideo 4-2:1.0: usb_probe_interface - got id > uvcvideo: Found UVC 1.00 device USB2.0 PC CAMERA (18ec:3288) > uvcvideo: Forcing device quirks 0x2 by module parameter for testing > purpose. uvcvideo: Please report required quirks to the linux-uvc-devel > mailing list. uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. > Enabling workaround. > input: USB2.0 PC CAMERA as /class/input/input28 > uhci_hcd 0000:00:09.1: reserve dev 7 ep81-INT, period 8, phase 4, 23 us > usb 4-2: adding 4-2:1.1 (config #1, interface 1) > usb 4-2:1.1: uevent > drivers/usb/core/inode.c: creating file '007' > usb 4-2: New USB device found, idVendor=18ec, idProduct=3288 > usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 > usb 4-2: Product: USB2.0 PC CAMERA > usb 4-2: Manufacturer: ARKMICRO > > Motion complains about the Jpeg format. I captured the binary stream of a > single frame using "./capture_example -d /dev/video2 -c 1 -o > vid2.dump". > This file has been attached to this mail, watching with an hexa editor, it > actually doesn't look like Jpeg as there is not 'JFIF' string inside. If you skip the first 13 bytes (that surprisingly look like a possibly valid UVC header), the remaining data make a valid JPEG frame except for the lack of JFIF marker. I can see why applications would have trouble decoding that. Could you please capture a few consecutive frames and send them to me ? I'd like to have a look at the header. > [1] Thread 1 started > [1] cap.driver: "uvcvideo" > [1] cap.card: "USB2.0 PC CAMERA" > [1] cap.bus_info: "0000:00:09.1" > [1] cap.capabilities=0x04000001 > [1] - VIDEO_CAPTURE > [1] - STREAMING > [1] Supported palettes: > [1] 0: MJPG (MJPEG) > [1] index_format 2 Test palette MJPG (640x480) > [1] Using palette MJPG (640x480) bytesperlines 0 sizeimage 614400 > colorspace 00000000 > [1] VIDIOC_G_JPEGCOMP not supported but it should be (does your webcam > driver support this ioctl?) > [1] found control 0x00980900, "Brightness", range 0,255 > [1] "Brightness", default 123, current 123 > [1] found control 0x00980901, "Contrast", range 0,255 > [1] "Contrast", default 160, current 160 > [1] found control 0x00980902, "Saturation", range 0,255 > [1] "Saturation", default 140, current 140 > [1] found control 0x00980903, "Hue", range -128,127 > [1] "Hue", default 0, current 0 > [1] found control 0x00980910, "Gamma", range 1,16 > [1] "Gamma", default 8, current 8 > [1] found control 0x00980913, "Gain", range 0,65535 > [1] "Gain", default 16, current 0 > [1] mmap information: > [1] frames=4 > [1] 0 length=614400 > [1] 1 length=614400 > [1] 2 length=614400 > [1] 3 length=614400 > [1] Using V4L2 > [1] Resizing pre_capture buffer to 1 items > Not a JPEG file: starts with 0xb2 0x10 > [1] Resizing pre_capture buffer to 3 items > Not a JPEG file: starts with 0x55 0x9b > [1] Started stream webcam server in port 8082 > Corrupt JPEG data: 1 extraneous bytes before marker 0xd9 Best regards, Laurent Pinchart |