我试图让我的Raspberry Pi目前连接到蓝牙扬声器,每天按计划播放音频文件,我的cron
作业正在更新@daily
新时机(它基本上是祈祷的召唤)
crontab -l
@daily /home/pi/athan/update_prayers.sh
39 05 27 2 * /home/pi/athan/call_prayer.sh >/dev/null 2>&1 #fajr
31 12 27 2 * /home/pi/athan/call_prayer.sh >/dev/null 2>&1 #dhuhr
34 15 27 2 * /home/pi/athan/call_prayer.sh >/dev/null 2>&1 #asr
05 18 27 2 * /home/pi/athan/call_prayer.sh >/dev/null 2>&1 #maghrib
24 19 27 2 * /home/pi/athan/call_prayer.sh >/dev/null 2>&1 #isha
所以,上面就是我现在所拥有的,这是/home/pi/athan/update_prayers.sh
#!/bin/bash
/home/pi/.nvm/versions/node/v7.5.0/bin/node /home/pi/athan/set_prayer.js
基本上我的set_prayer.js
只是使用这个https://www.npmjs.com/package/crontab模块来设置crontab,我能够每天更新它没问题。现在我使用Mplayer
播放音频,这是我使用的命令:
/home/pi/athan/call_prayer.sh
#!/bin/bash
/usr/bin/mplayer /home/pi/athan/athan.mp3
我的问题是,当cron作业在那里运行时没有声音或我甚至不知道作业是否正在运行,但是当我手动执行时我可以听到正在播放的音频没问题。我也尝试使用/usr/bin/omxplayer -o alsa /home/pi/athan/athan.mp3
直接在这里运行它而不是运行bash脚本,它似乎不能与cron一起工作,但是当我直接运行命令时工作正常。
答案 0 :(得分:9)
我正在努力解决类似的问题(如果从crontab运行该命令,蓝牙扬声器上没有音频。
问题是混合pulseaudio / crontab和环境设置。
所以基本上只做crontab -e
并添加以下内容:
XDG_RUNTIME_DIR=/run/user/user_id
可以通过以下命令找到用户ID:
id [user_name]