Bug 229433

Summary: WebGL's video tests now require HTMLVideoElement.play's Promise to be reliable
Product: WebKit Reporter: Kenneth Russell <kbr>
Component: WebGLAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: dino, eric.carlson, kbr, kkinnunen, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Local Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 200344    
Bug Blocks:    

Description Kenneth Russell 2021-08-23 19:00:54 PDT
As of https://github.com/KhronosGroup/WebGL/pull/3319 , Khronos' WebGL conformance tests covering video-to-texture uploads require that the Promise returned from HTMLVideoElement.play be reliable. Once it's been awaited, the next texImage2D from that video element must produce a non-empty frame.

Bug 200344 covers existing issues in the promise resolution; once that's fixed, more refinement may be needed to make the revised tests pass.

For the record, Chromium implements requestVideoFrameCallback and that's why (we expect) these updated tests to pass there. Chromium doesn't yet make this guarantee about awaiting HTMLVideoElement.play's Promise - filing a bug about that now.
Comment 1 Kenneth Russell 2021-08-23 19:02:34 PDT
Filed against Chromium as:

When HTMLVideoElement.play Promise resolves, texImage2D from video should return non-empty frame
https://bugs.chromium.org/p/chromium/issues/detail?id=1242760
Comment 2 Radar WebKit Bug Importer 2021-08-24 10:27:50 PDT
<rdar://problem/82298333>