Как исправить перевёрнутый ноутбук с веб-камеры видео

Я использую Ubuntu 16.04 на ноутбуке ASUS N61JQ. Когда я использую видеозвонок с Viber или Facebook (через Chrome), моя веб-камера передает перевернутое изображение. Мне интересно, как это исправить. Поскольку у двух отдельных приложений (Viber и Chrome) есть это, я думаю, что это не специфическое приложение.

При поиске исправления в Интернете я обнаружил множество случаев, в которых даются инструкции, как это исправить для скайпа. Я запустил

sudo apt-add-repository ppa:libv4l/stable
sudo apt-get update
sudo apt-get upgrade

, который установил libv4l-0 libv4lconvert0 и перепроверил, но без исправления.

Я не следовал далее этим решениям (например, здесь ), потому что viber и chrome не являются 32-битными приложениями. Я проверил, что viber действительно 64-битный с помощью метода, предоставленного здесь .

Я включаю строки файлов, которые, как я ожидаю, я должен изменить, если я собираюсь сделать что-то похожее на исправление скайпа:

$ cat /usr/share/applications/viber.desktop | grep Exec
Exec=/opt/viber/Viber

и

$ 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

Я не уверен, как изменить эти строки и где найти пакет libv4l для 64-битных систем, чтобы реализовать обходной путь, который заставит viber и chrome работать должным образом.

В своем стремлении исправить основную проблему я начал с поиска настроек камеры / видео в системных настройках Unity «Поиск на компьютере». Но я ничего не нашел. Я также бегу:

$ ls /dev/video*
/dev/video1

, но я не знаю, что из этого получится. Также после запуска

sudo lshw -sanitize

я получаю где-то огромный вывод:

*-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

Я пытался найти драйвер из этого, но ничего не нашел. Например:

$ ll /lib/modules/4.4.0-28-generic/kernel/drivers | grep uvcvideo

ничего не возвращает. Я также запускаю:

$ 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

, который (по данным интернета) показывает состояние драйверов. Хотя не могу это интерпретировать.

Где-то должен быть файл драйвера, который я мог бы попробовать исправить, но как мне его найти?

4
задан 14 April 2017 в 01:24

8 ответов

Я продолжал исследовать на этом, и я предложил временное решение. Информации от этот ответ также помогают.

основное различие здесь - то, что приложения являются 64-разрядными, таким образом, я не мог полностью следовать за предыдущими решениями. После установки libv4l я должен был найти, что соответствующий путь для 64-разрядной версии разделяет файл для установки LD_PRELOAD переменная. После оглядывания я узнал, что мог сделать это с:

 $ dpkg -L libv4l-0 | grep compat
 /usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so

ответ Этого и Veazer помог мне завершить обходное решение путем изменения viber.desktop файла. Важный, прежде, чем внести изменения делают резервное копирование, например:

sudo cp /usr/share/applications/viber.desktop /usr/share/applications/viber.desktop-original

После этого у нас есть вся информация, мы должны изменить viber.desktop файл. Мы только должны изменить одну строку. Следующие изменения решают проблему в Viber:

$ cat /usr/share/applications/viber.desktop | grep Exec
Exec=sh -c 'export LIBV4LCONTROL_FLAGS=2 && LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so /opt/viber/Viber'

Примечание целочисленное значение 2 для инверсии камеры.

я ожидаю, что тот же подход также зафиксирует хром, но я буду работать над ним позже. Если кто-то не может помочь мне решить базовую проблему с драйверами веб-камеры.

0
ответ дан 14 April 2017 в 01:24
  • 1
    Вещь, я пытался использовать Firefox, но подсказка никогда не подходила. – trucka 3 February 2018 в 03:03

Относительно фиксации инвертировал/зеркально отразил видео веб-камеры ноутбука в основанных на Chrome/хроме браузерах - несколько дней назад я обновил ноутбук ASUS P52F к Linux Mint 18 XFCE, который на одном уровне с Ubuntu 16.04.1 теперь. Я столкнулся с "перевернутой" веб-камерой видео WebRTC на диалогах и Facebook с помощью веб-браузера Chrome только. Firefox хорошо работает. Сыр также отображает видео правильно.

После некоторого поиска с помощью Google я нашел этот отчет об ошибках . В комментарии 22 Вы видите, что 2 года назад был 0001-Use-libv4l2-for-Linux-V4L-grabber.patch, предложенный, который фиксирует поведение Chrome/хрома. Для больше затем год теперь libv4l2 добавляется к Хрому, но не включен для Linux. Вы видите целое обсуждение в потоке отчета об ошибках. Длинная история, короткая, похоже, что они активно не работают над фиксацией этого в течение почти года теперь. Однако существует некоторое ужасное обходное решение...

можно добавить Зеркальное отражение этот расширение Chrome. Это позволяет Вам зеркально отражать свое видео веб-камеры или любой другой элемент веб-страницы. Это зеркально отразит его только локально, таким образом, люди, с которыми Вы говорите через Chrome также, должны будут использовать тот же прием. Это не симпатично, но это работает... хорошо, отчасти;) После всего переключения на Firefox, возможно, лучшее и более удобное решение.Удачи!

0
ответ дан 14 April 2017 в 01:24

Установите v4l-utils пакет, который содержит v4l2-ctl утилита:

