我有一个在rtsp链接上运行的摄像机。我想编写python代码来检查相机是活着还是死了。类似于使用curl检查url是否正常工作的http。可以使用什么类似的命令来检查rtsp url状态?
我已尝试在终端上使用openRTSP,但我想将其用作python脚本
openRTSP rtsp:// test_url_here
答案 0 :(得分:0)
您可以调用FFMPEG提取快照。如果可以访问成功的流。
按照https://videonow.live/broadcast-ip-camera-or-stream/上的每个教程https://broadcastlivevideo.com/publish-ip-camera-stream-to-website/测试此功能(从rtsp提取快照)。
提取命令应类似于:
/usr/bin/ffmpeg -y -frames 1 snapshot.png -rtsp_transport tcp -i rtsp://test_url_here
然后检查快照文件是否已创建并且不为空。
您可以在此免费的开源WP插件https://wordpress.org/plugins/videowhisper-live-streaming-integration/中找到功能的确切代码。
答案 1 :(得分:0)
您可以使用opencv_python
模块来播放rtsp流。
示例代码:
import cv2
cap=cv2.VideoCapture("rtsp://admin:admin123@test_url_here")
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()