I am using Ubuntu 16.04 on an ASUS N61JQ laptop. When I use video call from viber or facebook (through chrome) my webcam feeds an inverted image. I am wondering how to fix it. Because two separate applications (Viber and Chrome) have this I am thinking it is not application specific.
While looking for a fix in the internet I have found many cases giving instructions on how to fix this for skype. I have run
sudo apt-add-repository ppa:libv4l/stable
sudo apt-get update
sudo apt-get upgrade
which installed libv4l-0 libv4lconvert0
and retested but no fix.
I have not followed further those solutions (e.g. here ) because viber and chrome are not 32-bit applications. I did check that viber is indeed 64-bit with the method provided here.
I am including the lines of the files that I expect I should change if I were to do something similar to the skype fix:
$ cat /usr/share/applications/viber.desktop | grep Exec
Exec=/opt/viber/Viber
and
$ cat /usr/share/applications/google-chrome.desktop | grep Exec
Exec=/usr/bin/google-chrome-stable %U
Exec=/usr/bin/google-chrome-stable
Exec=/usr/bin/google-chrome-stable --incognito
I am not sure how to modify those lines and where to find libv4l package for 64-bit, in order to implement a workaround that will make viber and chrome work properly.
In my quest to fix the underlying problem I started by looking for camera/video settings in Unity's "Search Your Computer" System Settings. But I found nothing. I also run:
$ ls /dev/video*
/dev/video1
but I don't know what to make out of that result. Also after running
sudo lshw -sanitize
I get, somewhere along a huge output:
*-usb:0
description: Video
product: USB2.0 UVC 2M WebCam
vendor: USB2.0 UVC 2M WebCam
physical id: 2
bus info: usb@1:1.2
version: 2.02
serial: [REMOVED]
capabilities: usb-2.00
configuration: driver=uvcvideo maxpower=500mA speed=480Mbit/s
I tried to find the driver from this but found nothing. For example:
$ ll /lib/modules/4.4.0-28-generic/kernel/drivers | grep uvcvideo
returns nothing. I also run:
$ lsmod | grep uvcvideo
uvcvideo 90112 0
videobuf2_vmalloc 16384 1 uvcvideo
videobuf2_v4l2 28672 1 uvcvideo
videobuf2_core 36864 2 uvcvideo,videobuf2_v4l2
videodev 176128 4 uvcvideo,v4l2_common,videobuf2_core,videobuf2_v4l2
media 24576 2 uvcvideo,videodev
which (according to the internet) shows the status of the drivers. Can't interpret it though.
There should be a file of a driver somewhere that I could tinker to fix it but how do I find it?