Closed Bug 1191965 Opened 5 years ago Closed 29 days ago

Use CoreAnimation like HardwareComposer

Categories

(Core :: Graphics: Layers, defect, P3)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1429522

People

(Reporter: jrmuizel, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [gfx-noted][qf-])

It's possible to set the contents of CALayers to IOSurfaces. We could use this to implement a more efficient compositing path for things like video or WebGL (especially in fullscreen)

The idea would be to detect when we can draw using CoreAnimation instead of OpenGL just like we do with HardwareComposer.

Chrome did something like this in https://code.google.com/p/chromium/issues/detail?id=510252

We might also be able to do something like this with DirectComposition (however we have partial-present on Windows so it's not as important)
Whiteboard: [gfx-noted]
Assignee: nobody → tnikkel
Priority: P3 → P1
Whiteboard: [gfx-noted] → [gfx-noted][qf]
Whiteboard: [gfx-noted][qf] → [gfx-noted][qf:f64][qf:63]
Whiteboard: [gfx-noted][qf:f64][qf:63] → [gfx-noted][qf:f64][qf:p3]
Note targeting qf:64 "seems reasonable" but note gfx team is very early on in figuring out how to render with CoreAnimation in Firefox. So as we learn about current unknowns there, we'll better understand estimation here.
Whiteboard: [gfx-noted][qf:f64][qf:p3] → [gfx-noted][qf:f64][qf:p1]
Whiteboard: [gfx-noted][qf:f64][qf:p1] → [gfx-noted][qf:p1:f64]
Jeff (or someone) can you explain the impact fixing this bug will have (to help QF understanding/planning)?
Flags: needinfo?(jmuizelaar)
Using CoreAnimation can help improve memory bandwidth usage which can help with battery life.
Flags: needinfo?(jmuizelaar)

(QF is already tracking bug 1429522, so I'm qf-minusing this one.)

Whiteboard: [gfx-noted][qf:p1:f64] → [gfx-noted][qf-]
Assignee: tnikkel → nobody
Priority: P1 → P3
Status: NEW → RESOLVED
Closed: 29 days ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1429522
You need to log in before you can comment on or make changes to this bug.