Bug 1902271 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

D3D11TextureIMFSampleImage::GetAsSourceSurface() is called during taking screen shot or video rendering to canvas2d. It caused to block Renderer thread during mozilla::gfx::Factory::ReadbackTexture().

https://share.firefox.dev/3XlUo7J
[D3D11TextureIMFSampleImage::GetAsSourceSurface()](https://searchfox.org/mozilla-central/rev/d31f750ad9e5b6c8f7b62d387dbea3f804044350/gfx/layers/D3D11TextureIMFSampleImage.cpp#74) or [D3D11ShareHandleImage::GetAsSourceSurface()](https://searchfox.org/mozilla-central/rev/d31f750ad9e5b6c8f7b62d387dbea3f804044350/gfx/layers/D3D11TextureIMFSampleImage.cpp#74) are called during taking screen shot or video rendering to canvas2d.
In the functions, [Factory::CreateBGRA8DataSourceSurfaceForD3D11Texture()](https://searchfox.org/mozilla-central/rev/d31f750ad9e5b6c8f7b62d387dbea3f804044350/gfx/2d/Factory.cpp#1176) is called. It caused to block Renderer thread during mozilla::gfx::Factory::ReadbackTexture().

https://share.firefox.dev/3XlUo7J

Back to Bug 1902271 Comment 0