O Ubuntu pode reproduzir um vídeo via cron job?

7

Estou desenvolvendo um sistema de exibição para uma oficina de pintura. Eu configurei um computador com o Ubuntu para executar o vídeo e exibi-lo em uma TV, executando um script PHP que deve atualizar o vídeo a cada hora pela Internet.

O script está configurado para executar via cron, executado uma vez a cada hora (@hourly). Quase todo o script é executado perfeitamente, mas a última linha onde ele executa o VLC Media Player para exibir o vídeo falha silenciosamente. Se o script for executado via linha de comando ( php /path/to/cron.php ), o VLC Media Player será iniciado com perfeição. Mas quando é executado no cron, isso não acontece.

A ideia é que as tarefas executadas pelo cron simplesmente não têm a capacidade de executar aplicativos com uma GUI visível, mas realmente espero que essa não seja a resposta.

Por favor me ajude a quebrar este!

    
por Sune Rasmussen 22.08.2010 / 18:05

2 respostas

6

Para mostrar algo em um servidor X, o cliente X (como vlc ) requer que uma variável de ambiente DISPLAY seja definida, o que define o endereço de rede do servidor X. Em quase todos os casos (um servidor X local), ele deve ser atribuído a :0 .

Você pode definir essa variável a partir do seu script ou apenas executar bash -c "DISPLAY=:0 vlc $vlcopts" (obviamente substituindo $vlcopts ).

    
por 22.08.2010 / 18:21
2

Você também pode usar:

@hourly screen -d -m vlc-wrapper /path/to/file/foo.flv --novideo --volume 700 --repetição --rc-fake-tty

Para fazer o vlc funcionar. Há um processo detalhado aqui: link

    
por 12.12.2012 / 16:13