我使用 VLC 将 IP 摄像机的 RTSP 流保存为 mp4 文件。在转换/保存对话框中,我选择
+ Encapsulation: MP4/MOV
+ Video codec: Keep original video track (not using transcode)
VLC 已成功保存文件,但文件的一些元数据有误。文件大小约为 25GB(约 12 小时),但元数据中的持续时间为 7 分 25 秒。
Stream 0:
Codec: H264- MPEG-4 AVC (part 10) (avc1)
Video resolution: 1920x1080
Frame rate: 2701.222144
当我找到 7:25(进度条结束)时,视频并没有停止,vlc 仍然继续播放。
我也尝试使用 vlc 命令行,但保存的文件仍然有错误的元数据。
cvlc --rtsp-http RTSP_URL --sout "#std{access=file,dst=vlc.mp4,mux=mp4}" vlc://quit
我认为 VLC 的 RTSP 流时间戳有问题。有人能告诉我关于这个问题的一些想法吗?非常感谢!
答案1
我的解决方案:
- 将流保存为多个小文件(例如:每个文件 60 分钟)
- 使用 untrunc 工具修复损坏的文件