我的团队正在尝试在从属机器上播放不同的视频。每个视频都不同,但它们的播放时间应该是同步的。这是通过让主机将其播放时间数据发送给从属机器来实现的。
目前每台机器都运行两个 MPlayer 实例,这无法正常工作,因为两个实例无法监听同一个 UDP 端口,但我们已经使用了取样器,它将 UDP 数据报转发到多个端口。此外,我们还编写了自己的工具,允许我们将一个端口的数据报转发到另一个端口。
到目前为止,这两种方法都不太理想。当每台机器只使用一个从属实例时,同步工作正常。但是,如果使用两个实例,播放有时会变得非常不流畅。
还有其他方法可以让两个 MPlayer 实例在一台机器上同步吗?
我们的主命令:
-udp-master -udp-ip {_networkIp} -udp-port {_masterPort} -nogui -cache 1024 -framedrop video.mp4
我们的奴隶命令:
-udp-slave -udp-port {MasterPort} -xy 1920 -geometry 0:0 -noborder -cache 1024 -framedrop video1.mp4
-udp-slave -udp-port {MasterPort} -xy 1920 -geometry 0:0 -noborder -cache 1024 -framedrop video2.mp4
答案1
我们仅使用一个分辨率为 3840x1080 的视频就解决了这个问题。这样我们就不需要第二个实例了。