Closed Bug 1778685 Opened 2 years ago Closed 2 years ago

[wpt-sync] Sync PR 34737 - [WebCodecs] Ensure orientation is set on YUV image decodes.

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox104 fixed)

RESOLVED FIXED
104 Branch
Tracking Status
firefox104 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 34737 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/34737
Details from upstream follow.

Dale Curtis <dalecurtis@chromium.org> wrote:

[WebCodecs] Ensure orientation is set on YUV image decodes.

While the RGB decoding path was always setting the orientation, it
was overlooked on the YUV decoding path. As such, this change adds
code to set it and tests to ensure it doesn't regress.

Fixed: 1342672
Change-Id: I7b8f7f05502a040525cc84fc60f2dd12a42211c0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3751369
Reviewed-by: Thomas Guilbert \<tguilbert@chromium.org>
Commit-Queue: Thomas Guilbert \<tguilbert@chromium.org>
Auto-Submit: Dale Curtis \<dalecurtis@chromium.org>
Commit-Queue: Dale Curtis \<dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1021792}

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, and Chrome on GitHub CI

Total 6 tests and 6 subtests

Status Summary

Firefox

OK : 6
FAIL: 108

Chrome

OK : 6
PASS: 90
FAIL: 18

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /webcodecs/image-decoder-image-orientation-none.https.html [wpt.fyi]
    • Test JPEG w/ EXIF orientation top-left on canvas w/o orientation: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation top-right on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation bottom-right on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation bottom-left on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation left-top on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation right-top on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation right-bottom on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation left-bottom on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation top-left on canvas w/o orientation: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation top-right on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation bottom-right on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation bottom-left on canvas w/o orientation.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation left-top on canvas w/o orientation.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation right-top on canvas w/o orientation.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation right-bottom on canvas w/o orientation.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation left-bottom on canvas w/o orientation.: FAIL (Chrome: FAIL)
  • /webcodecs/image-decoder.crossOriginIsolated.https.any.html [wpt.fyi]
    • Test ImageDecoder decoding with a SharedArrayBuffer source: FAIL (Chrome: PASS)
    • Test ImageDecoder decoding with a Uint8Array(SharedArrayBuffer) source: FAIL (Chrome: PASS)
  • /webcodecs/image-decoder.crossOriginIsolated.https.any.worker.html [wpt.fyi]
    • Test ImageDecoder decoding with a SharedArrayBuffer source: FAIL (Chrome: PASS)
    • Test ImageDecoder decoding with a Uint8Array(SharedArrayBuffer) source: FAIL (Chrome: PASS)
  • /webcodecs/image-decoder.https.any.worker.html [wpt.fyi]
    • Test JPEG image decoding.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation top-left.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation top-right.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation bottom-right.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation bottom-left.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation left-top.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation right-top.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation right-bottom.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation left-bottom.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation top-left.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation top-right.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation bottom-right.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation bottom-left.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation left-top.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation right-top.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation right-bottom.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation left-bottom.: FAIL (Chrome: FAIL)
    • Test PNG image decoding.: FAIL (Chrome: PASS)
    • Test AVIF image decoding.: FAIL (Chrome: PASS)
    • Test high bit depth HDR AVIF image decoding.: FAIL (Chrome: PASS)
    • Test multi-track AVIF image decoding w/ preferAnimation=false.: FAIL (Chrome: PASS)
    • Test multi-track AVIF image decoding w/ preferAnimation=true.: FAIL (Chrome: PASS)
    • Test WEBP image decoding.: FAIL (Chrome: PASS)
    • Test GIF image decoding.: FAIL (Chrome: PASS)
    • Test JPEG image YUV 4:2:0 decoding.: FAIL (Chrome: PASS)
    • Test AVIF image YUV 4:2:0 decoding.: FAIL (Chrome: PASS)
    • Test AVIF image YUV 4:2:2 decoding.: FAIL (Chrome: PASS)
    • Test AVIF image YUV 4:4:4 decoding.: FAIL (Chrome: PASS)
    • Test WEBP image YUV 4:2:0 decoding.: FAIL (Chrome: PASS)
    • Test invalid mime type rejects decode() requests: FAIL (Chrome: PASS)
    • Test invalid mime type rejects decodeMetadata() requests: FAIL (Chrome: PASS)
    • Test out of range index returns RangeError: FAIL (Chrome: PASS)
    • Test partial decoding without a frame results in an error: FAIL (Chrome: PASS)
    • Test completed property on fully buffered decode: FAIL (Chrome: PASS)
    • Test decode, decodeMetadata after no track selected.: FAIL (Chrome: PASS)
    • Test track selection in multi track image.: FAIL (Chrome: PASS)
    • Test ReadableStream of gif: FAIL (Chrome: PASS)
    • Test that decode requests are serialized.: FAIL (Chrome: PASS)
    • Test ReadableStream aborts promises on track change: FAIL (Chrome: PASS)
    • Test ReadableStream aborts completed on close: FAIL (Chrome: PASS)
    • Test ReadableStream resolves completed: FAIL (Chrome: PASS)
  • /webcodecs/image-decoder.https.any.html [wpt.fyi]
    • Test JPEG image decoding.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation top-left.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation top-right.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation bottom-right.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation bottom-left.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation left-top.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation right-top.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation right-bottom.: FAIL (Chrome: PASS)
    • Test JPEG w/ EXIF orientation left-bottom.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation top-left.: FAIL (Chrome: PASS)
    • Test 4:2:0 JPEG w/ EXIF orientation top-right.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation bottom-right.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation bottom-left.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation left-top.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation right-top.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation right-bottom.: FAIL (Chrome: FAIL)
    • Test 4:2:0 JPEG w/ EXIF orientation left-bottom.: FAIL (Chrome: FAIL)
    • Test PNG image decoding.: FAIL (Chrome: PASS)
    • Test AVIF image decoding.: FAIL (Chrome: PASS)
    • Test high bit depth HDR AVIF image decoding.: FAIL (Chrome: PASS)
    • Test multi-track AVIF image decoding w/ preferAnimation=false.: FAIL (Chrome: PASS)
    • Test multi-track AVIF image decoding w/ preferAnimation=true.: FAIL (Chrome: PASS)
    • Test WEBP image decoding.: FAIL (Chrome: PASS)
    • Test GIF image decoding.: FAIL (Chrome: PASS)
    • Test JPEG image YUV 4:2:0 decoding.: FAIL (Chrome: PASS)
    • Test AVIF image YUV 4:2:0 decoding.: FAIL (Chrome: PASS)
    • Test AVIF image YUV 4:2:2 decoding.: FAIL (Chrome: PASS)
    • Test AVIF image YUV 4:4:4 decoding.: FAIL (Chrome: PASS)
    • Test WEBP image YUV 4:2:0 decoding.: FAIL (Chrome: PASS)
    • Test invalid mime type rejects decode() requests: FAIL (Chrome: PASS)
    • Test invalid mime type rejects decodeMetadata() requests: FAIL (Chrome: PASS)
    • Test out of range index returns RangeError: FAIL (Chrome: PASS)
    • Test partial decoding without a frame results in an error: FAIL (Chrome: PASS)
    • Test completed property on fully buffered decode: FAIL (Chrome: PASS)
    • Test decode, decodeMetadata after no track selected.: FAIL (Chrome: PASS)
    • Test track selection in multi track image.: FAIL (Chrome: PASS)
    • Test ReadableStream of gif: FAIL (Chrome: PASS)
    • Test that decode requests are serialized.: FAIL (Chrome: PASS)
    • Test ReadableStream aborts promises on track change: FAIL (Chrome: PASS)
    • Test ReadableStream aborts completed on close: FAIL (Chrome: PASS)
    • Test ReadableStream resolves completed: FAIL (Chrome: PASS)
  • /webcodecs/videoFrame-canvasImageSource.html [wpt.fyi]
    • <video> and VideoFrame constructed VideoFrame: FAIL (Chrome: PASS)
    • CSSImageValue constructed VideoFrame: FAIL (Chrome: PASS)
    • Image element constructed VideoFrame: FAIL (Chrome: PASS)
    • SVGImageElement constructed VideoFrame: FAIL (Chrome: PASS)
    • Canvas element constructed VideoFrame: FAIL (Chrome: PASS)
    • Copy of canvas element constructed VideoFrame: FAIL (Chrome: PASS)
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/729b775722a0
[wpt PR 34737] - [WebCodecs] Ensure orientation is set on YUV image decodes., a=testonly
https://hg.mozilla.org/integration/autoland/rev/51d669f42371
[wpt PR 34737] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 104 Branch
You need to log in before you can comment on or make changes to this bug.