[Wayland] Implement YUV surfaces by WaylandDMABUFSurface
Categories
(Core :: Widget: Gtk, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox75 | --- | fixed |
People
(Reporter: stransky, Assigned: stransky)
References
(Blocks 2 open bugs)
Details
Attachments
(7 files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
We need store decoded YUV (NV12) video images at WaylandDMABUFSurface.
Assignee | ||
Updated•4 years ago
|
Comment 1•4 years ago
|
||
Note https://gitlab.gnome.org/GNOME/mutter/issues/987 and https://gitlab.gnome.org/GNOME/mutter/merge_requests/804 if you have issues with certain types of video
Assignee | ||
Comment 2•4 years ago
|
||
Thanks but it's not the case here, we need only support for NV12 which is supported fine.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 3•4 years ago
|
||
We need to export more planes in SurfaceDescriptorDMABuf and also YUV color space.
Assignee | ||
Comment 4•4 years ago
|
||
We need WaylandDMABufSurface to hold both RGBA and YUV surfaces co create WaylandDMABufSurface as a base
class and derive WaylandDMABufSurfaceRGBA from it.
Depends on D62000
Assignee | ||
Comment 5•4 years ago
|
||
WaylandDMABufSurfaceNV12 holds HW decoded video frames from VA-API in NV12 format and it's implemented
as specialization of WaylandDMABufSurface base class.
Depends on D62001
Assignee | ||
Comment 6•4 years ago
|
||
Depends on D62002
Assignee | ||
Comment 7•4 years ago
|
||
- Update WaylandDMABUFTextureClientOGL to work with WaylandDMABufSurfaceRGBA which is used for GL/WebRender compositor
with dmabuf texture backend. - Update WaylandDMABUFTextureHostOGL to work with both RGBA and NV12 surface formats.
- Use GLTextureSource instead of EGLImageTextureSource as we need to store more than one texture there with NV12
and pass the textures there by CreateTextureSourceForPlane(). - Implement NV12 related function by WaylandDMABUFTextureHostOGL (color space, color range, sub-textures num).
- Add NV12 implementation to PushResourceUpdates()/PushDisplayItems() for WebRender.
Depends on D62003
Assignee | ||
Comment 8•4 years ago
|
||
WaylandDMABufSurface/WaylandDMABufSurfaceRGBA uses textures interface instead of EGLImages so we need
to update gfx code accordingly:
- rename CreateEGLImage() -> CreateTexture()
- rename ReleaseEGLImage() -> ReleaseTextures()
- rename GetGLTexture() -> GetTexture()
- rename WaylandDMABufSurface::CreateDMABufSurface() to WaylandDMABufSurfaceRGBA::CreateDMABufSurface()
Depends on D62004
Assignee | ||
Comment 9•4 years ago
|
||
Depends on D62005
Assignee | ||
Comment 10•4 years ago
|
||
Assignee | ||
Comment 11•4 years ago
|
||
Updated•4 years ago
|
Assignee | ||
Comment 12•4 years ago
|
||
Comment 13•4 years ago
|
||
Pushed by shindli@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/640f0fc81c1f [Wayland] Update SurfaceDescriptorDMABuf to export YUV surfaces, r=sotaro https://hg.mozilla.org/integration/autoland/rev/6ea8ea6e6216 [Wayland] Derive WaylandDMABufSurfaceRGBA from WaylandDMABufSurface, r=jhorak https://hg.mozilla.org/integration/autoland/rev/64592d09f5e4 [Wayland] Implement WaylandDMABufSurfaceNV12 to hold HW decoded video frames, r=jhorak https://hg.mozilla.org/integration/autoland/rev/66cc62933540 [Wayland] Update RenderWaylandDMABUFTextureHostOGL to work with NV12 texture format, r=sotaro https://hg.mozilla.org/integration/autoland/rev/cdab069b9ed9 [Wayland] Update WaylandDMABUFTextureHostOGL and WaylandDMABUFTextureClientOGL to work with NV12 format, r=sotaro https://hg.mozilla.org/integration/autoland/rev/e4383c8d1123 [Wayland] Update gfx code to derived WaylandDMABufSurfaceRGBA class, r=sotaro https://hg.mozilla.org/integration/autoland/rev/4e6ca0999851 [Wayland] Clean up WaylandDMABufSurface class, r=jhorak
Comment 14•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/640f0fc81c1f
https://hg.mozilla.org/mozilla-central/rev/6ea8ea6e6216
https://hg.mozilla.org/mozilla-central/rev/64592d09f5e4
https://hg.mozilla.org/mozilla-central/rev/66cc62933540
https://hg.mozilla.org/mozilla-central/rev/cdab069b9ed9
https://hg.mozilla.org/mozilla-central/rev/e4383c8d1123
https://hg.mozilla.org/mozilla-central/rev/4e6ca0999851
Description
•