Ведь жизнь – это единственная яркая сторона смерти. ©
Проблема: срабатывает скринсейвер про воспроизведении видео.

Решение: надо послать kscreensaver'у сигнал о том, что всё нормально и блокировать экран не следует. Создаём скрипт следующего вида:

#!/bin/sh

[ -x /usr/bin/xscreensaver-command ] && /usr/bin/xscreensaver-command -deactivate > /dev/null 2>&1 &
[ -x /usr/bin/qdbus ] && /usr/bin/qdbus org.kde.screensaver /ScreenSaver \
org.freedesktop.ScreenSaver.SimulateUserActivity > /dev/null 2>&1 &

Сохраняем, к примеру, в /usr/local/bin/disable-ssaver.

Теперь надо Всего лишь периодически вызывать этот скрипт про воспроизведении. В MPlayer для этого есть специальная фича, активируемая ключом -heartbeat-cmd. man mplayer говорит, что это «команда, которая выполняется каждые 30 секунд во время воспроизведения с помощью system(), т.е. используя оболочку командной строки». Соответственно, если в качестве аргумента указать свежесозданный скрипт, то каждые 30 секунд xscreensaver'у и kscreensaver'у будет посылаться команда «выключись».

В моём случае в качестве фронтенда к MPlayer'у я использую Qt'шный SMPlayer. открываем его настройки -> Дополнительно -> Настройки MPlayer и в поле «Настройки:» вбиваем соответствующую строку:

-heartbeat-cmd /usr/local/bin/disable-ssaver

Теперь воспроизведение видео не будет прерываться скринсейвером и можно спокойно расслабиться.

Да, если вы не собираетесь юзать xscreensaver, то строчку про него можно спокойно удалить.

@темы: kscreensaver, xscreensaver, Компьютерное, Screensaver, Howto, KDE4