sudo apt-get install v4l-utils

Затем редактируют Ваш .profile:

nano ~/.profile

И добавляют в конец:

# Flip webcam video
v4l2-ctl -c vertical_flip=0
v4l2-ctl -c vertical_flip=1

(двойная команда является намеренной)

0
ответ дан 14 April 2017 в 01:24
  • 1
    ipython, не Ipython @wjandrea (и Вам нужна версия, совместимая с Python 2, который OP имел), – Fabby 21 February 2018 в 12:09

С тех пор версия 8 Skype и выше является в основном веб-приложением, старым приемом с libv4l, библиотека больше не будет работать. Я потерял много часов, чтобы просто узнать, что это больше не возможно.

Поэтому, так как программный продукт не существует, я пошел к аппаратным средствам один. Я купил внешняя веб-камера ..., и она работает безупречно.
, Кроме того: Я наконец понял, что встроенная камера в K-серийных ноутбуках Asus имела исключительно низкое качество. Мой внешний является sooo намного лучше. Наконец, после многих лет, мои вызывающие стороны видят меня ясно, и что еще более важно: правильно :-)

0
ответ дан 17 April 2019 в 02:06

Я использую Debian, и это - решение, которое я применил и хорошо работать:

  1. Удостоверяются, что у Вас есть пакет libv4l-0, установлен, (source:v4l-utils)
  2. Определяют местоположение файла: /usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so
    или /usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so
  3. Открывают Ваш терминал и входят ниже:

    LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so  /usr/bin/skypeforlinux
    

Это запустит Ваш Skype, Вы входите в систему, как обычно, и однажды открытый, Ваш бегунок должен быть зафиксирован.

Удачи!!

0
ответ дан 17 April 2019 в 02:06

1) утилиты Install:

$ sudo apt-get update
$ sudo apt-get install v4l-utils
$ sudo apt-get install v4l2loopback-utils

2) Загрузка v4l2loopback

3), Распаковывают 'v4l2loopback-основную' папку

4) Компиляция v4l2loopback модуль:

$ make

5) Установка:

$ sudo make install

6) Включают устройство:

$ sudo modprobe v4l2loopback exclusive_caps=1

7) Проверка, если устройство включено:

$ v4l2-ctl --list-devices

Dummy video device (0x0000) (platform:v4l2loopback-000):
  /dev/video1

USB2.0 UVC 2M WebCam: USB2.0 UV (usb-0000:00:1a.0-1.2):
  /dev/video0

8) Копия видеопоток веб-камеры к нему через ffmpeg:

$ ffmpeg -f v4l2 -i /dev/video0 -vf "vflip" -f v4l2 /dev/video1

9) Открытый Вы предпочли видеоприложение (скайп, диалоги, масштабирование...) и избранное 'Фиктивное видеоустройство',

Вы видите для получения дополнительной информации о параметрах:

https://ffmpeg.org

https://www.ostechnix.com/20-ffmpeg-commands-beginners /

https://github.com/qTox/qTox/wiki/Video

0
ответ дан 17 April 2019 в 02:06

Это работало на меня на:

  • Рабочий стол Ubuntu,
  • Ubuntu 18.04 LTS,
  • ASUS F3Eseries

Проблема:

  • Видеокамера Skype вверх тормашками
  • Версия 8.48 Skype

Твердость:

sudo nano  /usr/bin/skypeforlinux

Обновите последнюю строку.

#!/bin/sh

SCRIPT=$(readlink -f "$0")
USR_DIRECTORY=$(readlink -f $(dirname $SCRIPT)/..)

SKYPE_PATH="/usr/share/skypeforlinux/skypeforlinux"
SKYPE_LOGS="$HOME/.config/skypeforlinux/logs"

mkdir -p $SKYPE_LOGS

echo "$SKYPE_PATH"

# was this
#nohup "$SKYPE_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$SKYPE_LOGS/skype-startup.log" 2>&1 &

# changed to
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so /usr/share/skypeforlinux/skypeforlinux  > "$SKYPE_LOGS/skype-startup.log" 2>&1 &
1
ответ дан 23 November 2019 в 11:42

У меня есть ноутбук Asus K70IO с Ubuntu 16.04. Я столкнулся с этой проблемой в течение длительного времени.

С помощью LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so я исправил проблему для Skype и MS Teams, но не для Chrome.

Чтобы решить проблему вертикального флипа в Chrome, я написал короткий скрипт bash, основанный на ответе Lucio Anibal Criollo Rivera.

Я запускаю его перед открытием Chrome.

#!/bin/bash

trap ctrl_c INT

function ctrl_c() {
    sudo mv /dev/video0 /dev/video1
    sudo mv /dev/video2 /dev/video0
}

sudo modprobe v4l2loopback exclusive_caps=1

sudo mv /dev/video0 /dev/video2
sudo mv /dev/video1 /dev/video0

ffmpeg -f v4l2 -i /dev/video2 -vf "vflip" -f v4l2 /dev/video0

Он создаст фиктивную веб-камеру и установит ее как камеру по умолчанию (это улучшение, которое окончательно решило мою проблему).

Попробовал на https://iorestoacasa.work/ и больше никаких головных болей у коллег.

0
ответ дан 27 April 2020 в 07:00

Другие вопросы по тегам:

Похожие вопросы: