Início > Linux, Multimídia, Shell Script > Parando o gnome-screensaver durante uma reprodução de video

Parando o gnome-screensaver durante uma reprodução de video


Imagine a cena. Você chega ancioso na frente do seu PC com um arquivo de video e logo chama o mplayer pra rodar ele. Na melhor parte, aquela que você não poderia perder,  justo aquela, aparece o Gnome screensaver!  A única coisa que você vê — ou ouve —  é o som que você não queria  para não perder a surpresa! Vai ter de ir P da vida até o PC, digitar a senha, voltar a cena..  Foi depois de passar um pouco de raiva com isso que resolvi dar um jeito na coisa…

Meu player preferido para ver videos é o mplayer e a solução principal que busquei foi pra ele.  Mas eu obtive duas soluções para esse problema. A primeira é específica do mplayer e a segunda você pode aplicar a qualquer outro programa que não forneça a opção de parar a proteção de tela.

A primeira e mais fácil é dar uma “cutucada” no gnome-screensaver  antes que seja ativado.  O comando responsável por isso é o

$ gnome-screensaver-command --poke

Essa opção permite simular alguma atividade no PC como se você estivesse na frente dele. No entanto, o comando precisa ser executado periodicamente para que o screensaver não seja ativado…

O mplayer tem a opção heartbeat-cmd que permite que uma determinado comando seja executado a cada 30 segundos via função system(). Essa função executa um determinado comando no shell. Assim, podemos fazer com que ele dê essas cutucadas no gnome-screensaver pra nós! Olha que beleza! Adicione a seguinte linha ao seu arquivo ~/.mplayer/config

heartbeat-cmd="gnome-screensaver-command --poke"

Ou então use essa opção diretamente na linha de comando para executar o arquivo meu_filme.avi (mas isso é falta de elegância e um tédio, que fique claro! :-))

$ mplayer -heartbeat-cmd "gnome-screensaver-command --poke" meu_filme.avi

Essa foi a primeira opção que me deparei e sim, resolve o problema. Mas pode surgir outro. Eu percebia que a cada 30 segundos o video que estava assistindo dava uma pequena travada e isso começou a incomodar. Pode ser que não ocorra com você, mas comigo não teve jeito. Acredito que seja por causa a pouco memória que estava usando. De qualquer maneira,  isso me levou ao plano B que achei mais foi mais adequado nessa situação: parar o gnome-screensaver, executar o video e depois fazer ele rodar de novo.  Na verdade, até acho mais inteligente essa alternativa do que ficar se “lembrando” a todo momento de cutucar o pobre coitado.

Assim, escrevi um pequeno script — stopgs.sh — que permite que isso seja feito. Ele funciona no Gnome ou no XFCE 4 (ambos usam gnome-screensaver) e o testei no Fedora 10, mas acredito que funcione em outra distro sem problemas.. Futuramente pretendo também incluir o KDE na jogada, mas todas as minhas tentativas de fazer funcionar no KDE falharam. Eu ainda não achei um jeito de controlar o screensaver do KDE. 😦

Como deixei o script muito bem comentado, vou dispensar a parte de explicar como proceder, deixando para os comentários que estão nele fazerem isso. Ele está disponível para download aqui.

Divirta-se! 🙂

Anúncios
  1. 08/04/2009 às 13:01

    Cara nunca tive esse problema, mas tive um tão chato quanto.
    Sabe, sempre gestei mais do VLC, mas por indicação do fl0cker, passei a usar o Mplayer. No começo achei bem legal, depois tive umas dores de cabeça com a codificação das legendas… nada que uma busca no Google não resolvesse, mas o lance é que eu não tenho net em casa!
    E essas coisas só acontecem quando você está numa situação dessas. Bixo, tentei fazer uma cola pelas configurações dos outros players que eu tinha e terminei fuçando foi tudo.
    Resultado: Nada de filmes com a minha noiva! :S
    Depois eu resolve, nem sei como.
    Baixei o seu script e curti, bem comentado.

  2. 08/04/2009 às 13:31

    Pois é Wallison, tive esse problema com o totem quando usava ele, mas resolvi. Linux é uma coisa! Depois que você pega costume com esses programas clássicos, acaba não largando mais! 🙂

  3. 25/04/2009 às 12:32

    Novo visual!?
    Muto bom cara, está nota 10000000… …n
    :O

  4. Wyliam
    27/04/2009 às 10:06

    Cara essa coisa de tocar um vídeo e o screensaver ligar é a pior coisa que existe! Bom seria se o mplayer já viesse configurado para isso, assim como o VLC. Foi por isso que eu comecei a usar o VLC mesmo!

  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: