Автор Тема: СМПлеер  (Прочитано 4857 раз)

Оффлайн Yuriy98

  • Завсегдатай
  • *
  • Сообщений: 314
    • Email
Re: СМПлеер
« Ответ #30 : 19.12.2016 20:39:49 »
Короче, единственный вариант отключать хранитель экрана и отключение монитора в менеджере питания xfce.
Да только так.Час прошел и сработал.
Ясно, спасибо. Ну а почему ж сам плеер то не блокирует хранитель экрана, там же есть поставить эту галочку но он то ж не реагирует на это, какой едкий и живучий этот хранитель.

Петрович

  • Гость
Re: СМПлеер
« Ответ #31 : 20.12.2016 00:15:49 »
Ещё лучше в каталоге $HOME/.xsession.d содать файл xhost с таким содержанием
Тогда можно и так?
До перезагрузки будет работать (чтоб не забывать)
#!/bin/bash
sh -c "sleep 30" && xscreensaver-demo

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: СМПлеер
« Ответ #32 : 20.12.2016 14:25:34 »
Ну а почему ж сам плеер то не блокирует хранитель экрана, там же есть поставить эту галочку но он то ж не реагирует на это, какой едкий и живучий этот хранитель.

Потому что smplayer опирается на стандарт, поддержку которого в xfce не реализовали пока.

Оффлайн Yuriy98

  • Завсегдатай
  • *
  • Сообщений: 314
    • Email
Re: СМПлеер
« Ответ #33 : 20.12.2016 14:27:29 »
Ну а почему ж сам плеер то не блокирует хранитель экрана, там же есть поставить эту галочку но он то ж не реагирует на это, какой едкий и живучий этот хранитель.

Потому что smplayer опирается на стандарт, поддержку которого в xfce не реализовали пока.
А можно как то разработчикам об этом написать, мож в каких то обновлениях реализуют?

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: СМПлеер
« Ответ #34 : 21.12.2016 16:46:28 »
По поводу xfce4-power-manager. Заходим в Диспетчер настроек => Менеджер питания => вкладка Общие => ставим галочку "Отображать значок в системном лотке" => после этого при необходимости временно отключить спящий/ждущий режимы и отключение экрана монитора при долгом отсутствии активности, кликаем по значку менеджера питания правой кнопкой мыши и активируем галочку "Режим презентации".

А xscreensaver собственно к xfce не относится. Нужно на инглише писать разработчику на его мэйл, указанный вот на этой страничке: https://www.jwz.org/xscreensaver/bugs.html
« Последнее редактирование: 21.12.2016 17:33:09 от Антон Мидюков »

Оффлайн Yuriy98

  • Завсегдатай
  • *
  • Сообщений: 314
    • Email
Re: СМПлеер
« Ответ #35 : 21.12.2016 19:01:42 »
Ок. Спасибо.

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 145
    • Email
Re: СМПлеер
« Ответ #36 : 21.12.2016 22:04:55 »
Yuriy98
Да удалите вы к чертям этот xscreensaver:
apt-get remove xscreensaver*Только смотрите, что предложит удалить, использовать * небезопасно.
Потом в настройках питания уберите отключение монитора при простое.
Я именно так сделал на Simply Linux 7

Если нужна блокировка экрана, то https://forum.altlinux.org/index.php?topic=36407.0
Сноси Винду, переходи на Линукс ! :)

Оффлайн Yuriy98

  • Завсегдатай
  • *
  • Сообщений: 314
    • Email
Re: СМПлеер
« Ответ #37 : 21.12.2016 22:30:27 »
xscreensaver

Это хранитель экрана или что то другое?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: СМПлеер
« Ответ #38 : 22.12.2016 02:38:38 »
Это хранитель экрана или что то другое?
https://packages.altlinux.org/ru/Sisyphus/srpms/xscreensaver
Цитировать
Модульный хранитель экрана и блокировщик для X Window System.
Высоко настраиваемый: позволяет использовать любую программу, которая
умеет рисовать на основном окне в режиме полного экрана.

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: СМПлеер
« Ответ #39 : 22.12.2016 02:40:50 »
Да удалите вы к чертям этот xscreensaver:

Зачем удалять, если можно отключить?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: СМПлеер
« Ответ #40 : 22.12.2016 04:45:16 »
Короче, единственный вариант отключать хранитель экрана и отключение монитора в менеджере питания xfce.
Да только так.Час прошел и сработал.
Ясно, спасибо. Ну а почему ж сам плеер то не блокирует хранитель экрана, там же есть поставить эту галочку но он то ж не реагирует на это, какой едкий и живучий этот хранитель.

