如何在Python 2.7中播放基于当前时间的随机音频文件?
背景:我正在使用as Raspberry Pi rev 2 B运行一个自然声音白噪声发生器,它会根据夜晚/早晨的时间随机播放不同长度的音频曲目。有些曲目只有一分钟,有些长达数小时。我正在寻找一种方法来检查时间,并根据时间改变播放的声音类型 当前问题:我可以在程序首次执行时启动相应的音频,但一旦omxplayer启动,timeloop执行将停止轮询 我尝试在不中断时间检查器的情况下调用OMXPlayer,时间检查器决定播放哪种音频,但一旦音频播放开始,我就无法继续检查时间。即使如何在Python 2.7中播放基于当前时间的随机音频文件?,python,python-2.7,subprocess,python-multithreading,omxplayer,Python,Python 2.7,Subprocess,Python Multithreading,Omxplayer,背景:我正在使用as Raspberry Pi rev 2 B运行一个自然声音白噪声发生器,它会根据夜晚/早晨的时间随机播放不同长度的音频曲目。有些曲目只有一分钟,有些长达数小时。我正在寻找一种方法来检查时间,并根据时间改变播放的声音类型 当前问题:我可以在程序首次执行时启动相应的音频,但一旦omxplayer启动,timeloop执行将停止轮询 我尝试在不中断时间检查器的情况下调用OMXPlayer,时间检查器决定播放哪种音频,但一旦音频播放开始,我就无法继续检查时间。即使play\u aud
play\u audio()
函数不是递归函数,我仍然希望在音频播放时时间检查器能够继续执行
#/usr/bin/env python
导入日期时间、时间、操作系统、子进程、随机
从timeloop导入timeloop
从日期时间导入时间增量
从时间上导入睡眠
从omxplayer.player导入omxplayer
从pathlib导入路径
tl=Timeloop()
运行_cycle=“off”#当前运行的时间周期的默认值
#用于检查当前时间周期的函数
def检查时间():
dt_now=datetime.datetime.now()
t_now=dt_now.time()
t_night=datetime.time(小时=2,分钟=0)
t_暮光之城=日期时间。时间(小时=4,分钟=45)
t_morning=datetime.time(小时=7,分钟=0)
t_end=datetime.time(小时=10,分钟=0)
如果t_night我的递归都错了,所以它陷入了一个无限循环中,timeloop函数对于这个解决方案来说不是真正可行的。相反,我有一个播放声音的函数,然后调用该函数来检查时间并从相应的子目录播放(或者不播放并等待)
以下是我的想法:
#/usr/bin/env python
导入日期时间、时间、操作系统、子进程、随机
从日期时间导入时间增量
从时间上导入睡眠
从omxplayer.player导入omxplayer
def检查时间():
dt_now=datetime.datetime.now()
t_now=dt_now.time()
t_night=datetime.time(小时=0,分钟=0)
t_暮光之城=日期时间。时间(小时=5,分钟=45)
早上=日期时间。时间(小时=7,分钟=45)
t_end=datetime.time(小时=10,分钟=0)
如果t_night我的递归都错了,所以它陷入了一个无限循环中,timeloop函数对于这个解决方案来说不是真正可行的。相反,我有一个播放声音的函数,然后调用该函数来检查时间并从相应的子目录播放(或者不播放并等待)
以下是我的想法:
#/usr/bin/env python
导入日期时间、时间、操作系统、子进程、随机
从日期时间导入时间增量
从时间上导入睡眠
从omxplayer.player导入omxplayer
def检查时间():
dt_now=datetime.datetime.now()
t_now=dt_now.time()
t_night=datetime.time(小时=0,分钟=0)
t_暮光之城=日期时间。时间(小时=5,分钟=45)
早上=日期时间。时间(小时=7,分钟=45)
t_end=datetime.time(小时=10,分钟=0)
如果你今晚