分离子进程以继续执行程序

Detaching a child process to continue executing a program

我正在尝试在 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我的objective是打开ffplay 使用这些选项,然后执行程序的剩余部分(每 10 秒重新加载一个页面)。 现在,当我 运行 脚本时,它会不断进行该系统调用。 有没有办法将 ffplay 的执行与 python 代码的执行分开?

'Call' 将始终等待它正在调用的进程完成。我认为您需要将 Popen 用于这两个操作,因为它将 return 控制您的代码。 https://pythonspot.com/python-subprocess/

上有一个简短的教程

不要重复调用 stream http 命令,而是使用 keep alive 魔法命令:http://github.com/konradit/goprostream