Переключение мониторов при включенном 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, ожидает закрытия пара, деактивирует телевизор, возвращает звук
Другие вопросы по тегам