python 利用subprocess库调用mplayer时发生错误
本文介绍了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()
解决方案
mplayer播放时会向stout输入大量字符,超过了4096造成死锁,输出信息不在我的需求之中,因此决定修改stdout=open("/dev/null","w")
,解决问题。参考博客http://blog.csdn.net/imzoer/a...
这篇关于python 利用subprocess库调用mplayer时发生错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文