NEW 218186
CanvasCaptureMediaStreamTrack enables WebGL drawing buffer preserving and changes clear semantics
https://bugs.webkit.org/show_bug.cgi?id=218186
Summary CanvasCaptureMediaStreamTrack enables WebGL drawing buffer preserving and cha...
Kimmo Kinnunen
Reported 2020-10-26 06:36:01 PDT
CanvasCaptureMediaStreamTrack enables WebGL drawing buffer preserving This changes de-facto observable behavior, as websites expect rAF to prepare the drawing buffer for display. Web sites in general sometimes depend on the buffer clearing semantics.
Attachments
Kimmo Kinnunen
Comment 1 2020-10-26 06:38:43 PDT
Marking as blocking WebGL GPU Process work, since this is buggy that would need to be implemented in remote WebGL. This should be instead fixed by introducing a canvas monitoring callback for drawing buffer prepare and calling that before the buffer is being prepared for display.
Radar WebKit Bug Importer
Comment 2 2020-11-02 05:36:19 PST
Kimmo Kinnunen
Comment 3 2021-03-06 04:43:59 PST
So the purpose of the feature is to take the webgl canvas contents and send it through webrtc, if I understand correctly. What the implementation does is: 1) Turn on WebGL "preserve drawing buffer" flag of the webgl context. 2) Takes a snapshot of the webgl canvas contents at random point in time after each modification when the execution drops to main loop 3) send that picture over webrtc Steps 1 and 2 are not good.
Note You need to log in before you can comment on or make changes to this bug.