mirror of
https://gitlab.freedesktop.org/wayland/weston
synced 2024-10-15 16:58:54 +00:00
ae12b9596d
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> |
||
---|---|---|
.. | ||
alpha_blend_monotonic-00.png | ||
basic-test-card.png | ||
chocolate-cake.png | ||
internal-screenshot-bad-00.png | ||
internal-screenshot-good-00.png | ||
output_1-90_buffer_1-NORMAL-00.png | ||
output_1-90_buffer_2-90-00.png | ||
output_1-180_buffer_1-NORMAL-00.png | ||
output_1-180_buffer_2-90-00.png | ||
output_1-270_buffer_1-NORMAL-00.png | ||
output_1-270_buffer_2-90-00.png | ||
output_1-FLIPPED_90_buffer_1-NORMAL-00.png | ||
output_1-FLIPPED_90_buffer_2-90-00.png | ||
output_1-FLIPPED_180_buffer_1-NORMAL-00.png | ||
output_1-FLIPPED_180_buffer_2-90-00.png | ||
output_1-FLIPPED_270_buffer_1-NORMAL-00.png | ||
output_1-FLIPPED_270_buffer_2-90-00.png | ||
output_1-FLIPPED_buffer_1-NORMAL-00.png | ||
output_1-FLIPPED_buffer_2-90-00.png | ||
output_1-NORMAL_buffer_1-90-00.png | ||
output_1-NORMAL_buffer_1-180-00.png | ||
output_1-NORMAL_buffer_1-270-00.png | ||
output_1-NORMAL_buffer_1-FLIPPED-00.png | ||
output_1-NORMAL_buffer_1-FLIPPED_90-00.png | ||
output_1-NORMAL_buffer_1-FLIPPED_180-00.png | ||
output_1-NORMAL_buffer_1-FLIPPED_270-00.png | ||
output_1-NORMAL_buffer_1-NORMAL-00.png | ||
output_1-NORMAL_buffer_2-90-00.png | ||
output_1-NORMAL_buffer_2-180-00.png | ||
output_1-NORMAL_buffer_2-FLIPPED-00.png | ||
output_1-NORMAL_buffer_2-NORMAL-00.png | ||
output_1-NORMAL_buffer_3-FLIPPED_90-00.png | ||
output_1-NORMAL_buffer_3-NORMAL-00.png | ||
output_2-90_buffer_1-90-00.png | ||
output_2-90_buffer_1-180-00.png | ||
output_2-90_buffer_1-270-00.png | ||
output_2-90_buffer_1-FLIPPED-00.png | ||
output_2-90_buffer_1-FLIPPED_90-00.png | ||
output_2-90_buffer_1-FLIPPED_180-00.png | ||
output_2-90_buffer_1-FLIPPED_270-00.png | ||
output_2-90_buffer_1-NORMAL-00.png | ||
output_2-90_buffer_2-90-00.png | ||
output_2-90_buffer_2-180-00.png | ||
output_2-90_buffer_2-FLIPPED-00.png | ||
output_2-90_buffer_2-NORMAL-00.png | ||
output_2-90_buffer_3-FLIPPED_90-00.png | ||
output_2-90_buffer_3-NORMAL-00.png | ||
output_2-180_buffer_1-NORMAL-00.png | ||
output_2-180_buffer_2-90-00.png | ||
output_2-FLIPPED_buffer_1-NORMAL-00.png | ||
output_2-FLIPPED_buffer_2-90-00.png | ||
output_2-NORMAL_buffer_1-NORMAL-00.png | ||
output_2-NORMAL_buffer_2-90-00.png | ||
output_3-FLIPPED_270_buffer_1-NORMAL-00.png | ||
output_3-FLIPPED_270_buffer_2-90-00.png | ||
output_3-NORMAL_buffer_1-NORMAL-00.png | ||
output_3-NORMAL_buffer_2-90-00.png | ||
subsurface_z_order-00.png | ||
subsurface_z_order-01.png | ||
subsurface_z_order-02.png | ||
subsurface_z_order-03.png | ||
subsurface_z_order-04.png | ||
viewport_upscale_solid-00.png | ||
yuv-buffer-00.png |