Crontab não executará vlc live stream

5

Estou tentando iniciar e parar automaticamente um stream de RTPS via vlc no crontab:

sudo crontab -e
15 9 * * * vlc -vvv rtsp://user:[email protected]:xxx/stream1

e

nano /etc/crontab
14 9 * * * camera vlc -vvv rtsp://admin:[email protected]:554/stream1

Se eu colar o comando no terminal, o fluxo é aberto sem nenhum problema, mas quando eu estava testando, fazendo um cronjob dessa maneira e agendando 2 minutos no futuro para testá-lo, nada acontece.

Estou fazendo algo errado ou alguém pode me ajudar?

    
por user174095 18.07.2013 / 09:24

1 resposta

5

Isso ocorre porque um trabalho de crontab não tem conexão com sua área de trabalho. A finalidade do crontab é executar trabalhos sem cabeçalho - sem saída interativa ou exibição gráfica, e somente com mensagens de registro em um arquivo. O Crontab não tem conexão com o seu display gráfico. No entanto, você pode tentar fornecer as informações sobre sua exibição configurando a variável DISPLAY environmental.

Algo parecido com isso pode funcionar:

* * * * * DISPLAY=:0.0 vlc -vvv rtsp://your.url 2>&1 > /tmp/vlc.log

Note que você ainda não conseguirá ver a saída de vlc no seu terminal atual - o crontab executa a programação sem ter qualquer qualquer idéia do seu terminal atual ou emulador de terminal. Portanto, se você deseja verbosidade ou registro, salve a saída em um arquivo.

Post scriptum: Erik está certo, você também precisará lidar com XAUTHORITY se seu comando for iniciado pelo root. Você não precisará fazer isso se estiver iniciando o vlc a partir de seu próprio crontab.

    
por January 18.07.2013 / 09:44

Tags