Wraz z aktualizacją 9.10 zmieniono API wygaszacza ekranu przez co (S)Mplayer przestał go blokować. Podobno naprawiono już ten problem, ale jakoś u mnie sytuacja się nie zmieniła. Nadal podczas odtwarzania filmu włącza się wygaszacz. Ale udało mi się pozbyć tego problemu pisząc prosty skrypt i wykorzystując jedną komendę MPlayer'a.
Nie pożądanego włączenia wygaszacza ekranu najlepiej się pozbyć ruszając myszą lub naciskając jakiś klawisz. Ale nikt podczas oglądania filmu nie będzie wstawał z miejsca tylko po to aby ruszyć myszą właśnie. Prędzej wyłączy całkiem wygaszacz ekranu. Tylko trzeba pamiętać aby go potem włączyć, więc taka sytuacja może być problematyczna. Więc trzeba zasymulować interakcję użytkownika z komputerem.
Do tego użyłem polecenia xdotool oraz opcji -heartbeat w MPlayer. Klikając na ten link można ściągnąć i zainstalować xdotool (wymagany zainstalowany apturl wcześniej). To proste narzędzie symuluje naciśnięcie klawiszy. W skrypcie symuluje naciśniecie klawisza Shift.
nice -n 1 xdotool key shift
Skrypt nazwałem shiftpress i wrzuciłem go do katalogu /usr/local/bin i nadałem odpowiednie uprawnienia do uruchomienia się. Poleceniem nice obniżyłem priorytet wykonywania polecenia.
Następnie w MPlayer'a uruchamiamy z parametrem heartbeat:
mplayer -heartbeat-cmd "shiftpress"
Teraz co 30 sekund MPlayer będzie wykonywał skrypt shiftpress czyli co pół minuty komputer będzie otrzymywał sygnał naciśnięcia przycisku shift i będzie odwlekał wygaszacz ekranu. Teraz możemy utworzyć skrypt z powyższą komendą (wraz z opcją) i używać go do uruchomienia MPlayer'a.
Jeśli używamy SMPlayer'a, opcję heartbeat wstawiamy w Zaawansowane->Opcje MPlayer'a->opcje.

Przyznam że jest to rozwiązanie partyzanckie, ale skuteczne dzięki opcjom MPlayer'a. Póki programiści nie naprawią tego błędu, trzeba będzie pozostać przy tego typu rozwiązaniach.