[Webkit-unassigned] [Bug 236140] New: MediaPlayerPrivateMediaStreamAVFObjC needs the GPUP context to create GPUP ImageBuffers

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Feb 4 07:15:02 PST 2022


https://bugs.webkit.org/show_bug.cgi?id=236140

            Bug ID: 236140
           Summary: MediaPlayerPrivateMediaStreamAVFObjC needs the GPUP
                    context to create GPUP ImageBuffers
           Product: WebKit
           Version: WebKit Local Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Media
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: kkinnunen at apple.com

MediaPlayerPrivateMediaStreamAVFObjC needs the GPUP context to create GPUP ImageBuffers

Captured video frames are stored in GPUP and accessed via RemoteVideoFrameProxy (which is a MediaSample for now).


To paint this to document or canvas (not compositing), we need to get an ImageBuffer and draw it.

To get an ImageBuffer, we need to ask GPUP for RemoteImageBufferProxy (WP) out of the video frame.

RemoteVideoFrameProxy is constructed when GPUP sends a GPUP video frame.

This construction needs access to other GPUP context to reference various implementations.
In particular, it needs RemoteRenderingContextProxy (WP).

The way this is done in other places is that WebChromeClient is the factory object that decides what kind of class to create: either local one or GPUP one. WebChromeClient has also access to all the page-related GPUP context.

For example: RemoteGraphicsContextGL (GPUP) needs RemoteRenderingBackend (GPUP). So RemoteGraphicsContextProxy (WP) can refer to RemoteRenderingBackendProxy (WP)

Same for MediaPlayerPrivateMediaStreamAVFObjC:
Whatever takes GPUP video frame objects, creates the video frames for MediaPlayerPrivateMediaStreamAVFObjC. It needs to have access to WP-side GPUP context, essentially the objects held in WebChromeClient.

Thus all these Media capture communication interfaces should be probably instantiated via WebChromeClient

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20220204/244eeb62/attachment.htm>


More information about the webkit-unassigned mailing list