Last Updated: September 06, 2016
·
8.244K
· Tamer Shlash

Solving Skype Webcam Problem on Ubuntu 14.04x64 ASUS K52Dr

I had some troubles getting Skype to work with Ubuntu 14.04 on my K52Dr ASUS Laptop, especially the camera being upside-down and the headphone microphone making some troubles.

First let's get Skype installed:

sudo add-apt-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner"
sudo apt-get update 
sudo apt-get install skype

This will install Skype and a lot of dependencies. If you try to start Skype it will actually work, but the camera will be upside down. To fix this problem, you need to install the libv4l-0 library:

sudo apt-get install libv4l-0:i386

NOTE: You need to include the architecture i386 if your system is 64bit.

The libv4l-0 library should be installed, what we will acutally use is the file shared object /usr/lib/i386-linux-gnu/libv4l/v4l1compat.so, so check if it exists by running:

ls /usr/lib/i386-linux-gnu/libv4l/v4l1compat.so

If it just prints out the same path then the shared object file exists, and if it says "No such file or directory" the you had a problem installing the library (probably the problem is architecture-related, please leave a comment if you can't fix it).

Next you need to edit the Skype desktop shortcut to make it load the libv4l-0 library every time before launching Skype. Open it with this command

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

Then find the line that begins with Exec= and replace it with the following:

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

Save and exit. Then quit Skype (if it is running) and launch it again and you'll find the camera is no longer upside-down.

Also if you plug-in a microphone and it doesn't work, close all the programs that might be using a microphone and run the following:

sudo alsa force-reload

This should fix the problem.

2 Responses
Add your response

Thank you for the solution! It works fine for me. However, I have found a minor typo: the single quote character is missing:

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

over 1 year ago ·

My case just installed that lib with sudo apt-get install libv4l-0:i386 then modified the command as snowcore said, with single ending quote as Exec=bash -c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype %U'

Thank you.

over 1 year ago ·