我有两个 AXIS IP 摄像机通过 RTSP/RTP 流式传输 H264 流。两台摄像机都设置为与同一个 NTP 服务器同步,所以我假设两台摄像机将具有相同的精确时钟(可能会以毫秒为单位的微小差异)。
在我的应用程序中,两个摄像头都指向相同的 View ,并且需要同时处理两个摄像头图像。因此,我想使用 GStreamer 同步图像捕获。
我曾尝试在不同的 cmd 提示下分别调用两个管道,但视频相隔 2-3 秒 .
有人可以建议使用 gstreamer 管道来同步两个 H264 流并将它们录制到单独的视频文件中吗?
谢谢!
ARM
最佳答案
我可以使用 gst-launch 启动管道,如下所示。与启动两个管道相比,它在捕获的帧同步方面表现出良好的改进。大多数情况下,它们相差 0-500 毫秒。尽管如此,我仍然希望以小于 150 毫秒的精度同步它们。
rtspsrc location=rtsp://192.168.16.136:554/axis-media/media.amp?videocodec=h264 \
! rtph264depay ! h264parse \
! splitmuxsink max-size-time=10000000000 location=axis/video_136_%d.mp4 \
rtspsrc location=rtsp://192.168.16.186:554/axis-media/media.amp?videocodec=h264 \
! rtph264depay ! h264parse \
! splitmuxsink max-size-time=10000000000 location=axis/video_186_%d.mp4
感谢有人可以指出其他想法!~ ARM
关于gstreamer - 使用 GStreamer 同步两个 RTSP/RTP H264 视频流捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37555171/