На ноутбуках ASUS, при установке стандартных драйверов на вебкамеру, изображение снятое камерой почему-то перевернутое.
Почему?
Ответ прост: китайцы просто не могут различить где у камеры верх, а где низ.
Решение этой проблемы я вижу двумя способами:
1. Собственно, разобрать ноутбук и перевернуть камеру (этот метод нам не подходит, так как нужно разбирать матрицу экрана)
2. Установить нужный драйвер или программу, который умеет переворачивать изображение
На Windows, как правило при скачивании драйвера с официального сайта asus эта проблема решается сама собой.
В этой заметке, я опишу решение данной проблемы для Linux.
1. Убедитесь что ваша камера работает (skype, cheese)
2. Если изображение перевернуто, идем дальше
3. Нам нужна библиотека под названием Video4Linux
3.1 Добавим репозиторий libv4l-0:
# 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
3.2 Установим нужные ключи:
$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C3FFB4AA
$ sudo apt-get install libv4l-0
В дальнейшем скрипт можно преобразовать и для другой программы, но вместо skype, добавить название программы, например:
Почему?
Ответ прост: китайцы просто не могут различить где у камеры верх, а где низ.
Решение этой проблемы я вижу двумя способами:
1. Собственно, разобрать ноутбук и перевернуть камеру (этот метод нам не подходит, так как нужно разбирать матрицу экрана)
2. Установить нужный драйвер или программу, который умеет переворачивать изображение
На Windows, как правило при скачивании драйвера с официального сайта asus эта проблема решается сама собой.
В этой заметке, я опишу решение данной проблемы для Linux.
1. Убедитесь что ваша камера работает (skype, cheese)
2. Если изображение перевернуто, идем дальше
3. Нам нужна библиотека под названием Video4Linux
3.1 Добавим репозиторий libv4l-0:
# 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
3.2 Установим нужные ключи:
$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C3FFB4AA
3.3 Обновим список данных:
$ sudo apt-get update
3.4 Установим libv4l-0:$ sudo apt-get install libv4l-0
4. Создадим скрипт в любом удобном для вас месте (например /home/user/.skype.sh) со следующим содержимым:
#!/bin/sh
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype
Этот скрипт будет запускать skype с параметрами vertical flip (отражение по вертикали).
#!/bin/sh
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype
либо
#!/bin/sh
LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l2convert.so skype
Разница в спецификации дистрибутива и версии libv4l.LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l2convert.so skype
Этот скрипт будет запускать skype с параметрами vertical flip (отражение по вертикали).
5. Делаем скрипт исполняемым:
$ chmod +x /home/user/.skype.sh
6. Находим ярлык skype и в свойствах ярлыка, в разделе "команда" прописываем путь к исполняемому скрипту:
/home/user/.skype.sh %U
7. Запускаем skypeВ дальнейшем скрипт можно преобразовать и для другой программы, но вместо skype, добавить название программы, например:
#!/bin/sh
LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l2convert.so cheese
LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l2convert.so cheese
3 комментария:
Спасибо, помогло!
Премного благодарен за статью. Помогло
не работает на линукс минт asus k52f
Отправить комментарий