我有一个python脚本,用mplayer播放一些音频文件。 这就是我在代码中调用mplayer的方式:
subprocess.call(["mplayer","-msglevel","all=-1",audiofile])
如果我在前台运行脚本,它工作正常... 但是,如果我在背景中运行脚本,如
sudo python script.py &
我无法获得任何音频......为什么?如何解决?
答案 0 :(得分:2)
根据Mplayer FAQ:
问:如何在后台运行MPlayer?
答:使用:
mplayer options filename < /dev/null &
在python中,使用stdin
argument传递空文件。
import os
import subprocess
with open(os.devnull, 'wb') as nul:
subprocess.call(['mplayer', '-msglevel', 'all=-1', audiofile], stdin=nul)