X11Forwarding中是否有丢帧选项?


8

我正在通过X11Forwarding在无头远程VM(Ubuntu 16.04)上运行计算机视觉模型,并具有良好的Putty和Xming作为Windows X Server。

一切都很好,但是如果客户端-服务器带宽无法跟上,就不会丢帧,这意味着我的应用程序速度变慢,如果带宽足够,它每秒只能渲染几帧,而它却可以处理数百帧。

X11转发中是否内置有强制掉帧选项,如果存在,如何打开它?


4
X11协议没有帧的概念,因此不支持丢帧(即没有重新同步点)。
西蒙·里希特

Answers:


9

我强烈建议在这种用例中使用Xpra:它不仅提供断开和重新连接到远程主机上运行的X应用程序的功能,而且还支持各种图像编码窗口刷新设置,以提供良好的使用体验。不同的情况。

它具有本机Windows客户端,因此安装起来应该足够容易。您还需要将其安装在远程VM上,但这就像apt install xpra在Ubuntu 上一样简单。


这看起来很有希望,但是我似乎无法使其绑定到TCP端口。
evilSnobu

您是使用SSH还是直接进行连接
斯蒂芬·基特

我的Xorg是f ****。修复了它,现在一切都很好,这个Xpra东西真的很好,尤其是当您切换到HEVC(x265)编码时。非常非常好,没有阻塞。谢谢!
evilSnobu

我不能再推荐Xpra。这可能是当今最好的免费选项。
wbkang

5

根据这个相关问题X11Forwarding 由于X11协议在设计时并没有考虑到位图绘制性能,因此,似乎不是图形内嵌应用程序的最佳选择。

它基本上将绘图指令发送到网络,如果我们正在谈论带有文本的几个窗口,这是“很好的”,但是对于每一帧更改数百万个像素来说,显然过大了,特别是当网络遇到高延迟/抖动/数据包时失利。

如所提到问题的答案中所建议,您可以尝试x2go 并查看它是否符合您的需求。

根据评论编辑

如果x2go不行,您可以尝试一下VNC具有掉帧功能的设备。例如,我x11vnc用于从远程连接x11vnc -display :0 -auth .Xauthority到显示器的钩子连接到桌面。

不知道它是否可以使用,Xming但是您可以尝试一下。


不幸的是,x2go的Windows端口已完全损坏,已经尝试过了。
evilSnobu

过去,我还尝试在Mac客户端上使用x2go,并放弃了它。
Rui F Ribeiro

3

纯粹的X11协议本身不能很好地保证传输,并且无法通过SSH传输。

我推荐NoMachine。它可以进行带宽压缩和网络优化。它还具有Mac,Windows和Linux的客户端。

PS。NoMachine有免费和付费版本。我一直免费。

NoMachine

对于虚拟桌面(情况a),默认情况下启用X11矢量图形模式(以前​​称为“轻量级”模式)。该方法通过利用压缩技术,往返抑制和缓存算法优化X11协议,从而减少了客户端和服务器上的带宽使用量(以及HW要求,因为它占用较少的CPU)。

X11矢量图形模式很方便避免图像质量损失,并且在使用传统GUI或大量文本时非常有用,但不建议用于多媒体内容或具有许多图形效果的应用程序。

有关X11矢量图形模式的更多信息:https : //www.nomachine.com/AR02L00779

对于与物理桌面的连接或在虚拟桌面上禁用X11矢量图形模式时(情况b),NoMachine通过基于标准编解码器的视频和图像编码以及NoMachine自身开发的多种技术来实现显示协议。

它还实现了网络自适应显示质量技术。这意味着NoMachine在检测到网络拥塞时将自动尝试降低显示质量。该机制的目的是使会话在所有不同的网络条件下保持响应。

有关找到最适合多媒体播放的配置的更多信息:

https://www.nomachine.com/AR01M00832


是“像在付费广告中的封闭式广告一样免费”还是“像斯托曼一样免费”?
管道

@pipe我想在中间某个地方。我非常满意地使用了免费版本供个人使用,我也从侧面参与并且知道使用免费版本的大型项目。付费版本显然可以省去一些较有经验的人告诉我的事情,即在更复杂的环境中自定义事物时会遇到麻烦。
Rui F Ribeiro
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.