[meta] [project] Fix video playback performance issues
Categories
(Core :: Graphics: WebRender, task)
Tracking
()
People
(Reporter: gw, Unassigned)
References
(Depends on 26 open bugs, Blocks 3 open bugs)
Details
(Keywords: meta)
User Story
platform-scheduled: 2024-07-01
| Reporter | ||
Updated•1 year ago
|
| Reporter | ||
Updated•1 year ago
|
Updated•1 year ago
|
| Reporter | ||
Comment 1•1 year ago
|
||
We have several real-world reports of video playback performance problems (linked as dependencies of this bug). We also know of a number of code paths that we hit in some cases, on some platforms, which are sub-optimal for video playback performance. In this instance, performance includes not just hitting the desired playback framerate, but also CPU/GPU usage and/or power usage, relative to other browsers.
Although we have a good sense of some particular problems in the existing video playback paths, and a number of planned improvements, we still have an incomplete picture. For many of the bug reports we have, we need to first work out which of the slow code paths we're hitting, why we're hitting them, and how the improvements we have planned will help. Thus, initial work will be profiling the reported cases, writing up details on what the major bottlenecks are, and prioritising which improvements to target first. This will also help identify any remaining unknowns that are causing video playback performance problems.
Some of the known issues we have (or suspect) are:
- Additional copies of video frames in some cases
- Not hitting compositor output fast paths when we can (various reasons)
- GPU doing 2D/3D work that we may be able to avoid (e.g. format conversions, blits)
Potential work coming from this meta:
- Add some profiling infrastructure to make it easier to identify what path video playback hits (and if slow, why)
- Change how picture caching / compositing slices scenes to ensure we hit compositor fast paths
- Identify and reduce copies (may involve other teams, such as media)
- Make more use of compositor where possible to avoid doing GPU work (format conversions, transforms etc)
Updated•1 year ago
|
| Reporter | ||
Updated•10 days ago
|
Description
•