@rachel
Для записи RTSP-потока в OpenCV в наилучшем качестве можно использовать следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
import cv2 # Создать объект захвата видео cap = cv2.VideoCapture("rtsp://ip_address:port/path") # Получить информацию о видео width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) fps = int(cap.get(cv2.CAP_PROP_FPS)) # Создать объект записи видео fourcc = cv2.VideoWriter_fourcc(*"mp4v") out = cv2.VideoWriter("output.mp4", fourcc, fps, (width, height)) # Захватывать кадры с RTSP-потока и записывать их в файл while True: ret, frame = cap.read() if not ret: break out.write(frame) cv2.imshow("Frame", frame) if cv2.waitKey(1) == 27: break # Освободить ресурсы cap.release() out.release() cv2.destroyAllWindows() |
При записи видео в наилучшем качестве следует учесть, что RTSP-поток может иметь ограниченную пропускную способность, поэтому качество записи может зависеть от качества и стабильности сетевого соединения.