Commit Graph

75 Commits

Author SHA1 Message Date
sotaro
0a31a20caa Bug 1742052 - Remove unused code around TextureHost r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D131701
2021-11-22 09:49:59 +00:00
sotaro
c84b574340 Bug 1739553 - Use wr::ExternalImageId in more places r=gfx-reviewers,bradwerth
It could make code more explicit.

Differential Revision: https://phabricator.services.mozilla.com/D130434
2021-11-07 07:26:45 +00:00
Jeff Gilbert
d96ec16c35 Bug 1697670 - Remove gfx::YUVColorSpace::UNKNOWN. r=mstange
Replace with Maybe<YUVColorSpace> where still needed.

Differential Revision: https://phabricator.services.mozilla.com/D107938
2021-03-19 00:58:23 +00:00
Csoregi Natalia
6e069b9d57 Backed out changeset f155cf6af343 (bug 1697670) for bustage on gfxUtils.cpp. CLOSED TREE 2021-03-17 02:41:15 +02:00
Jeff Gilbert
4c70738177 Bug 1697670 - Remove gfx::YUVColorSpace::UNKNOWN. r=mstange
Replace with Maybe<YUVColorSpace> where still needed.

Differential Revision: https://phabricator.services.mozilla.com/D107938
2021-03-16 23:25:54 +00:00
Andrew Osmond
1d19fa73aa Bug 1688096 - Part 1. Merge SW-WR and WR render texture host paths to allow mixed compositors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D104854
2021-02-24 19:39:59 +00:00
Cosmin Sabou
9ef271b5ba Backed out 2 changesets (bug 1688096) for win webrender sw_compositor related crashes. CLOSED TREE
Backed out changeset aa0d1698aff8 (bug 1688096)
Backed out changeset 3ad2f4d0c317 (bug 1688096)
2021-02-18 19:52:29 +02:00
Andrew Osmond
cd218bcf63 Bug 1688096 - Part 1. Merge SW-WR and WR render texture host paths to allow mixed compositors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D104854
2021-02-18 15:37:46 +00:00
smolnar
f7ba61e1f9 Backed out 2 changesets (bug 1688096) for linux debug build bustage in KnowsCompositor. CLOSED TREE
Backed out changeset 6cdfa0af2278 (bug 1688096)
Backed out changeset 6471b0910f45 (bug 1688096)
2021-02-18 14:34:49 +02:00
Andrew Osmond
b76cb0a8b0 Bug 1688096 - Part 1. Merge SW-WR and WR render texture host paths to allow mixed compositors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D104854
2021-02-18 11:50:05 +00:00
sotaro
acd0ec363d Bug 1687427 - Update display list when ExternalCompositing is changed r=mattwoodrow
When when TexutureHost's SupportsExternalCompositing is changed, display list needs to be updated.

Differential Revision: https://phabricator.services.mozilla.com/D102264
2021-01-19 21:42:57 +00:00
Matt Woodrow
15153da283 Bug 1672858 - Handle RDD process crashes when looking up textures in the GPU process. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D94546
2020-10-25 07:46:04 +00:00
Jean-Yves Avenard
74aef9bef4 Bug 1660727 - Add missing GetColorDepth override. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D93441
2020-10-14 08:07:30 +00:00
Matt Woodrow
d517b70ca2 Bug 1666055 - Disable buffer textures as external compositor surfaces on MacOS. r=lsalzman
When using the native RenderCompositor+SWGL on MacOS, we don't support passing buffer textures directly to the compositor.

Differential Revision: https://phabricator.services.mozilla.com/D93179
2020-10-14 07:56:47 +00:00
Jean-Yves Avenard
7a436f1c4d Bug 1668840 - P2. Fix GPUVideoTextureHost and renable recycle allocator with OGL. r=mattwoodrow
call unbindTextureSource and NotifyNotUsed on wrapped texture.

Differential Revision: https://phabricator.services.mozilla.com/D92707
2020-10-09 03:57:08 +00:00
Jean-Yves Avenard
f8e17f9bc9 Bug 1630733 - Only attempt to use TextureHost if it's valid. r=mattwoodrow,nical
It is possible that when the ImageBridge received a new image to composite, that image hasn't yet been registered via the VideoBridge.

This can happen if the decoding occurs in the different process than the content process. Even though the VideoBridge registration message was sent earlier by the RDD process, the ImageBridge message sent by the content process reached the compositor earlier.

