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()