Как я могу горизонтально инвертировать видеовыход веб-камеры

На этот вопрос ответил Unix StackExchange: https://unix.stackexchange.com/questions/101809/how-can-i-automatically-update-my-monitor-layout-in-xfce/120945#120945 Однако, так как невозможно отметить этот вопрос как дубликат вопроса на другом сайте, я просто собираюсь скопировать ответ здесь.

Один из способов - создать udev но, поскольку я хотел что-то более портативное, у меня есть этот сценарий bash.

external-lcd.sh

#!/bin/sh
# inspired of:                                                                                            
#   http://unix.stackexchange.com/questions/4489/a-tool-for-automatically-applying-randr-configuration-   when-external-display-is-p                                                                                
#   http://ozlabs.org/~jk/docs/mergefb/                                                                   
#   http://superuser.com/questions/181517/how-to-execute-a-command-whenever-a-file-changes/181543#181543  

export MONITOR2=/sys/class/drm/card0-VGA-1/status                                                         

while inotifywait -e modify,create,delete,open,close,close_write,access $MONITOR2;                        

dmode="$(cat $MONITOR2)"                                                                                  

do                                                                                                        
    if [ "${dmode}" = disconnected ]; then                                                                
         /usr/bin/xrandr --auto                                                                           
         echo "${dmode}"                                                                                  
    elif [ "${dmode}" = connected ];then                                                                  
         /usr/bin/xrandr --output VGA1 --auto --right-of LVDS1                                            
         echo "${dmode}"                                                                                  
    else /usr/bin/xrandr --auto                                                                           
         echo "${dmode}"                                                                                  
    fi                                                                                                    
done 

Не забудьте сделать исполняемый файл (например, [F2]). Тогда просто запустите его, когда вы запустите свой DE.

Я использую это в archlinux, поэтому думаю, что он должен работать. Вы можете изменить параметры xrandr или обменять его на использование конфигураций arandr.

1
задан 25 April 2012 в 07:02

1 ответ

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

#!/bin/bash
export LIBV4LCONTROL_FLAGS=1 && LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype

Если изображение неправильно перевернуто, попробуйте разные значения для LIBV4LCONTROL_FLAGS. Для моей камеры требуется вертикальный флип, поэтому я использую «2». Я не использовал это с 11.10 до сегодняшнего дня, когда увидел ваше сообщение, но, похоже, он работает.

6
ответ дан 25 May 2018 в 12:26
  • 1
    Вау очень приятно. Оно работает. Спасибо за информацию о Flags. – Luis Alvarado♦ 25 April 2012 в 07:40

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

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