Запретить отключение экрана при просмотре видео в XBMC [закрыто]

В 12.04 экран никогда не переходил в спящий режим при просмотре видео в XBMC. Однако после обновления до 12.10 и без изменения настроек это происходит.

Есть ли способ предотвратить автоматическое отключение экрана во время воспроизведения видео в XBMC, не отключая отключение экрана в другое время?

В идеале, существует ли для этого XBMC специальный параметр? Была ли это особенность XBMC, которая теперь как-то не работает в 12.10, или она изменилась из-за других изменений в Ubuntu, отличных от XBMC?

8
задан 17 January 2013 в 02:20

5 ответов

Очень простое решение является кофеином. Кофеин является 'приложением строки состояния, которое в состоянии временно предотвратить активацию и экранной заставки и "сна" powersaving режим'.

Включение его так же легко как нажатие на индикатор строки состояния, но можно также настроить его таким образом, что это автоматически отключает экранную заставку при запуске xbmc. См. снимок экрана ниже

enter image description here

При использовании Gnome, можно установить расширение гнома кофеина. В противном случае для Ubuntu до 15,04 (ярких) можно установить кофеин от панели запуска ppa:

sudo add-apt-repository ppa:caffeine-developers/ppa
sudo apt-get update
sudo apt-get install caffeine

от 15,10 вперед можно установить без ppa

sudo apt install caffeine

Приятного отдыха!

8
ответ дан 17 January 2013 в 02:20

Все эти решения отключают заставку при каждом запуске xbmc, а не только при воспроизведении видео. Поскольку у него есть встроенный сервер UPnP, я оставляю его работающим круглосуточно, но я хочу отключить заставку только при локальном воспроизведении видео.

Вот что я придумал: включить поддержку http и JSON в XBMC. Затем сделайте запрос, чтобы узнать, активен игрок или нет. Если это так, введите команду xscreensaver -disable (вы можете настроить это для вашей заставки). Если нет, ничего не делай. Проверка каждые 50 секунд - это достаточно для меня.

Код Python здесь: http://sumnerhayes.com/software/

0
ответ дан 17 January 2013 в 02:20

Я использую их в ~ / bin /:

#!/bin/bash

# ssoff - disable screensaver and power mgmt
pkill xscreensaver
xset s 0
xset -dpms

#!/bin/bash

# sson - activate screen and power mgmt
xscreensaver > /dev/null 2>&1 &
xset s 100
xset +dpms

, конечно, вы можете сделать значок для их запуска, но я также не использую XBMC

0
ответ дан 17 January 2013 в 02:20

Это, похоже, ошибка в пакете XBMC для ubuntu

Я не уверен, какую версию вы установили, но версия из PPA *, похоже, не есть в моей системе. Это может быть потому, что у меня разные настройки в Ubuntu, поэтому ваш milleage может отличаться.

Если вы этого не сделаете, вы можете попробовать использовать XBMC в качестве сеанса (на экране входа в систему нажмите логотип ubuntu рядом с вашим именем и выберите XBMC. Вы не получите единство, а только полноэкранный XMBC). Настройки для единства не будут там, так что вам может повезти, если у вас нет заставки. (Если у вас установлен автоматический вход в систему, вам нужно нажать logout, чтобы открыть экран входа в систему)

* https://launchpad.net/~team-xbmc/+archive/ppa

0
ответ дан 17 January 2013 в 02:20

Мы можем создать сценарий оболочки, который будет имитировать движение мыши с заданным интервалом (только во время работы XBMC) и предотвращать выключение экрана.