So we only attempt to use the TextureHost if it is valid and the underlying image has been properly registered. Otherwise we will continue to use the previous image.

Some methods are modified to lazily perform their action only once the image has been registered from the PVideoBridge.

Differential Revision: https://phabricator.services.mozilla.com/D92234
2020-10-09 02:54:30 +00:00
Miko Mynttinen
b799cd241a Bug 1652550 - Disable RenderExternalTextureHost when BufferTextureHost is wrapped with GPUVideoTextureHost r=mattwoodrow
This patch also re-enables client storage for Nightly builds (gfx.webrender.enable-client-storage=true).

Differential Revision: https://phabricator.services.mozilla.com/D83375
2020-07-14 13:31:32 +00:00
sotaro
41303dc6db Bug 1636868 - Add RenderTextureHostWrapper for GPUVideoTextureHost r=jrmuizel
By using RenderTextureHostWrapper, we could reduce re-creation of RenderDXGITextureHostOGL and RenderDXGIYCbCrTextureHostOGL.

Differential Revision: https://phabricator.services.mozilla.com/D74838
2020-05-22 19:42:38 +00:00
sotaro
6784081074 Bug 1637873 - Destroy RenderTextureHost in TextureHost::Finalize() r=nical
RenderTextureHost is destroyed in WebRenderTextureHost::~WebRenderTextureHost() on current gecko. But It is better to destroy it by TextureHost that created the RenderTextureHost. GPUVideoTextureHost is an exception for now.

Differential Revision: https://phabricator.services.mozilla.com/D75255
2020-05-19 02:05:20 +00:00
Csoregi Natalia
c18acb6846 Backed out changeset 5358bc2ae595 (bug 1637873) for assertion failures on RenderThread.cpp. CLOSED TREE 2020-05-18 13:57:55 +03:00
sotaro
172cd13441 Bug 1637873 - Destroy RenderTextureHost in TextureHost::Finalize() r=nical
RenderTextureHost is destroyed in WebRenderTextureHost::~WebRenderTextureHost() on current gecko. But It is better to destroy it by TextureHost that created the RenderTextureHost. GPUVideoTextureHost is an exception for now.

And it is a preparation for Bug 1636868.

Differential Revision: https://phabricator.services.mozilla.com/D75255
2020-05-18 08:25:36 +00:00
sotaro
a9fffda1fe Bug 1637129 - Remove obsoleted comment from GPUVideoTextureHost::EnsureWrappedTextureHost() r=jrmuizel
Two VideoBridgeParents (one within the GPU process, one from RDD) are already supported. Then the comment is obsoleted.

Differential Revision: https://phabricator.services.mozilla.com/D74792
2020-05-13 00:12:36 +00:00
sotaro
9589ba6da2 Bug 1622709 - Re-enable RecycleAllocator at ImageContainer for RDD process r=nical
GPUVideoTextureHost needs call wrapped TextureHost's PrepareTextureSource() and UpdatedInternal() for layer compositor.

Differential Revision: https://phabricator.services.mozilla.com/D66923
2020-03-16 10:42:32 +00:00
sotaro
4225d45349 Bug 1617808 - Re-deliver PREFER_COMPOSITOR_SURFACE flag to WebRender r=gw
Differential Revision: https://phabricator.services.mozilla.com/D64007
2020-03-10 03:52:08 +00:00
Narcis Beleuzu
019e5b6cbc Backed out changeset 0cb5cf87cb27 (bug 1617808) for bustages on bindings.rs . CLOSED TREE 2020-03-10 02:16:24 +02:00
sotaro
610ea8b21e Bug 1617808 - Re-deliver PREFER_COMPOSITOR_SURFACE flag to WebRender r=gw
Differential Revision: https://phabricator.services.mozilla.com/D64007
2020-03-01 22:06:11 +00:00
sotaro
b238dd3a24 Bug 1617096 - Ensure to allocate RenderTexture by GPUVideoTextureHost r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D63617
2020-02-24 02:13:18 +00:00
sotaro
bb2ccb6d86 Bug 1601531 - Tag image descriptors with PREFER_COMPOSITOR_SURFACE where appropriate r=gw
Differential Revision: https://phabricator.services.mozilla.com/D55922
2019-12-06 06:53:57 +00:00
David Parks
4a236ce218 Bug 1577336: Part 6 - Make SurfaceDescriptorGPUVideo a union that contains SurfaceDescriptorRemoteDecoder r=mattwoodrow,jolin
SurfaceDescriptorGPUVideo, which currently only represents RemoteDecoder video, switches from being a struct to a union that holds a SurfaceDescriptorRemoteDecoder struct.  SurfaceDescriptorRemoteDecoder is a new name for the old SurfceDescriptorGPUVideo.  This is done so that we can later add SurfaceDescriptorPlugin as another type of SurfaceDescriptorGPUVideo.

