特定の時間に動画再生を開始

特定の時間に動画再生を開始

特定の時間にビデオを再生したい。アラームのように。たとえば、07:00にvideo.mp4を再生します。

私はcrontabで試しましたが、atまだ成功していません。

答え1

私はこれのために小さなスクリプトを書いた。

#!/bin/bash
[ "$1" = "-q" ] && shift && quiet=true || quiet=false
hms=(${1//:/ })
printf -v now '%(%s)T' -1
printf -v tzoff '%(%z)T\n' $now
tzoff=$((0${tzoff:0:1}(3600*${tzoff:1:2}+60*${tzoff:3:2})))
slp=$(((86400+(now-now%86400)+10#$hms*3600+10#${hms[1]}*60+${hms[2]}-tzoff-now)%86400))
$quiet || printf 'Alarm goes off at %(%c)T.' $((now+slp))
sleep $slp
mplayer /path/to/video.mp4

希望の時間(たとえばalarm.bash 7alarm.bash 7:1:3または)で呼び出しますalarm.bash 07:01:03。この-qオプションを使用して端末出力を無効にできます。目覚まし時計として使用するように設計されたこのスクリプトでは、23:59:59よりも遠い将来の時間を設定できません。cron必要に応じてこのスクリプトを組み合わせることをお勧めします。

関連情報