如何在不与服务器断开连接的情况下在网络摄像机的 rtsp 流之间切换以进行快速切换?

问题描述

有什么方法可以在不与摄像机上的 RTSP 服务器断开连接的情况下在 IP 摄像机的不同频道(流)之间切换?由于使用 VLC 或 FFmpeg 时每个频道的 URI 不同,因此您需要停止第一个频道,然后使用与第二个频道对应的 URI 再次建立连接并开始流式传输。这似乎效率低下并且会导致切换延迟。我想知道有没有办法解决这个问题?

解决方法

您无法真正避免连接步骤,因为您需要它来启动和运行您的流。

您可以做的是让多个流并行运行,然后选择在给定时间显示哪个流。

例如,如果您只有少量流并且用户可能会定期在每个流之间切换,您可以同时连接所有流,使用单独的 VLC 实例或您正在使用的任何播放器,但是只向用户显示你想要的那个。

这里需要在网络和处理与快速切换之间进行权衡,因此这可能对您不起作用,并且不会真正扩展到少量流之外。

如果您想支持更多的流,并且用户可能会按特定顺序导航,例如按顺序从一个频道或源切换到另一个,您可以预先加载并启动列表中的下一个流以准备更改,然后再次隐藏它直到您想要结束。电视解决方案有时会使用类似的机制来支持快速频道切换。