ИМХО:

smplayer это приложение KDE и в альтах скомпиллирован на qt4 и на gtk ему фиолетово.

Это приложение x-window-system и на разные DE ему наплевать и они ему не указ и делает оно только одно, - щас дам по рукам! (неважно где и неважно что, сработает оно всегда, будь-то kde или что-то ещё, это один инструмент на всё про всё)
xset s off -dpms

$ grep -rHn 'xset ' ~/.config/
/home/user/.config/autostart/screensaver & powersave off.desktop:7:Exec=/usr/bin/xset s off -dpms
$ xfce4-about -V
xfce4-about 4.12.1 (Xfce 4.12)
$ rpm -q smplayer
smplayer-16.11.0-alt1.8247

См. timeout и DPMS
$ xset q|grep -i 'saver\|blank\|time\|dpms\|standby'
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
DPMS (Energy Star):
  Standby: 600    Suspend: 0    Off: 900
  DPMS is Disabled

После редактирования через xfce4-session-settings (Сеансы и запуск)
$ grep -rH 'xset ' ~/.config/
/home/user/.config/autostart/screensaver & powersave off.desktop:Exec=/usr/bin/xset s off -dpms
$ ls -l $HOME/.config/autostart/screensaver\ \&\ powersave\ off.desktop
-rw-r--r-- 1 user user 201 окт 28 03:08 /home/user/.config/autostart/screensaver & powersave off.desktop
$ cat $HOME/.config/autostart/screensaver\ \&\ powersave\ off.desktop
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=screensaver & powersave off
Comment=
Exec=/usr/bin/xset s off -dpms
OnlyShowIn=XFCE;
StartupNotify=false
Terminal=false
Hidden=false


Общесистемное лежит тут
$ find /etc/ -name "*autostart*" 2>/dev/null
/etc/xdg/autostart
/etc/xdg/autostart/xfce4-notes-autostart.desktop
/etc/xdg/autostart/xfdashboard-autostart.desktop
/etc/xdg/autostart/xfce4-clipman-plugin-autostart.desktop

Спецификация для OnlyShowIn:
B. Registered OnlyShowIn Environments
Extensions to the desktop entry format
Recognized desktop entry keys

Make Applications Autostart Only In A Certain Environment (GNOME, Unity, KDE, Etc.)

Обратите внимание, что OnlyShowIn это список который должен заканчиваться точкой с запятой.

Запускать только в GNOME и Unity
OnlyShowIn=GNOME;Unity;

NotShowIn - не запускать в перечисленных DE

Помните, регистр имеет значение
OnlyShowIn Value  Environment

GNOME           GNOME Desktop
KDE           KDE Desktop
LXDE           LXDE Desktop
LXQt           LXQt Desktop
MATE           MATÉ Desktop
Razor           Razor-qt Desktop
ROX           ROX Desktop
TDE           Trinity Desktop
Unity           Unity Shell
XFCE           XFCE Desktop
EDE           EDE Desktop
Cinnamon   Cinnamon Desktop
Pantheon   Pantheon Desktop
Old           Legacy menu systems


Варианты использования xset

Допустим у вас фильмы не превышают 2 часа 15 минут.
Рассчитываем время в секундах
- время фильма
- время срабатывания скринсейвера
- время срабатывания энергосбережения монитора (dpms)

$ bc -l
60*60*2+(60*15)
8100

60*60*2+(60*20)
8400

60*60*2+(60*30)
9000

quit

Но максимальное время standby для dpms не может превышать 900 секунд
$ xset q|grep -i 'dpms\|standby'
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 900
  DPMS is Enabled
$ xset dpms 9000
illegal combination of values
  standby time of 9000 is greater than off time of 900

Поэтому команда выглядит так:
включить скринсейвер через 8400 секунд (2 часа 20 минут) и выключить энергосбережение монитора, - время указывается в секундах
$ xset s 8400 -dpms
$ xset q|grep -i 'saver\|blank\|time\|dpms\|standby'
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  8400    cycle:  0
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 900
  DPMS is Disabled


Если ваши видеоролики не превышают 10 минут, то скринсейвер можно выключить совсем, а в дежурный режим монитор можно отправить через 10 минут, - через 15 минут он выключится
$ xset s off dpms 600
$ xset q|grep -i 'saver\|blank\|time\|dpms\|standby'
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
DPMS (Energy Star):
  Standby: 600    Suspend: 0    Off: 900
  DPMS is Enabled

Но выключить монитор можно сразу
$ xset dpms force off


Как один раз и навсегда избавиться от настройки выключения скринсейвера и энергосбережения монитора в каждом DE

