文件在python shell中正常播放。脚本中的相同代码无法播放,但持续时间正确。有什么问题?
>>> import mplayer
>>> p = mplayer.Player()
>>> p.loadfile('announce_vlad.wav')
脚本:
import mplayer
p = mplayer.Player()
p.loadfile('announce_vlad.wav')
print p.length
print p.is_alive()
脚本输出:
5.955873
True
答案 0 :(得分:2)
玩家似乎在后台运行,并在脚本退出后立即停止。 (在Python shell中,这通常不会成为问题,因为在等待输入时shell将保持打开状态。)
为了防止播放器过早停止,您需要以某种方式保持脚本运行直到播放器完成。一种方法,因为你已经知道你正在播放的片段的持续时间,持续时间可能仅为sleep()
。
(可能有更好的方法可以做到这一点,但是唉,我对mplayer来说还不够熟悉。你可能想查看mplayer文档,看看是否有某种方法可以制作玩家在完成游戏后将其唤醒。)