gecko-dev/gfx/gl
alwu efe35b01d5 Bug 1771011 - part2 : wrap media engine's dcomp handle, and use it on our gfx pipeline in the GPU process.r=jolin,sotaro
In this patch, we ask the media engine to return a handle for shareable
dcomp surface, which will then be packaged into a new texture data type
and being shared with the GPU process via the video bridge.

DcompSurfaceImage is the image which contains the handle texture data,
which doesn't support being accessed in the content process. When the
compositor uploads the image to the GPU process, the corresponding
texture host will be created.

The render texture host will be created by that texture host, and it
will be used in DCLayerTree. In DCLayerTree, we create a new type of
surface for our dcomp handle. DCSurfaceHandle will ask the render
texture host to reconstruct the surface by the handle shared from the
remote process (the handle is actually duplicated to the parent process
first due to the sandbox policy, and then be duplicated to the GPU
process later)

DCSurfaceHandle will attach that surface to its visual in order to
display the video frame directly. In the whole process, it's not
possible for Gecko to access any decoded video data which is protected by the
media engine itself.

Depends on D149941

Differential Revision: https://phabricator.services.mozilla.com/D151019
2022-08-13 23:48:07 +00:00
..
AndroidNativeWindow.h
AndroidSurfaceTexture.cpp Bug 1779166 - Mark two GLContexts as not owned by single threads. r=gfx-reviewers,lsalzman 2022-07-19 02:53:56 +00:00
AndroidSurfaceTexture.h Bug 1777952 - Namespace SurfaceTexture handles by the process they were allocated in. r=gfx-reviewers,geckoview-reviewers,aosmond,calu 2022-07-07 08:12:55 +00:00
ForceDiscreteGPUHelperCGL.h
GLBlitHelper.cpp Bug 1771011 - part2 : wrap media engine's dcomp handle, and use it on our gfx pipeline in the GPU process.r=jolin,sotaro 2022-08-13 23:48:07 +00:00
GLBlitHelper.h Backed out 9 changesets (bug 1771374) for causing mochitest-webgl failures. CLOSED TREE 2022-08-02 03:38:09 +03:00
GLBlitHelperD3D.cpp Backed out 9 changesets (bug 1771374) for causing mochitest-webgl failures. CLOSED TREE 2022-08-02 03:38:09 +03:00
GLConsts.h Bug 1702546 - Update GLConsts.h, r=jgilbert 2021-08-04 17:46:57 +00:00
GLConsts.py Bug 1702546 - Update GLConsts.h, r=jgilbert 2021-08-04 17:46:57 +00:00
GLContext.cpp Bug 1779355 - Check for owning thead in GLContext::MakeCurrent and EGLLibrary::fMakeCurrent. r=gfx-reviewers,bradwerth 2022-08-11 05:46:45 +00:00
GLContext.h Bug 1779166 - Mark two GLContexts as not owned by single threads. r=gfx-reviewers,lsalzman 2022-07-19 02:53:56 +00:00
GLContextCGL.h
GLContextEAGL.h
GLContextEGL.h Bug 1770407 [Linux] Remove GBM GL backend r=jgilbert 2022-05-28 20:13:42 +00:00
GLContextFeatures.cpp Bug 1726265 - Prototype webgl draft ext OES_draw_buffers_indexed. r=lsalzman,emilio,webidl 2021-08-27 01:47:14 +00:00
GLContextGLX.h Bug 1771159 - Don't use gfxXlibSurface in GLContextGLX. r=jgilbert 2022-08-08 16:06:43 +00:00
GLContextProvider.h Bug 1770111 [Linux] Build GLContextProviderLinux on other unix systems r=jgilbert 2022-05-20 12:37:08 +00:00
GLContextProviderCGL.mm
GLContextProviderEAGL.mm
GLContextProviderEGL.cpp Bug 1776724 - fix wayland-only build r=jgilbert 2022-07-21 09:10:59 +00:00
GLContextProviderGLX.cpp Bug 1771159 - Don't use gfxXlibSurface in GLContextGLX. r=jgilbert 2022-08-08 16:06:43 +00:00
GLContextProviderImpl.h
GLContextProviderLinux.cpp Bug 1776724 - fix wayland-only build r=jgilbert 2022-07-21 09:10:59 +00:00
GLContextProviderNull.cpp
GLContextProviderWGL.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=andi,media-playback-reviewers,necko-reviewers,padenot,dragana 2022-06-07 12:32:55 +00:00
GLContextSymbols.h Bug 1726265 - Prototype webgl draft ext OES_draw_buffers_indexed. r=lsalzman,emilio,webidl 2021-08-27 01:47:14 +00:00
GLContextTypes.h
GLContextWGL.h
GLDebugUtils.cpp
GLDebugUtils.h
GLDefs.h Bug 1776470 - Explicitly ask for ANGLE debug layer iff d3d11 debug layer pref enabled. r=gfx-reviewers,bradwerth 2022-07-06 07:45:29 +00:00
GLLibraryEGL.cpp Bug 1778855 - Use e.g. gfxEnv::MOZ_GL_DEBUG() instead of gfxEnv::GlDebug(). r=gfx-reviewers,jrmuizel 2022-07-11 23:59:53 +00:00
GLLibraryEGL.h Bug 1779355 - Check for owning thead in GLContext::MakeCurrent and EGLLibrary::fMakeCurrent. r=gfx-reviewers,bradwerth 2022-08-11 05:46:45 +00:00
GLLibraryLoader.cpp
GLLibraryLoader.h
GLReadTexImageHelper.cpp
GLReadTexImageHelper.h
GLScreenBuffer.cpp Bug 1712486 - Add async front buffer posting for out-of-process WebGL r=jgilbert,lsalzman,gfx-reviewers 2022-06-29 09:32:29 +00:00
GLScreenBuffer.h Bug 1712486 - Add async front buffer posting for out-of-process WebGL r=jgilbert,lsalzman,gfx-reviewers 2022-06-29 09:32:29 +00:00
GLTextureImage.cpp Bug 1779166 - Mark two GLContexts as not owned by single threads. r=gfx-reviewers,lsalzman 2022-07-19 02:53:56 +00:00
GLTextureImage.h Bug 1519636 - Reformat recent changes to the Google coding style. r=emilio 2021-08-23 09:30:23 +00:00
GLTypes.h
GLUploadHelpers.cpp Bug 1519636 - Reformat recent changes to the Google coding style. r=emilio 2021-08-23 09:30:23 +00:00
GLUploadHelpers.h Bug 1519636 - Reformat recent changes to the Google coding style. r=emilio 2021-08-23 09:30:23 +00:00
GLXLibrary.h Bug 1728350 - Remove remaining texture-from-pixmap usage. r=gfx-reviewers,jgilbert 2021-09-01 17:07:46 +00:00
GfxTexturesReporter.cpp
GfxTexturesReporter.h
HeapCopyOfStackArray.h
MozFramebuffer.cpp Bug 1756174 - gfxCriticalNote with details, instead of hard assert. r=gfx-reviewers,aosmond 2022-03-14 18:12:22 +00:00
MozFramebuffer.h
ScopedGLHelpers.cpp
ScopedGLHelpers.h
SharedSurface.cpp Bug 1729656 [Wayland] Don't use gfxPlatform to configure DMABuf, r=rmader 2021-09-28 20:16:17 +00:00
SharedSurface.h Bug 1777426 - Support fast readbacks in CopyToSwapChain with async present. r=sotaro,jgilbert 2022-07-12 06:56:19 +00:00
SharedSurfaceANGLE.cpp Backed out 9 changesets (bug 1771374) for causing mochitest-webgl failures. CLOSED TREE 2022-08-02 03:38:09 +03:00
SharedSurfaceANGLE.h
SharedSurfaceAndroidHardwareBuffer.cpp
SharedSurfaceAndroidHardwareBuffer.h
SharedSurfaceD3D11Interop.cpp Backed out 9 changesets (bug 1771374) for causing mochitest-webgl failures. CLOSED TREE 2022-08-02 03:38:09 +03:00
SharedSurfaceD3D11Interop.h
SharedSurfaceDMABUF.cpp Bug 1774075 [Linux] Don't use EGL_MESA_image_dma_buf_export on mesa/radeonsi driver r=jgilbert 2022-06-20 10:14:41 +00:00
SharedSurfaceDMABUF.h Bug 1735929 [Linux] Use EGL_MESA_image_dma_buf_export in SharedSurfaceDMABUF r=jgilbert,aosmond 2022-06-09 08:37:20 +00:00
SharedSurfaceEGL.cpp Bug 1750234 - Handle GPU process crash when rendering video and webgl on Android. r=jgilbert,jolin 2022-02-02 17:01:02 +00:00
SharedSurfaceEGL.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
SharedSurfaceGL.cpp
SharedSurfaceGL.h
SharedSurfaceIO.cpp Bug 1703654 - Prototype display-p3 for WebGL canvas. r=lsalzman,emilio,webidl,smaug 2022-05-02 23:54:09 +00:00
SharedSurfaceIO.h
SurfaceTypes.h
WGLLibrary.h
moz.build Backed out 9 changesets (bug 1771374) for causing mochitest-webgl failures. CLOSED TREE 2022-08-02 03:38:09 +03:00