我正在尝试在python中制作一个小脚本,从gopro流到PC
from selenium import webdriver
from subprocess import call
import subprocess, sys
import time
import urllib
import urllib2
pid = subprocess.Popen([sys.executable, "Sel.py"])
call(["ffplay", "-fflags", "nobuffer", "udp://:8554"])
driver = webdriver.Firefox(executable_path='/usr/bin/geckodriver')
while True:
time.sleep(10)
driver.get("http://10.5.5.9/gp/gpControl/execute?p1=gpStream&a1=proto_v2&c1=restart")
我对python并不熟悉,我的目标是打开ffplay 使用这些选项然后执行程序的其余部分(每10秒重新加载一次页面)。 现在,当我运行脚本时,它会不断地进行系统调用。 有没有办法从执行python代码中分离ffplay的执行?
答案 0 :(得分:0)
'Call'将始终等待它正在调用的进程完成。我认为您需要将Popen用于这两个操作,因为它会将控制权返回给您的代码。 https://pythonspot.com/python-subprocess/
有一个简短的教程答案 1 :(得分:0)
不要重复调用stream http命令,而是使用keep alive magic命令:http://github.com/konradit/goprostream