Переключение мониторов при включенном Steam Controller
У меня есть Steam Link, но в некоторых играх FPS задержка ввода раздражает, поэтому я подключил кабель HDMI к телевизору с помощью кабеля HDMI. Когда я сижу перед телевизором, я хочу включить SC и запустить Big Picture на телевизоре. Дисплей моего ПК и телевизор имеют разные разрешения, поэтому я не хочу, чтобы экран телевизора постоянно отображался.
Поэтому я ищу способ включить отображение на экране телевизора (возможно, с помощью сценария xrandr bash). Моя проблема сейчас заключается в следующем:
Как я могу запустить скрипт при включенном контроллере Steam?
Я ничего не нашел в Google и понятия не имею, с чего начать поиск. Возможно ли это сделать с помощью правила udev?
Бонус: может ли HDMI дополнительно запрашивать фокусировку телевизора, когда на телевизоре выбран другой канал / вход?
1 ответ
Я закончил тем, что использовал этот автономный драйвер Steam для контроллера Python: https://github.com/ynsta/steamcontroller
Есть несколько примеров скриптов о том, как получить события кнопок и настроить обратный вызов. Я просто настроил обратный вызов для кнопки "Домой" и запускаю Steam оттуда. Единственная проблема в том, что этот скрипт не может быть запущен во время работы steam, потому что автономный драйвер будет перехватывать все события контроллера, но я хотел, чтобы steam управлял контроллером (просто запустите steam и закройте скрипт).
Так что я:
- main.py: контролирует все сценарии, ждет результата button_callback.py, затем запускает start_steam.py, когда он завершается, перезапустите button_callback.py
- button_callback.py: ждет нажатия кнопки home, затем выходит
- start_steam.py: активирует телевизор через xrandr, переключает приемник звука через pacmd на hdmi, ожидает закрытия пара, деактивирует телевизор, возвращает звук