首页  >  问答  >  正文

python 利用subprocess库调用mplayer时发生错误

脚本在读取stdout时卡住,不再继续执行,也不发生终止

import subprocess
 
p = subprocess.Popen(["mplayer", "-slave", "-quiet", "/home/pi/Music/爱的翅膀.mp3"], stdin = subprocess.PIPE, stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell = False)
 
p.stdin.write('\n') 
print p.stdout.read() //此处
p.stdin.write('get_time_pos\n')
print p.stdout.read()
伊谢尔伦伊谢尔伦2740 天前561

全部回复(1)我来回复

  • PHP中文网

    PHP中文网2017-04-18 10:23:43

    mplayer播放时会向stout输入大量字符,超过了4096造成死锁,输出信息不在我的需求之中,因此决定修改stdout=open("/dev/null","w"),解决问题。参考博客http://blog.csdn.net/imzoer/a...

    回复
    0
  • 取消回复