Предположим что в менеджере сеансов и запуска вы уже создали какой-то подобный файл
$ grep -rH 'xset ' ~/.config/
/home/user/.config/autostart/screensaver & powersave off.desktop:Exec=/usr/bin/xset s off -dpms
$ ls -l $HOME/.config/autostart/screensaver\ \&\ powersave\ off.desktop
-rw-r--r-- 1 user user 201 окт 28 03:08 /home/user/.config/autostart/screensaver & powersave off.desktop
$ cat $HOME/.config/autostart/screensaver\ \&\ powersave\ off.desktop
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=screensaver & powersave off
Comment=
Exec=/usr/bin/xset s off -dpms
OnlyShowIn=XFCE;
StartupNotify=false
Terminal=false
Hidden=false


и вам известна эта таблица DE используемых как список параметров для OnlyShowIn
https://standards.freedesktop.org/menu-spec/latest/apb.html
OnlyShowIn Value  Environment

GNOME           GNOME Desktop
KDE           KDE Desktop
LXDE           LXDE Desktop
LXQt           LXQt Desktop
MATE           MATÉ Desktop
Razor           Razor-qt Desktop
ROX           ROX Desktop
TDE           Trinity Desktop
Unity           Unity Shell
XFCE           XFCE Desktop
EDE           EDE Desktop
Cinnamon   Cinnamon Desktop
Pantheon   Pantheon Desktop
Old           Legacy menu systems

и эту таблицу вы поместили в файл
$ cat LF-in-strings.txt
GNOME           GNOME Desktop
KDE           KDE Desktop
LXDE           LXDE Desktop
LXQt           LXQt Desktop
MATE           MATÉ Desktop
Razor           Razor-qt Desktop
ROX           ROX Desktop
TDE           Trinity Desktop
Unity           Unity Shell
XFCE           XFCE Desktop
EDE           EDE Desktop
Cinnamon   Cinnamon Desktop
Pantheon   Pantheon Desktop
Old           Legacy menu systems

В desktop-файле, параметром для OnlyShowIn упоминается только XFCE
$ grep -rH 'OnlyShowIn' ~/.config/autostart/
/home/user/.config/autostart/screensaver & powersave off.desktop:OnlyShowIn=XFCE;

Чтобы отключение скринсейвера работало в любом DE, нужно добавить все эти DE списком для OnlyShowIn

Параметр для OnlyShowIn может выглядеть так
$ cat LF-in-strings.txt | grep -v 'Unity\|EDE\|Pantheon' | awk '{print $1}' | tr -s '\n' ';'|sed 's/$/\n/'
GNOME;KDE;LXDE;LXQt;MATE;Razor;ROX;TDE;XFCE;Cinnamon;Old;

Здесь grep исключает из списка десктопы Unity EDE Pantheon - в альтах их нет.
awk выбирает всё что находится в первом столбце файла LF-in-strings.txt, т.е. будущие параметры.
tr в каждой строке заменяет перевод строки на точку с запятой, создавая тем самым список.
sed в конец строки добавляет символ перевода строки

Значит имитация изменения парамеров для OnlyShowIn может выглядеть так
$ STRING=`cat LF-in-strings.txt | grep -v 'Unity\|EDE\|Pantheon' | awk '{print $1}' | tr -s '\n' ';'|sed 's/$/\n/'` \
&& sed 's/OnlyShowIn=.*/OnlyShowIn='"$STRING"'/' ~/.config/autostart/screensaver\ \&\ powersave\ off.desktop
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=screensaver & powersave off
Comment=
Exec=/usr/bin/xset s off -dpms
OnlyShowIn=GNOME;KDE;LXDE;LXQt;MATE;Razor;ROX;TDE;XFCE;Cinnamon;Old;
StartupNotify=false
Terminal=false
Hidden=false

Выполняем эту же команду, но уже с редактированием desktop-файла
$ STRING=`cat LF-in-strings.txt | grep -v 'Unity\|EDE\|Pantheon' | awk '{print $1}' | tr -s '\n' ';'|sed 's/$/\n/'` \
&& sed -i 's/OnlyShowIn=.*/OnlyShowIn='"$STRING"'/' ~/.config/autostart/screensaver\ \&\ powersave\ off.desktop

