在命令行中捕获RTSP

时间:2016-06-06 08:39:41

标签: python opencv ubuntu video rtsp

我想在ubuntu中持续捕获rtsp 视频(CCTV)。 (在Putty中)

我尝试在 Python 中使用 OpenCV 来打开rtsp,但程序会突然终止。

video_capture = cv2.VideoCapture("rtsp://stream_link/")
while True:
    ret, frame = video_capture.read()
    cv2.imwrite(name,frame)

然后,我转向使用vlc。

vlc -vvv rtsp://192.168.1.128:1554/11 --sout=file/ts:/media/path/to/save/location/recording-$(date +"%Y%m%d%H%M%S").ts -I dummy --stop-time=480 vlc://quit

此外,还有一个巨大的错误早餐。

我正在寻求帮助如何在命令行中捕获ubuntu中的rtsp。谢谢。

1 个答案:

答案 0 :(得分:1)

使用ffmpeg几乎总是最好的主意:

ffmpeg -i rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov test.mp4

要仅捕获前5秒,您可以使用-t 00:00:05,如下所示:

ffmpeg -i rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov -t 00:00:05 test.mp4

更新:我想到的唯一一个为什么有人低估了这个答案可能是因为我没有写下如何连续分段收到的流,所以这里是如何做到的:< / p>

ffmpeg -i rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov -c copy -map 0 -segment_time 4 -f segment output%03d.mp4

这将收到rtsp流并每4秒创建一次output000.mp4,output001.mp4等。