May 12, 2010

How To Fix Webcam Problem In Skype

You have a webcam that don't work in Skype but it works fine other apps like Cheese?

This is problem to a lot of people, i have two webcams and both are not working good with Skype.

To fix this you need to have libv4l-0 installed and load it with Skype.

If you had install ubuntu restricted extras you should have installed libv4l-0,

If not then go to terminal and type:

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

Now if you want to start Skype just run this in terminal:
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype
For 64bit systems:
LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype
You can use this on other apps where you have webcam problem, just replace skype with application name.

To not start Skype every time from terminal you need to change launcher.

To edit launcher right click on Applications and click edit menus.


There navigate to Internet, right click on Skype and click Properties.

Replace the Command with:
bash -c 'LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype'
For 64bit systems:
 bash -c 'LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype'


Thanks to kaspin on sending tip how to edit launcher.

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/libv4l/v4l1compat.so skype'
For 64bit systems:
 Exec=bash -c 'LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype'
For Ubuntu 11.10

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


5 comments:

Anonymous said...

to me there was evrthng installed. so i just started skype with "#!/bin/sh
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype1"
than i made a script so it'll start evrtime now. Thank a lot....

kaspin said...

"LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype" worked fine (Ubuntu 10.04, Creative webcam) where other suggested solutions failed. As a newishbie, could you please tell me if there is any way I can attach this instruction to a logo which I could click on to open Skpe in the future.
Thanks a lot, Kaspin

kaspin said...

The problem with the above solution is that you have to input the instruction every time you open Skype. A permanent solution (from https://help.ubunbtu.com/community/Webcam) is to go to System/Preferences/Main Menu/ Internet/Skype/Properties, and replace the Command with
bash -c 'LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype'. For 64-bit machines replace "lib" by "lib32" in the command.
kaspin

love2spooge said...

Thanks kaspin, i edited post.

Anonymous said...

Works for Skype on Ubuntu 9.10 and Logitech Quickcam Pro 9000.

Post a Comment