You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

嵌入式Linux运行X11VNC服务时VNC客户端鼠标光标严重跳转问题

X11VNC 帧缓冲区模式下鼠标跳转问题解决方案

问题根因

该故障由缩放参数配置错误、UINPUT绝对坐标范围未显式声明导致,x11vnc无法正确换算VNC客户端输入坐标和嵌入式设备帧缓冲区的物理坐标对应关系,最终出现鼠标跳变。

修复步骤

  • 首先执行fbset命令确认/dev/fb0的真实分辨率、色深参数,例如返回值中geometry 1280 480 1280 960 16就代表物理分辨率为1280*480,色深16位。
  • 修正-scale参数,原命令中-scale 640x480x16x1280属于格式错误,不需要将色深、原始分辨率拼接到缩放参数中,仅需要填写VNC客户端要显示的目标分辨率即可,例如要缩放到640*480输出则写-scale 640x480。
  • 补全UINPUT绝对坐标范围声明,在-pipeinput参数后追加和帧缓冲区物理分辨率匹配的坐标范围,例如帧缓冲区实际分辨率为1280*480则修改为-pipeinput UINPUT:direct_abs=/dev/uinput:abs_x=1280:abs_y=480。
  • 删除原命令中的-nodragging参数,该参数会关闭拖拽动作的实时坐标同步,会加剧鼠标跳变问题。
  • 追加-nomodtweak参数,避免x11vnc擅自修改输入设备的坐标映射规则。

修复后参考启动命令

假设帧缓冲区物理分辨率为1280480,VNC输出分辨率为640480:

x11vnc -rfbport 5901 -no6 -rawfb /dev/fb0 -scale 640x480 -verbose -cursor none -pipeinput UINPUT:direct_abs=/dev/uinput:abs_x=1280:abs_y=480 -nomodtweak

如果调整后仍然存在鼠标跳转问题,可以在上述命令基础上追加-pointer_mode 1参数,强制使用绝对坐标映射模式。

内容的提问来源于stack exchange,提问作者codeshredder726b

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 10:24:04