Onvif协议客户端开发【4.rtsp流用VLC播放/存储】

在看别人写的跟ONVIF有关的文章的时候,当我们获取到rtsp地址之后可以用VLC来播放和存储网络流,自己试了一下,果然可以。而且VLC是跨平台的。接下来自己就想用vlc命令行的方式来播放和存储rtsp网络流,具体参考了下面这个wiki(比官方详细一点):

https://wiki.videolan.org/Documentation:Streaming_HowTo/Receive_and_Save_a_Stream/

播放可以使用下面这个命令:

vlc -vvv rtsp://www.hardradio.com/tonbeme.mov

存储可以使用下面这个命令:

vlc your_input_file_or_stream_here –sout=file/ps:go.mpg

注意这里的file就是file,应该表示存成文件

ps是存储的类型,还可以是ogg或者ts,

go.mpg就是你存储的文件名加后缀,可以自己修改。

最后我们需要在c语言里面调用这条命令,我使用了popen这个函数:

popen((const char*)cmd_str, “r”);

这里的cmd_str就是你要执行的命令的字符串了。

到此我们已经可以将rtsp的网络流存到本地了。