VLC录制rtsp流

时间:2013-02-12 08:28:14

标签: stream record rtsp vlc transcode

我在使用VLC播放器录制rtsp流时遇到问题。实际上我的方法适用于MacOS X,但在Windows中并不适用。命令行:

vlc -vvv rtsp://admin:admin@192.168.0.151/live/h264/ --sout="#transcode{vcodec=mp4v,vfilter=canvas{width=800,height=600}}:std{access=file,mux=mp4,dst=C:\123.mp4}"

在MacOS上它工作正常,但在Windows下它会创建不可读的文件。 MediaInfo输出:

General
Complete name                            : C:\123.mp4
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom
File size                                : 1.08 MiB

有什么建议吗?

2 个答案:

答案 0 :(得分:3)

好像您的目标网址不正确。试试这个:

vlc -vvv rtsp://admin:admin@192.168.0.151/live/h264/ --sout="#transcode{vcodec=mp4v,vfilter=canvas{width=800,height=600}}:std{access=file,mux=mp4,dst=C:\\123.mp4}"

答案 1 :(得分:2)

对于 Linux 用户,单独使用 ffmpeg 可以立即生效。

如果您想在录制时观看流,请写入 .mkv 而不是 .mp4

由于 video.mp4 参数,此示例将覆盖主文件夹中的文件 -y,而不会询问,并保留原始编解码器。

ffmpeg -i rtsp://192.168.42.1/live -vcodec copy -acodec copy -y ~/video.mp4

注意:此示例 url 适用于 Ambarella Xiaomi Mijia 4K 摄像机,像许多 wifi ip 摄像机一样,您必须首先通过 telnet 激活流,对于这个特殊的在通过 rtsp:// 读取流之前对要发送的命令进行建模:

echo '{"msg_id":257,"token":0}' | telnet 192.168.42.1 7878