Выполните следующие действия:

  1. Установите необходимые инструменты:

    Нам потребуется xdotool Install xdotool ] чтобы сделать эту работу для нас. Установите его, выполнив следующую команду в терминале:

    sudo apt-get install xdotool
    
  2. Сценарий:

    Сохраните следующий сценарий в любом месте на вашем ПК. Вы можете изменить sleep_period в соответствии с вашими потребностями, я установил его на 60 секунд. Скрипт проверяет, запущен ли процесс под названием xbmc.bin; и если он его находит, то он зацикливается, имитируя движение мыши, пока процесс активен. В противном случае снова проверяет процесс после указанного интервала.

    #!/usr/bin/env bash
    
    sleep_period=60s #seconds
    
    mouse_x=0
    mouse_y=0
    
    movement_px=2
      mouse_x=$(xdotool getmouselocation 2>/dev/null |  sed -e 's/x://' -e 's/y//' -e 's/ screen:.*$//' -e 's/ //' | awk 'BEGIN {FS=":"} {print $1}')
      mouse_y=$(xdotool getmouselocation 2>/dev/null |  sed -e 's/x://' -e 's/y//' -e 's/ screen:.*$//' -e 's/ //' | awk 'BEGIN {FS=":"} {print $1}')
    
    while true; do
      if [[ $(pidof xbmc.bin | wc -w) -gt 0 ]]; then
        while [[ $(pidof xbmc.bin | wc -w) -gt 0 ]]; do
          xdotool mousemove $((mouse_x+${movement_px})) $((mouse_y+${movement_px}))
          xdotool mousemove $((mouse_x-${movement_px})) $((mouse_y-${movement_px}))
          sleep ${sleep_period}
        done
      else
        sleep ${sleep_period}
      fi
    done
    
  3. Сделать этот сценарий исполняемым:

    Щелкните правой кнопкой мыши файл, который вы только что сохранили >> Выберите Свойства > > На вкладке Разрешения установите флажок Выполнить .

    make the script executable

  4. Выполнять этот скрипт автоматически при каждом запуске:

    Мы можем сделать это с помощью [ 1162] Запуск приложений . Откройте Dash, нажав Enter и запросив Startup Applications >> В окне запуска приложений нажмите Добавить >> Затем, в появившемся диалоговом окне, заполните информацию :

    Имя: необязательно, как бы вы это ни назвали.

    Команда: путь к файлу, в котором вы ее сохранили.

    Комментарий: необязательно, если хотите добавить.

    startup applications preferences

  5. Перезагрузите систему и наслаждайтесь фильмами с помощью XBMC.


Как использовать его с другими приложениями

Это был пример для XBMC (имя процесса xbmc.bin). Однако его также можно использовать для любого другого процесса по вашему выбору, просто заменив xbmc.bin в сценарии, упомянутом в шаге 2, на имя процесса, который вы хотите. Найдите следующие строки в приведенном выше сценарии:

while true; do
  if [[ $(pidof xbmc.bin | wc -w) -gt 0 ]]; then
    while [[ $(pidof xbmc.bin | wc -w) -gt 0 ]]; do

И замените xbmc.bin в обеих строках 2 и 3 на имя процесса по вашему выбору.


Как найти имя процесса

  • С GUI (GNOME):

    Мы можем использовать System Monitor, чтобы найти Название процесса. Нажмите Super , чтобы открыть Dash, и запросите «System Monitor», чтобы запустить его. На вкладке Процессы мы можем найти имя процесса в качестве первого столбца.

    System Monitor

  • С терминалом:

    Мы можем запустить top для просмотра списка всех запущенных процессов. Последний столбец с именем Command дает нам имя процесса (однако он ограничен первыми 15 символами).

    Terminal <code>top</code> command

Здесь мы можем видеть, что Firefox просто назван как firefox. Итак, если мы хотим, чтобы такое поведение было запущено Firefox; мы заменили бы xbmc.bin в скрипте на firefox, и все остальное будет работать нормально.


Благодарность: Я нашел сценарий здесь . Тем не менее, я сделал необходимые модификации, чтобы сделать его компактным и удовлетворить требования вопроса.

0
ответ дан 17 January 2013 в 02:20

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

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