在VLC中录制h.264 rtsp视频流

时间:2016-03-30 09:08:40

标签: video-streaming vlc video-capture

我尝试使用Windows中的VLC命令行从IP摄像机捕获并记录到文件rtsp视频流(h.264)。

我可以使用简单的方式查看流:

vlc -vvv rtsp://10.1.5.228:554/live.sdp 

每次都有效。但是,当我尝试使用

录制30秒视频时
vlc -vvv rtsp://10.1.5.228:554/live.sdp --sout file/mp4:test.mp4 --run-time=30 vlc://quit

结果不稳定 - 有时它实际上记录了视频(然后它的大小约为5 MB),但大多数情况下它只创建几乎空的mp4文件(它总是713个字节)。

我认为它可能与h.264帧间压缩(由相机编码)有一些共同之处,但问题是:如何解决此问题并在每次尝试时记录流。

1 个答案:

答案 0 :(得分:0)

这看起来就像你只是将rtsp流转储到一个文件中,这可能容易出错。尝试将你的sout链变成这样的东西。将X和路径替换为您的环境。

 vlc -vvv -I dummy rtsp://10.1.5.228:554/live.sdp --sout='#transcode{venc=x264{aud,profile=baseline,level=30,no-cabac},vcodec=h264,vb=800,width=XXX,height=XXX,fps=24.0}:std{mux=mp4,dst="/Your/Path/To/recordings/recording_XXX.mp4",access=file}' --network-caching=3000

简单地将流转储到文件中将如下所示:

 vlc -vvv -I dummy rtsp://10.1.5.228:554/live.sdp --sout='#standard{access=file,mux=mp4,dst=/Your/Path/recording.mp4}'