networking - 如何在不与服务器断开连接的情况下在 ip camera 的 rtsp 流之间切换以实现快速切换?
问题描述
有没有办法在不断开与摄像机上的 RTSP 服务器断开连接的情况下在 IP 摄像机的不同通道(流)之间切换?由于使用 VLC 或 FFmpeg 时每个频道的 URI 不同,您需要停止第一个频道,然后使用与第二个频道对应的 URI 再次建立连接并开始流式传输。这似乎效率低下并且会导致切换延迟。我想知道是否有任何方法可以解决这个问题?
解决方案
您无法真正避免连接步骤,因为您需要它来启动和运行流。
您可以做的是让多个流并行运行,并选择在给定时间显示哪一个。
例如,如果您只有少量流并且用户可能会定期在每个流之间切换,您可以同时连接所有流,使用单独的 VLC 实例或您正在使用的任何播放器,但只显示一个你想要的用户。
这里需要权衡网络和处理与快速切换,因此这可能对您不起作用,并且不会真正扩展到少量流之外。
如果您想支持更多的流,并且用户可能会按特定顺序导航,例如按顺序从一个频道或源切换到另一个,您只需预加载并启动列表中的下一个流即可准备好改变,并再次隐藏它,直到你想结束。电视解决方案中有时会使用类似的机制来支持快速频道切换。
推荐阅读
- c++ - 如何使用 CGI 流式传输运动 jpeg?
- python-3.x - 如何在matplotlib中使用对数刻度指定次要刻度位置而不进行标记?
- machine-learning - 使用均值偏移对图像块进行泛化?
- angular - 角材料表可扩展表行不扩展?
- jasper-reports - 在jasper报告中打印pdf时加粗文本
- apache - Tomcat 可能未启动或正在侦听错误的端口 (errno=13)
- c++ - 在不滥用 CMAKE_CXX_FLAGS 和 CMAKE_C_FLAGS 的情况下为单个目标设置 c-compiler 和 c++-compiler 标志
- r - 在 R 中的另一个函数中使用 data.table
- python - 在没有for循环的Python中计算点数组到线段之间的欧几里得距离
- javascript - iframe 中的脚本覆盖了主页的 JS