De acordo com esta resposta: Posso usar o cron para tocar no topo da hora como um relógio de pêndulo? você precisa exportar uma variável de ambiente antes de reproduzir sons no seu script cron:
export XDG_RUNTIME_DIR="/run/user/1000"
Eu mudei para o linux desde os últimos 11 meses, eu estou no Ubuntu 15.04, eu aprendi a usar o cron para várias tarefas.
Eu uso o Cron para anunciar o tempo via tts do festival (usando a voz do mbrolla) por hora.
Este é o comando que eu uso no cron (ele é salvo como script .sh e seu caminho apontado em Cron)
echo "Its" 'date "+%l O clock now"' | festival --tts
O problema é que não funciona quando a música ou o vídeo está sendo reproduzido, no entanto, depois que a música é interrompida ou pausada, é anunciada a hora.
Eu pesquisei por ele e descobri que para ter acesso múltiplo à placa de som é preciso usar aoss (alsa-oss) Eu instalei o pacote alsa-oss necessário e modifiquei o comando de acordo com os resultados de pesquisa como este
echo "Its" 'date "+%l O clock now"' | aoss festival --tts
mas ainda assim não funciona e se eu executar o comando com aoss ele dá algum erro como abaixo:
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libaoss.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
Eu não sei se esse erro está relacionado de alguma forma.
Alguém no Reddit mencionou o uso do Alsa ou do Pulse-audio no festival e apontou para fóruns de arquivamento que afirma que para usar o Alsa ou o Pulse-Audio, devemos editar o arquivo ~ / .festivalrc ou /usr/share/festival/festival.scm e adicionar algumas linhas a ele.
Eu adicionei as linhas mencionadas no link, mas ainda assim não resolveu meu problema
Por isso preciso de ajuda de vocês. Por favor, ajude-me a corrigir isso para que o horário seja anunciado pelo Cron, mesmo quando a música ou o vídeo estiver sendo reproduzido.
obrigado
De acordo com esta resposta: Posso usar o cron para tocar no topo da hora como um relógio de pêndulo? você precisa exportar uma variável de ambiente antes de reproduzir sons no seu script cron:
export XDG_RUNTIME_DIR="/run/user/1000"