0、引言:
1、RTSP地址格式:
格式:
rtsp://username:password@<address>:<port>/Streaming/Channels/<id>
其中,端口号默认是554,默认可省略不写;我的案例中序号1是主码流,序号2为子码流。
实例:
主码流:rtsp://admin:1234567@192.168.1./Streaming/Channels/1
或者:rtsp://admin:1234567@192.168.1.:554/Streaming/Channels/1
子码流:rtsp://admin:1234567@192.168.1./Streaming/Channels/2
或者:rtsp://admin:1234567@192.168.1.:554/Streaming/Channels/2
2、验证RTSP地址是否能够正确获取画面
2.1 已有并使用PotPlayer软件读取地址
2.2 已有并使用VLC软件读取地址
操作:左上角媒体——流(快捷键CTRL+S)
操作:网络——粘贴链接——串流——(目标设置)下一个——(转码选项)下一个。[目标设置和转码选项,不做选择我也能正常出画面。]
2.3 使用opencv—python
在虚拟环境中安装opencv—python
pip install opencv-python
然后使用以下代码:
import cv2
url = "rtsp://admin:1234567@192.168.1./Streaming/Channels/1" # 双引号中更换为自己的RTSP地址
cap = cv2.VideoCapture(url)
ret, frame = cap.read()
while ret:
ret, frame = cap.read()
cv2.imshow("frame", frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cv2.destroyAllWindows()
cap.release()
小结:关于画面延迟
观察以上三种方式所得到的实时画面延时:opencv——python<VLC<PotPlayer