2017-07-10 2 views
0

Ich arbeite an einem Projekt auf einem IoT-Gerät basierend auf Flask und OpenCV. Ich fand, dass keine Antwort als ich die Livestream-Seite besuchte, wenn ich auf die Hyperlinks klickte (diese Hyperlinks verweisen auf andere Seiten) oder ein Formular abschicken. Das einzige, was ich tun kann, ist zurückzugehen. Und dann manchmal die Kamera nicht ordnungsgemäß freigegeben werden, und wirft die Fehlerumleiten einer Livestream-Seite zu anderen Seiten in Flask

HIGHGUI ERROR: libv4l unable to ioctl S_FMT 
libv4l2: error setting pixformat: Device or resource busy 

Der Code ich benutze:

def gen_normal(): 
    cap = cv2.VideoCapture(0) 
    while True: 
     success, img = cap.read() 
     _,frame = cv2.imencode('.jpg',img) 
     yield (b'--frame\r\n' 
     b'Content-Type: image/jpeg\r\n\r\n' + frame.tobytes() + b'\r\n\r\n') 
    cap.release() 

Könnte mir jemand sagen, wie ein Formular auf einer Live-Stream Seite einreichen? Und wie stellt man sicher, dass die Kamera korrekt freigegeben wurde? Danke

Antwort

0

Sie müssen Ihre lokale Streaming-IP über ifconfig (inet) bekommen und diese an Ihren Code übergeben. app.run(host='172.17.77.204', debug=True) Flask verwendet Port 5000. Wenn Ihr Code einwandfrei funktioniert, können Sie den Stream in Ihrem Webbrowser

sehen
Verwandte Themen