Differential Revision: https://phabricator.services.mozilla.com/D52400
2019-11-20 21:55:06 +00:00
Dan Glastonbury
14c8c72997 Bug 1561179 - P1: Enable the creation of multiple VideoBridgeParent actors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50398
2019-11-04 03:41:45 +00:00
Razvan Maries
98ac13b776 Backed out 6 changesets (bug 1561179) for perma fails on browser_timeout_throttling_with_audio_playback.js. CLOSED TREE
Backed out changeset 5d8059472045 (bug 1561179)
Backed out changeset 90c207dd2cc2 (bug 1561179)
Backed out changeset e90af73ef3c4 (bug 1561179)
Backed out changeset 4678da971197 (bug 1561179)
Backed out changeset 55340b999a4e (bug 1561179)
Backed out changeset 4037cce56491 (bug 1561179)
2019-10-31 03:21:24 +02:00
Dan Glastonbury
2323916666 Bug 1561179 - P1: Enable the creation of multiple VideoBridgeParent actors. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50398
2019-10-30 23:48:25 +00:00
Jean-Yves Avenard
f89aad013a Bug 1543359 - P10. Add color range info to GPU and WR texture host. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D27243
2019-07-26 08:45:24 +00:00
Narcis Beleuzu
5e823403ff Backed out 15 changesets (bug 1543359) for wrench bustages on image.rs . CLOSED TREE
Backed out changeset 548006270186 (bug 1543359)
Backed out changeset c9585e9d9f3c (bug 1543359)
Backed out changeset 1c7ca95a2a9b (bug 1543359)
Backed out changeset d742d80b892f (bug 1543359)
Backed out changeset 210eee703fd9 (bug 1543359)
Backed out changeset 4eb933d55d88 (bug 1543359)
Backed out changeset fb9b71ed9f4b (bug 1543359)
Backed out changeset 98b968443458 (bug 1543359)
Backed out changeset a85bd4691bea (bug 1543359)
Backed out changeset b576317853e9 (bug 1543359)
Backed out changeset 095bca5c9b1a (bug 1543359)
Backed out changeset 48eb0ebf9f2e (bug 1543359)
Backed out changeset b22b0eb708b8 (bug 1543359)
Backed out changeset 52187d9320b1 (bug 1543359)
Backed out changeset fa6792c1c2e8 (bug 1543359)
2019-07-26 11:40:33 +03:00
Jean-Yves Avenard
0695488e13 Bug 1543359 - P10. Add color range info to GPU and WR texture host. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D27243
2019-07-26 06:14:09 +00:00
Cosmin Sabou
037643879f Backed out 14 changesets (bug 1543359) for causing build bustages. CLOSED TREE
Backed out changeset 87c99ef85813 (bug 1543359)
Backed out changeset cd0afc5758ba (bug 1543359)
Backed out changeset 101ac87ff017 (bug 1543359)
Backed out changeset 348e748e3451 (bug 1543359)
Backed out changeset d9e937f5caf4 (bug 1543359)
Backed out changeset 2f4eb6501552 (bug 1543359)
Backed out changeset 0d316ef8c668 (bug 1543359)
Backed out changeset bf238b58c694 (bug 1543359)
Backed out changeset 496f206d03d6 (bug 1543359)
Backed out changeset 7c3a1f23baa8 (bug 1543359)
Backed out changeset 90fff717198b (bug 1543359)
Backed out changeset b2ce591ca398 (bug 1543359)
Backed out changeset a63968f077e3 (bug 1543359)
Backed out changeset ca660ab1e0c1 (bug 1543359)
2019-07-26 07:39:11 +03:00
Jean-Yves Avenard
579c857471 Bug 1543359 - P10. Add color range info to GPU and WR texture host. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D27243
2019-07-22 07:27:41 +00:00
sotaro
a2d3f5b62e Bug 1568419 - Handle a case that NumSubTextures() returns 0 in AsyncImagePipelineManager::UpdateImageKeys() r=nical
GPUVideoTextureHost::NumSubTextures() returns 0 when wrapped TextureHost does not exist. In this case, we do not have a content of GPUVideoTextureHost for WR render. And EnsureWrappedTextureHost() calling is added in GPUVideoTextureHost::NumSubTextures(), since GPUVideoTextureHost is not explicit about when a wrapped TextureHost is created.

