Closed Bug 1704926 Opened 1 year ago Closed 1 year ago

[wpt-sync] Sync PR 28461 - [webcodecs] Implement regions.

Categories

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

task

Tracking

(firefox90 fixed)

RESOLVED FIXED
90 Branch
Tracking Status
firefox90 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

b'Dan Sanders <sandersd@chromium.org>' wrote:

[webcodecs] Implement regions.

This change deprecates cropLeft, cropTop, cropWidth, and cropHeight
everywhere in WebCodecs, in favor of a new visibleRegion
parameter/attribute. A matching codedRegion attribute is added where
relevant.

Additionally, the PlaneInit.rows parameter is removed. There is no
replacement, but existing code should still work.

Bug: 1176464
Change-Id: Id9247452bb39107083e1d79faa7ab2b21a777ea1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2812427
Commit-Queue: Dan Sanders \<sandersd@chromium.org>
Reviewed-by: Thomas Guilbert \<tguilbert@chromium.org>
Reviewed-by: Chrome Cunningham \<chcunningham@chromium.org>
Cr-Commit-Position: refs/heads/master@{#872092}

PR 28461 applied with additional changes from upstream: f8d1062b23f095e6e8fa2aabc1c73ce18e6cb2f9

CI Results

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

Total 10 tests and 4 subtests

Status Summary

Firefox

OK : 10
FAIL: 120

Chrome

OK : 10
PASS: 76
FAIL: 44

Safari

OK : 10
FAIL: 120

Links

GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/webcodecs/video-decoder.any.html
Test that VideoDecoder.isConfigSupported() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with minimal valid config: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with valid expanded config: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() returns a parsed configuration: FAIL (Chrome: FAIL, Safari: FAIL)
Test VideoDecoder construction: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.configure() with various codec strings: FAIL (Chrome: PASS, Safari: FAIL)
Decode VP9: FAIL (Chrome: FAIL, Safari: FAIL)
Verify reset() suppresses output and rejects flush: FAIL (Chrome: PASS, Safari: FAIL)
Verify closed VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Verify unconfigured VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Decode corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Decode empty VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Close while decoding corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-decoder.any.worker.html
Test that VideoDecoder.isConfigSupported() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with minimal valid config: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with valid expanded config: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() returns a parsed configuration: FAIL (Chrome: FAIL, Safari: FAIL)
Test VideoDecoder construction: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.configure() with various codec strings: FAIL (Chrome: PASS, Safari: FAIL)
Decode VP9: FAIL (Chrome: FAIL, Safari: FAIL)
Verify reset() suppresses output and rejects flush: FAIL (Chrome: PASS, Safari: FAIL)
Verify closed VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Verify unconfigured VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Decode corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Decode empty VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Close while decoding corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-frame-serialization.any.html
Test we can clone a VideoFrame.: FAIL (Chrome: FAIL, Safari: FAIL)
Verify closing a frame doesn't affect its clones.: FAIL (Chrome: PASS, Safari: FAIL)
Verify cloning a closed frame throws.: FAIL (Chrome: PASS, Safari: FAIL)
Verify closing frames does not propagate accross contexts.: FAIL (Chrome: PASS, Safari: FAIL)
Verify posting closed frames throws.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-frame-serialization.any.worker.html
Test we can clone a VideoFrame.: FAIL (Chrome: FAIL, Safari: FAIL)
Verify closing a frame doesn't affect its clones.: FAIL (Chrome: PASS, Safari: FAIL)
Verify cloning a closed frame throws.: FAIL (Chrome: PASS, Safari: FAIL)
Verify closing frames does not propagate accross contexts.: FAIL (Chrome: PASS, Safari: FAIL)
Verify posting closed frames throws.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-frame.any.worker.html
Test we can construct a VideoFrame.: FAIL (Chrome: FAIL, Safari: FAIL)
Test we can construct an odd-sized VideoFrame.: FAIL (Chrome: FAIL, Safari: FAIL)
Test we can read planar data from a VideoFrame.: FAIL (Chrome: PASS, Safari: FAIL)
Test we cannot read planar data from a closed VideoFrame.: FAIL (Chrome: PASS, Safari: FAIL)
Test constructing VideoFrames from closed ImageBitmap throws.: FAIL (Chrome: PASS, Safari: FAIL)
Test invalid planar constructed VideoFrames: FAIL (Chrome: FAIL, Safari: FAIL)
Test planar constructed I420 VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test planar constructed I420+Alpha VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test planar constructed NV12 VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test planar constructed RGB VideoFrames: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoFrame constructed VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test we can construct a VideoFrame from an offscreen canvas.: FAIL (Chrome: PASS, Safari: FAIL)
Test I420+Alpha VideoFrame and alpha={keep,discard}: FAIL (Chrome: FAIL, Safari: FAIL)
Test ABGR, ARGB VideoFrames with alpha={keep,discard}: FAIL (Chrome: FAIL, Safari: FAIL)
Test a VideoFrame constructed from canvas can drop the alpha channel.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-frame.any.html
Test we can construct a VideoFrame.: FAIL (Chrome: FAIL, Safari: FAIL)
Test we can construct an odd-sized VideoFrame.: FAIL (Chrome: FAIL, Safari: FAIL)
Test we can read planar data from a VideoFrame.: FAIL (Chrome: PASS, Safari: FAIL)
Test we cannot read planar data from a closed VideoFrame.: FAIL (Chrome: PASS, Safari: FAIL)
Test constructing VideoFrames from closed ImageBitmap throws.: FAIL (Chrome: PASS, Safari: FAIL)
Test invalid planar constructed VideoFrames: FAIL (Chrome: FAIL, Safari: FAIL)
Test planar constructed I420 VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test planar constructed I420+Alpha VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test planar constructed NV12 VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test planar constructed RGB VideoFrames: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoFrame constructed VideoFrame: FAIL (Chrome: PASS, Safari: FAIL)
Test we can construct a VideoFrame from an offscreen canvas.: FAIL (Chrome: PASS, Safari: FAIL)
Test I420+Alpha VideoFrame and alpha={keep,discard}: FAIL (Chrome: FAIL, Safari: FAIL)
Test ABGR, ARGB VideoFrames with alpha={keep,discard}: FAIL (Chrome: FAIL, Safari: FAIL)
Test a VideoFrame constructed from canvas can drop the alpha channel.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/videoFrame-drawImage.any.html
drawImage(VideoFrame) with canvas(48x36 srgb uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(480x360 srgb uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(48x36 display-p3 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(480x360 display-p3 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(48x36 rec2020 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(480x360 rec2020 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
/webcodecs/videoFrame-drawImage.any.worker.html
drawImage(VideoFrame) with canvas(48x36 srgb uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(480x360 srgb uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(48x36 display-p3 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(480x360 display-p3 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(48x36 rec2020 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with canvas(480x360 rec2020 uint8).: FAIL (Chrome: FAIL, Safari: FAIL)
/webcodecs/videoFrame-texImage.any.html
drawImage(VideoFrame) with texImage2D (48x36) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with texSubImage2D (48x36) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with texImage2D (480x360) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with texSubImage2D (480x360) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
/webcodecs/videoFrame-texImage.any.worker.html
drawImage(VideoFrame) with texImage2D (48x36) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with texSubImage2D (48x36) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with texImage2D (480x360) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)
drawImage(VideoFrame) with texSubImage2D (480x360) srgb.: FAIL (Chrome: FAIL, Safari: FAIL)

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/daed4ea99e33
[wpt PR 28461] - [webcodecs] Implement regions., a=testonly
https://hg.mozilla.org/integration/autoland/rev/7247d70cb3e1
[wpt PR 28461] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
You need to log in before you can comment on or make changes to this bug.