How do I install the driver for a Microsoft Lifecam VX-3000?

I have looked all over Ask Ubuntu and can't find any way to install the driver easily. I will be fine by doing it through terminal if that is how to do it.


Driver

The driver for this webcam is already included, and it should work out of the box. You can check if it does with cheese.

The kernel module for this webcam is called gspca_sonixj. You can check if it's loaded with:

lsmod | grep sonixj

Skype

Testing if it works

If the webcam does work in Cheese but not in Skype, that's because this webcam can only output JPEG compressed frames which Skype cannot handle. To fix this, the proposed solution of the other answers is already almost correct.


Start Skype from a Terminal window by running:

LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so skype

or if you're on a 64bit system (if output of uname -m is x86_64):

LD_PRELOAD=/usr/lib32/libv4l/v4l2convert.so skype

In Ubuntu 11.10 the path changed, so for 32bit use

LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l2convert.so skype

and for 64bit use

LD_PRELOAD=/usr/lib32/libv4l/v4l2convert.so skype

In Ubuntu 12.04 the path for 64bit changed again, so use

LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so skype

For 32bit see above.

Making it permanent

If this works, you can change the Menu entry similar to how @demua suggests doing:

  • copy /usr/share/applications/skype.desktop to a file in your Profile to prevent future updates from undoing your changes. This can be done in a Terminal with:

    mkdir -p $HOME/.local/share/applications
    cp /usr/share/applications/skype.desktop $HOME/.local/share/applications/
    
  • open the newly created $HOME/.local/share/applications/skype.desktop in an editor and change the line

     Exec=skype
    

    to something like

     Exec=env LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so skype
    

    Of course you have to use the same path here as above when testing.


The workaround for Skype also works for other legacy applications and other webcams that only support unusual formats. Tested with:

  • Microsoft VX-3000
  • Hercules Deluxe Optical Glass

Your webcam should work out of the box in 11.10. What are the outputs of these commands?

lsusb | grep LifeCam
sudo lsmod | grep v4l1_compat

Make sure video for linux is installed

#32-bit
sudo apt-get install libv4l-0

#64-bit
sudo apt-get install libv4l-0 lib32v4l-0

Skype may not detect the camera however. To solve that issue, force skype to load the v4l library like so:

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

Skype

http://www.ubunturoot.com/2010/05/how-to-fix-webcam-problem-in-skype.html

uninstall libavcodec53 and

install xubuntu restricted extras

Then commands

echo -e "\n# libv4l PPA\ndeb http://ppa.launchpad.net/libv4l/ppa/ubuntu `lsb_release -c | awk '{print $2}'` main" | sudo tee -a /etc/apt/sources.list

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C3FFB4AA

sudo apt-get update

sudo apt-get install libv4l-0
    LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype

bash -c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype'

First trz to edit in the launcher the command and put

bash -c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype

worked for me

If you are using Ubuntu 11.04 and Unity or other desktop environment, Menu Editor is not available. To edit launcher in Unity you need to edit Skype.desktop

So start terminal and type:

sudo gedit /usr/share/applications/skype.desktop

Now edit in line 4, replace;

Exec=skype 

with:

Exec=bash -c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype'