Raspberry Pi 2 - 在纵向模式下移动物体时出现失真

Raspberry Pi 2 - Distortion while moving objects in Portrait mode

提问人:DrenImeraj 提问时间:10/15/2015 最后编辑:Arlind HajredinajDrenImeraj 更新时间:12/20/2022 访问量:604

问:

我目前正在开发一个基于运行 Raspbian 的 Raspberry Pi 2 的 Kiosk 系统,该系统运行 Java 应用程序。一切都运行良好,除了物体移动时屏幕上出现的失真。通常,这不会成为问题,但我有一个关于Java应用程序的列表,它将被用户广泛使用。在此列表上滚动时,失真是可见的。

下面的链接显示了它的实际效果:

显示失真的 GIF

到目前为止我所知道的:

  • 这仅在屏幕旋转时发生。我已将屏幕旋转了 270*,方法是设置“display_rotate=3”/boot/config.txt
  • 它不依赖于屏幕分辨率或“hdmi_group"
  • 这不仅发生在 GUI 上,在启动时也可以看到失真
  • 锁频不影响失真
  • 它总是出现在屏幕的右下角
  • Ubuntu Mate 中也存在此问题
java 树莓派 linux-device-driver

评论

5赞 TheCodeArtist 1/7/2016
似乎是“屏幕撕裂”。您知道如何在正在使用的软件堆栈中启用(wait-for-vsync)吗?或者检查配置选项以双倍/三重缓冲显示帧缓冲区?VSYNC
0赞 Peter Brittain 1/10/2016
您是否尝试过更新固件?查看 raspberrypi.stackexchange.com/questions/37645/...
0赞 pietv8x 1/12/2016
它是否发生在其他旋转角度(例如 90 度)上?
0赞 lumos0815 1/12/2016
正如@TheCodeArtist已经提到的 - 这被称为撕裂。您需要一个硬件加速的图形库(使用 OpenGL)。如果没有 vsync,您就无法进行更改以消除撕裂。

答:

0赞 Electro lemon 1/12/2016 #1

我不是 Linux 或类似方面的专家,但请听我说,

你说你在配置文件中旋转屏幕。你能把它放回默认值吗?为什么需要旋转?因为这种旋转可能会导致它偏离对齐屏幕的某些部分。对于您的问题,我首先要考虑对该变量进行实验,看看它是如何变化的。:)

0赞 Justin Jack 6/19/2020 #2

看看这个: https://github.com/justincjack/rasp_pi_graphics

这是我写的一个库,肯定会解决你的问题。它将创建一个带有 C 头文件的共享对象(和静态对象)。如果你能为它创建 Java 绑定,以便能够使用它生成的库,你的问题就结束了。

我找不到任何真正有效的信息,所以这是几周工作的产物。

它允许流畅的渲染,没有撕裂,也没有对 libdri (libdrm)/kms 的疯狂深入挖掘。