import cv2 import numpy as np # hikvision_cameras_dict = { # 1: cv2.VideoCapture("rtsp://admin:Admin123@192.168.254.200:554/Streaming/Channels/101", cv2.CAP_FFMPEG), # 2: cv2.VideoCapture("rtsp://admin:Admin123@192.168.254.201:554/Streaming/Channels/101", cv2.CAP_FFMPEG), # 3: cv2.VideoCapture("rtsp://admin:Admin123@192.168.254.202:554/Streaming/Channels/101", cv2.CAP_FFMPEG), # 4: cv2.VideoCapture("rtsp://admin:Admin123@192.168.254.203:554/Streaming/Channels/101", cv2.CAP_FFMPEG), # } hikvision_cameras_dict = { 1: cv2.VideoCapture("./example_videos/birdsflyingduringsunsetinmadrid_preview-SMALLER.mp4"), 2: cv2.VideoCapture("./example_videos/birdsflyingovertreesatsunset_preview.mp4"), 3: cv2.VideoCapture("./example_videos/secondmacarthurbridgetaipei03_preview.mp4"), 4: cv2.VideoCapture("./example_videos/birdsflyingduringsunsetinmadrid_preview-SMALLER.mp4"), } def get_image_from_HIKvision_camera(camera_id): global hikvision_cameras_dict cap = hikvision_cameras_dict[camera_id] if not cap.isOpened(): print("Error: Could not open video stream.") return np.zeros((256,256,3)) ret, frame = cap.read() if ret: return frame else: print("Failed to grab frame") return np.zeros((256,256,3)) def release_all_caps(dummy_variable=None): global hikvision_cameras_dict { (k,cap.release()) for (k,cap) in hikvision_cameras_dict.items() } # # Example usage: # frame = get_image_from_HIKvision_camera( # camera_id = 1)