Running opencv with display python3 script on boot issue

0

I am trying to run an RTSP stream in Opencv on boot, well once the x server has loaded. My script below works fine when executing anywhere when logged in and manual but as soon as I try crontab or rc.local (with additional sleeps) the script fails.

#!/usr/bin/python3

import time
import numpy as np
import cv2

print("sleeping 10")
time.sleep(10)

window_name = "window"
interframe_wait_ms = 30

cap = cv2.VideoCapture("rtsp://STREAMURL")
if not cap.isOpened():
    print("Error: Could not open video.")
    exit()

cv2.namedWindow(window_name, cv2.WND_PROP_FULLSCREEN)
cv2.setWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)

while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()
    if not ret:
        print("Reached end of video, exiting.")
        break

    cv2.imshow(window_name, frame)
    if cv2.waitKey(interframe_wait_ms) & 0x7F == ord('q'):
        print("Exit requested.")
        break

cap.release()
cv2.destroyAllWindows()

David Collins

Posted 2019-06-04T09:37:03.107

Reputation: 1

No answers