mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-01-15 09:31:30 +01:00
This adds a test to ensure that the wl_shm formats YUV420, NV12 and YUYV are decoded and converted to RGB correctly in GL-renderer. The test deliberately uses a 256 x 256 test image so that effects from width vs. pitch vs. stride cannot be observed, and row padding is zero. Also padding between planes is zero. Attempting to use a test image with less "round" dimensions lead to stride mismatch in GL-renderer, likely due to GL_UNPACK_ALIGNMENT being left at value 4. It is unclear if YUV wl_shm buffers' row stride needs to be aligned to 4 bytes or not, so I did not pursue fixing it. GL-renderer seems to be confusing width, pitch and stride even further, and not e.g. allow padding with ARGB buffers. See also: https://gitlab.freedesktop.org/wayland/weston/-/issues/354 Furthermore, the test arranges so that each 2x2 pixel block has the same color. This avoids having to consider chroma siting when sub-sampling. This way all the test cases can use the same reference image. The source image chocolate-cake.png is taken and copyright by Pekka Paalanen, hereby licensed as http://creativecommons.org/licenses/by-sa/4.0/ . Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com> |
||
|---|---|---|
| .. | ||
| reference | ||
| alpha-blending-test.c | ||
| bad-buffer-test.c | ||
| buffer-transforms-test.c | ||
| config-parser-test.c | ||
| devices-test.c | ||
| drm-smoke-test.c | ||
| event-test.c | ||
| input-timestamps-helper.c | ||
| input-timestamps-helper.h | ||
| internal-screenshot-test.c | ||
| ivi-layout-internal-test.c | ||
| ivi-layout-test-client.c | ||
| ivi-layout-test-plugin.c | ||
| ivi-shell-app-test.c | ||
| ivi-test.h | ||
| keyboard-test.c | ||
| linux-explicit-synchronization-test.c | ||
| matrix-test.c | ||
| meson.build | ||
| output-transforms-test.c | ||
| plugin-registry-test.c | ||
| pointer-test.c | ||
| presentation-test.c | ||
| roles-test.c | ||
| setbacklight.c | ||
| string-test.c | ||
| subsurface-shot-test.c | ||
| subsurface-test.c | ||
| surface-global-test.c | ||
| surface-screenshot-test.c | ||
| surface-test.c | ||
| text-test.c | ||
| timespec-test.c | ||
| touch-test.c | ||
| vertex-clip-test.c | ||
| viewporter-shot-test.c | ||
| viewporter-test.c | ||
| weston-test-client-helper.c | ||
| weston-test-client-helper.h | ||
| weston-test-desktop-shell.c | ||
| weston-test-fixture-compositor.c | ||
| weston-test-fixture-compositor.h | ||
| weston-test-runner.c | ||
| weston-test-runner.h | ||
| weston-test.c | ||
| weston-testsuite-data.h | ||
| xwayland-test.c | ||
| yuv-buffer-test.c | ||