1

我有一个本地服务器,它启动两个 GStreamer 管道到我的计算机,但它需要偶尔停止和启动流。我也在使用 lavfi-complex 来堆叠流。当服务器停止流并再次启动(到相同的 IP 地址和端口)时,我收到大量此消息:

sdp: RTP: dropping old packet received too late

然后我开始流,loadfile然后将属性video-add设置lavfi-filter[vid1][vid2] vstack [vo]. 如果我只有一个流并且没有过滤器(只有 loadfile),我可以停止服务器,重新启动它,然后再次运行 loadfile 并加载文件。但是,使用 lavfi-filter,文档说:

无法在运行时更改连接到过滤器的轨道,除非您明确更改 lavfi-complex 属性并设置新的轨道分配。当图形改变时,轨迹选择也会根据使用的标签而改变。

我可以将 lavfi-filter 属性更改为空字符串,再次发送 loadfile 命令,然后将 lavfi-filter 设置回来,但输出保持空白。我为第二个视频尝试了 id=2 的 loadfile 和 video-reload,但 video-reload 命令失败。

是否有一系列命令可以导致 mpv 停止并重新加载流?或者更好的是,一些配置参数会使其不丢弃旧数据包?

4

0 回答 0