python截取20秒海康威视摄像头视频保存到本地
时间: 2023-11-11 18:04:40 浏览: 139
截取并保存摄像头某一帧
4星 · 用户满意度95%
你可以使用OpenCV库来获取海康威视摄像头的视频流,并用Python中的time库来控制录制的时间,最后使用OpenCV库将录制的视频保存到本地。
下面是示例代码:
```python
import cv2
import time
# 获取摄像头视频流
cap = cv2.VideoCapture("rtsp://摄像头IP地址/视频流路径")
# 视频编码器
fourcc = cv2.VideoWriter_fourcc(*"XVID")
# 获取视频流的宽度和高度
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
# 创建视频保存对象
out = cv2.VideoWriter("output.avi", fourcc, 20.0, (width, height))
# 开始录制
start_time = time.time()
while (time.time() - start_time) < 20:
ret, frame = cap.read()
if ret:
out.write(frame)
else:
break
# 释放资源
cap.release()
out.release()
cv2.destroyAllWindows()
```
在上面的代码中,我们首先使用`cv2.VideoCapture()`函数获取海康威视摄像头的视频流。然后,我们使用`cv2.VideoWriter()`函数创建一个视频保存对象,以将录制的视频保存到本地。在`while`循环中,我们获取摄像头的视频帧,将其写入视频保存对象中。`start_time`变量用于控制录制的时间,这里设置为20秒,可以根据需要进行更改。最后,我们释放资源,关闭窗口。保存的视频文件名为`output.avi`。
阅读全文