So since I installed 14.04 an old issue re-arises: In cheese my webcam works fine, in skype its upside down. Before you could fix that by:

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

but now you can't, as I understand, because you end up here:

/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so

which results in:

ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.

Now it was suggested to use the 32bit version in

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

but there is only the one version in x86_64, I searched my whole system, nothing... How is this fixable? Any help highly appreciated!

share|improve this question
    
I worked it out! Combining the answer here: askubuntu.com/questions/315643/ld-preload-fails-with-skype?l‌​q=1 and the answer here: askubuntu.com/questions/463337/asus-k50ij-webcam-problem it worked for me! Thanks! – ski May 18 '14 at 16:47
up vote 1 down vote accepted

I found a fix for this problem:

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

Did the trick for my Ubuntu 14.04 64bit. If you haven't got the 32bit library install it by:

sudo apt-get install libv4l-dev

I hope that works for you too.

Regards pecuna

share|improve this answer
    
Thank you very much for your reply, I installed libv4l-dev but there is still no folder libv4l in /usr/lib/i386-linux-gnu/ how did you make it appear? – ski May 18 '14 at 15:22
    
I don't know. I just install libv4l-dev and nothing else. I should have done something before that to have it :( – pecuna May 21 '14 at 22:51

You have to install 32 bit (i386) version of libv4l-0:

sudo apt-get install -y libv4l-0:i386

then start Skype with this command:

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

or modify the Exec command in /usr/share/applications/skype.desktop

share|improve this answer
    
This is the same as askubuntu.com/a/463443/158442. – muru Oct 29 '14 at 15:19
    
@muru The other answer says "libv4l-dev" whereas this one says "libv4l-0:i386". Could this be the missing piece to solve the 32-bit problem? – MadMike Oct 29 '14 at 15:40
    
@MadMike ah, yes. You're right: packages.ubuntu.com/… The poster of the accepted answer probably already had it installed. – muru Oct 29 '14 at 15:48

A little nice extension to the solution:

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

and add the above mentioned add (LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so) to the line

Exec=env  PULSE_LATENCY_MSEC=60 skype %U

so that this line is

Exec=env LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so PULSE_LATENCY_MSEC=60 skype %U

Afterwards the skype icon in the dock does also work.

share|improve this answer

Had the same problem with vertically flipped camera.

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

didn't help. But after I installed Qt V4l2 test utility (qv4l2), and switching "Vertical flip" option in User controls tab off and back on (it was on by default), afterwards starting Skype, the camera behaved normally. So I used command line control utility v4l2-ctl to set the vertical_flip option right before skype starts. Created a new launcher script for skype:

#!/bin/bash
v4l2-ctl -c vertical_flip=0
v4l2-ctl -c vertical_flip=1
sleep 5
skype %U

and changed the desktop launcher for skype to execute this script (or if you want to run skype when your session starts, you can create an entry for it in Settings / Session and Startup. P.S.: Not sure why 5 sec sleep is required, but it didn't work for me without it :-).

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.