Теперь в любом из перечисленных DE, скринсейвер и энергосбережение монитора будут отключены
$ cat ~/.config/autostart/screensaver\ \&\ powersave\ off.desktop [Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=screensaver & powersave off
Comment=
Exec=/usr/bin/xset s off -dpms
OnlyShowIn=GNOME;KDE;LXDE;LXQt;MATE;Razor;ROX;TDE;XFCE;Cinnamon;Old;
StartupNotify=false
Terminal=false
Hidden=false

Какой бы ни был запущен DE, скринсейвер и энергосбережение монитора будут отключены всегда на входе в X-сессию, важно чтобы отрабатывал автозапуск при входе в X-сессию.



Послесловие:
Я понимаю конечно что для пользователя всё это может показаться негуманным. Но ещё меньше мне нравится выкручивать один и тот же функционал для каждого DE отдельно вместо общесистемного использования.



Если такой взгляд кому-то покажется интересным, перенесите пожалуйста на вики.
« Последнее редактирование: 23.12.2016 05:22:10 от Speccyfighter »

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 145
    • Email
Re: СМПлеер
« Ответ #41 : 22.12.2016 08:21:54 »
Зачем удалять, если можно отключить?
Затем, что пользователь может случайно его снова включить. Я у себя его снёс, как и некоторые другие приложения в составе Simply Linux.
« Последнее редактирование: 22.12.2016 15:23:39 от berkut_174 »
Сноси Винду, переходи на Линукс ! :)

Оффлайн Yuriy98

  • Завсегдатай
  • *
  • Сообщений: 314
    • Email
Re: СМПлеер
« Ответ #42 : 22.12.2016 12:10:03 »
Первый раз только вот поставил на комп линукс, и если тут такие сложности с тем что б сделать нормальной работу плеера для просмотра фильмов, что же будет дальше с чем то более серьезным. Пока сделал там отключил совсем хранитель, и в менеджере питания поставил галочку что б он появился в трее, и там выбираю как писали выше режимы пока вроде работает. Но правда если даж стоит обычный режим и открыт смплеер даже не на весь экран то монитор не выключается.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 246
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: СМПлеер
« Ответ #43 : 22.12.2016 13:54:18 »
Первый раз только вот поставил на комп линукс, и если тут такие сложности
Это не сложности, а "цветочки". Просто есть определённый минимум знаний, требующийся пользователю Linux.
 И я не побоюсь сказать - он выгоден всем - и разработчикам программ, и опытным пользователям Линукс  - всегда есть способ немного заработать на этом ;-)
Может только "дистрибутивостроителелям" он не очень выгоден, да и то не очень.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: СМПлеер
« Ответ #44 : 23.12.2016 04:23:22 »
Первый раз только вот поставил на комп линукс, и если тут такие сложности с тем что б сделать нормальной работу плеера для просмотра фильмов, что же будет дальше с чем то более серьезным. Пока сделал там отключил совсем хранитель, и в менеджере питания поставил галочку что б он появился в трее, и там выбираю как писали выше режимы пока вроде работает. Но правда если даж стоит обычный режим и открыт смплеер даже не на весь экран то монитор не выключается.

Видите ли тут какое дело... :-)
Всё хорошо что хорошо закончилось.
Но если вам захочется установить другой DE, в нём вам придётся делать то же самое. В следующем DE опять то же самое. И так до конца, пока эти DE не закончатся или у вас в системе или в репозитории.

Мой же вариант предусматривает отключение скринсейвера и энергосбережения монитора для всех DE сразу.

Даже для тех, которые вы ещё не установили или о которых ещё не знаете:
$ xset q|grep -i 'saver\|blank\|time\|dpms\|standby'Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
DPMS (Energy Star):
  Standby: 600    Suspend: 0    Off: 900
  DPMS is Disabled
$ grep -rH OnlyShowIn ~/.config/autostart/
/home/user/.config/autostart/screensaver & powersave off.desktop:OnlyShowIn=GNOME;KDE;LXDE;LXQt;MATE;Razor;ROX;TDE;XFCE;Cinnamon;Old;

То что выше, может показаться уж чересчур сложным, - всё что выше, это показано взглядом изнутри в деталях чтобы исключить вопросы. А их быть не должно. Но на самом деле, если например брать только Xfce, всё укладывается в шесть кликов мышью, ввод произвольного имени файла и ввод команды в менеджере Сеансы и запуск. Всё, на чём проблемы и закончатся. Вам потребуется только либо перелогиниться в X-сессию Xfce, либо один раз ввести команду, чтобы изменения применились сразу и без релогина или ребута. На чём про эту проблему можно забыть совсем. И сломается power manager или нет, вас это уже будет мало беспокоить. Шелл-команды крайне консервативны на изменения. И значит их функционал ломается крайне редко. И любое событие такого рода, это ЧП.
« Последнее редактирование: 23.12.2016 05:28:36 от Speccyfighter »