Differential Revision: https://phabricator.services.mozilla.com/D39137
2019-07-24 13:33:57 +00:00
sotaro
dcb0d482c5 Bug 1567816 - Remove WebRenderTextureHostWrapper r=nical
Differential Revision: https://phabricator.services.mozilla.com/D38837
2019-07-22 08:03:59 +00:00
Matt Woodrow
3ee85e22c0 Bug 1562616 - Don't fail to create a GPUVideoTextureHost if the dependent texture isn't available, since that crashes the compositor. r=sotaro
Depends on D37781

Differential Revision: https://phabricator.services.mozilla.com/D37782
2019-07-12 00:39:49 +00:00
Matt Woodrow
d991297aa6 Bug 1561178 - Use Endpoints for VideoBridge construction, and support the possibility that there are multiple at the same time. r=jya
In the future we're going to want VideoBridge connections from the RDD process into both the parent process and the GPU process.
This does the preparation work for unifying the way we create VideoBridges (using Endpoints, required for cross-process connections),
and detects which one to use based on where the video will be composited.

Differential Revision: https://phabricator.services.mozilla.com/D35968
2019-06-28 07:00:41 +00:00
Daniel Varga
e64271b079 Backed out 6 changesets (bug 1561178) for profile guided optimization build fail in artifacts\\profdata.tar.xz. On a CLOSED TREE
Backed out changeset 2150f683f8a8 (bug 1561178)
Backed out changeset 059c79722bcb (bug 1561178)
Backed out changeset 6f206fecaa56 (bug 1561178)
Backed out changeset d449e8c96753 (bug 1561178)
Backed out changeset 557f55a90c8a (bug 1561178)
Backed out changeset e1521d8fbe90 (bug 1561178)
2019-06-27 08:19:28 +03:00
Matt Woodrow
c5e2562026 Bug 1561178 - Use Endpoints for VideoBridge construction, and support the possibility that there are multiple at the same time. r=jya
In the future we're going to want VideoBridge connections from the RDD process into both the parent process and the GPU process.
This does the preparation work for unifying the way we create VideoBridges (using Endpoints, required for cross-process connections),
and detects which one to use based on where the video will be composited.

Differential Revision: https://phabricator.services.mozilla.com/D35968
2019-06-27 01:29:15 +00:00
Matt Woodrow
0f1e754d16 Bug 1555891 - Merge PVideoDecoderManager into PRemoteDecoderManager. r=jya,jld
Differential Revision: https://phabricator.services.mozilla.com/D33586
2019-06-11 02:01:34 +00:00
Jean-Yves Avenard
3fd6d1b0ab Bug 1493898 - P6. Move YUVColorSpace definition in the gfx namespace. r=mattwoodrow.
YUVColorSpace is inseparable from the bit depth as the matrix coefficients to be calculated need the bit depth information.

So let's put the two types together. gfx namespace also makes more sense as that's where we find IntRect, IntSize and other.

The extent of the changes highlight how much similar data structures are duplicated across the code, to the point it's scary.

Differential Revision: https://phabricator.services.mozilla.com/D25347
2019-04-11 12:41:33 +00:00
Michael Froman
da4377d059 Bug 1500454 - remove PVideoDecoder, etc from dom namespace. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15156
2018-12-21 22:34:57 +00:00
Sylvestre Ledru
e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Alex Gaynor
4f11cff232 Bug 1490415 - prevent creating a GPUVideoTextureHost with a null wrapped texture; r=sotaro
Differential Revision: https://phabricator.services.mozilla.com/D5563
2018-09-12 00:17:10 +00:00
sotaro
ea892379c7 Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel 2018-07-25 23:30:08 +09:00
Nicolas Silva
22c22ec1aa Bug 1404477 - Merge ResourceUpdateQueue and TransactionBuilder. r=kats 2018-01-29 14:33:39 +01:00