Hi all, Is there any way to make weston not rotate a particular window? Any kind of ugly workaround will do.
Larger context around it -- high resolution video on an embedded board becomes super jerky when the display is rotated, and plays smoothly when it's not. So one idea is to pre-rotate the video. Full details below: There's an i.MX6DL embedded board, running community flavor of Yocto BSP (meta-freescale) with weston (8.0.0) and gstreamer 1.16. DRM backend is used, with etnaviv driver. FullHD LVDS display is connected, natively in landscape mode, but must be used in portrait mode, so it's rotated in weston.ini (transform=270). Now the problem: higher resolution video (about half of FullHD, occupying half of the screen) is very teared/jerky. FPS by itself is not an issue, reported around 30 by fpsdisplaysink. Now if display rotation is disabled (transform=0), video is smooth! Video is played via gst-launch-1.0 with waylandsink. I've backported "rotate-method" waylandsink support, which effectively calls wl_surface_set_buffer_transform(), among other things. The idea was to match weston display rotation and video rotation so that they cancel out. The commit didn't apply cleanly, but I think I've figured it out and ported properly. Video is indeed rotated, but still teared/jerky, no improvement at all (tried both CW and CCW just in case). Thanks, Ivan