Comment 74 for bug 280657

Isak Frants (isakfrants) wrote :

I've used Karmic Beta to play a little bit more with my VX-1000 and I've actually got a couple of images of myself :) Motion works and 1 of 10 (or something) images taken is actually showing my entire face and not just parts of it.
This is in Virtualbox 3.0.6 in a Jaunty host with 2.6.30.5 kernel.
Karmic has got latest gspca compiled and installed. However I had to compile it with "make -i all" since "firedtv-1394.o" had errors and compilation halted. I installed it since without it the camera wasn't working as it should and since a kernel downgrade to 2.6.30.5 didn't help, maybe a newer driver would help.

It looks like Cheese, Skype, vgrabbj and motion initialize the webcamera, the first frame is being captured and drawn but then something happens and the image shown is more or less corrupt. The result varies from 100% Isak to 100% green color.

Cheese, Skype and vgrabbj throw - as shown below - errors. I've tried all programs with the "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so" switch and at least vgrabbj seems to work better with it.

isak@isak-desktop:~$ LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so cheese
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 1 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 3 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 1 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 2 more bits
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffff
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffd9
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 1 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 3 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 1 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 1 more bits
isak@isak-desktop:~$ cheese
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 2 more bits
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffff
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 3 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 1 more bits
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ff99
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 3 more bits
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffff
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 6 more bits
libv4lconvert: Error decompressing JPEG: error: more then 63 AC components (68) in huffman unit
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 3 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 3 more bits
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 2 more bits
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffd9
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffff
libv4lconvert: Error decompressing JPEG: unknown huffman code: 0000ffff
libv4lconvert: Error decompressing JPEG: fill_nbits error: need 2 more bits
isak@isak-desktop:~$

Dmesg throws something that looks like this (the digits varies from time to time):
[ 693.146036] gspca: frame overflow 32848 > 32768

isak@isak-desktop:~$ dmesg
[ 7.634085] Linux video capture interface: v2.00
[ 7.691763] gspca: main v2.7.0 registered
[ 7.718637] vboxadd: Successfully loaded version 3.0.6 (interface 0x00010004)
[ 7.849353] gspca: probing 045e:00f7
[ 7.880352] sonixj: Sonix chip id: 11
[ 7.890557] gspca: /dev/video0 created
[ 7.890596] gspca: probing 045e:00f7
[ 7.890605] gspca: intf != 0
[ 7.890629] gspca: probing 045e:00f7
[ 7.890638] gspca: intf != 0
[ 7.890986] usbcore: registered new interface driver sonixj
[ 7.891019] sonixj: registered

So the driver exists, it think it does what it should but some setting somewhere is a little bit bad.