Closed
Bug 909204
Opened 11 years ago
Closed 1 year ago
Display Composition FPS while using HwcComposer2D
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: u459114, Unassigned)
References
Details
Attachments
(2 files, 6 obsolete files)
17.52 KB,
patch
|
Details | Diff | Splinter Review | |
11.36 KB,
patch
|
Details | Diff | Splinter Review |
FPS sprite display only when GLComposer be chosen.
Summary: Disable Composition FPS while using HWComposer → Display Composition FPS while using HWComposer
Comment 2•11 years ago
|
||
reference code for fps rendering http://mxr.mozilla.org/mozilla-central/source/gfx/layers/opengl/CompositorOGL.cpp#108
I think we should display the following information on the screen for all compositor back-end with minimum performance impact 1. FPS 2. Composed Layer number 3. Optional - CPU usage
Here is my proposal of generate FPS sprite: 1. (FPS bitmap) Generate bitmap for each FPS. For exp, "FPS: 20" and "FPS: 21" will be two disinct bitmap. Keep these image in memory persistly. As a result, generate these bitmap is one-time event. 2. (FPS bitmap map) Use hash value of each bitmap(Hash("FPS:20")) as index to find out existed FPS bitmap. 3. Always render FPS bitmap on the deepest layer(backgound layer).
1. Just a work flow draft. 2. HwcComposer2D::DrawFPS is the entry point of FPS drawing a. Find a suitable layer. b. draw FPS image direct into the content of that layer.
Next step 1. Render "0-9" stretch into a graphic buffer by opengl: do it in FPSCounter 2. Map number glyph into layer image according to current FPS.
Attachment #804340 -
Attachment is obsolete: true
Attachment #804395 -
Attachment is obsolete: true
Comment 9•11 years ago
|
||
Bug 915342 shows the fill ratio for GL composition. We can also show the number of composed layer. It might be helpful to check unnecessary layer.
Is there any way we can integrate this with bug 874781? I know I keep saying I'm going to get back to and finish that up; I will try doing so tomorrow or Monday.
Reporter | ||
Comment 12•11 years ago
|
||
(In reply to Vladimir Vukicevic [:vlad] [:vladv] from comment #10) > Is there any way we can integrate this with bug 874781? I know I keep > saying I'm going to get back to and finish that up; I will try doing so > tomorrow or Monday. Sure. Basically, I will finish the logic of drawing FPS in HWC. I didn't use GL to draw FPS in HWC, instead, I blit FPS image into a suitable layer directly. The reason for this approach is 1. Needless to add another FPS layer: adding a layer in generic HWC is not good. 2. Decouple with GLComposer Make this bug depend on 874781
Depends on: 874781
Reporter | ||
Comment 13•11 years ago
|
||
Validate the size of drawing layer.
Attachment #805229 -
Attachment is obsolete: true
Reporter | ||
Comment 14•11 years ago
|
||
Attachment #805246 -
Attachment is obsolete: true
Reporter | ||
Comment 15•11 years ago
|
||
Peter/ Morris, any suggestion?
Flags: needinfo?(pchang)
Flags: needinfo?(mtseng)
Reporter | ||
Comment 16•11 years ago
|
||
TODO: 1. Rework base on bug 874781 2. Comment 3. Layer selection algorithm Currently, I search from back to front, get the first suitable layer, and then draw image onto left-top side of that layer. Simple/effective, but may not work if that layer is cover by another layer, FPS sprite will not be visible.
Reporter | ||
Comment 17•11 years ago
|
||
Update layer selection algorithm
Attachment #805247 -
Attachment is obsolete: true
Summary: Display Composition FPS while using HWComposer → Display Composition FPS while using HwcComposer23
Summary: Display Composition FPS while using HwcComposer23 → Display Composition FPS while using HwcComposer2D
Reporter | ||
Comment 18•11 years ago
|
||
TODO 1. Draw FPS in hwcLayer.sourceCrop boundary 2. Enable FPS drawing from LayerManager.
Comment 19•11 years ago
|
||
Check the preferences "layers.acceleration.draw-fps" to trigger this function?
Comment 20•11 years ago
|
||
Read preference setting from device /data/locat/tmp/gfx_debug Check CompositorDebugPropWatcher::OnFileCanReadWithoutBlocking() function
Updated•11 years ago
|
Flags: needinfo?(pchang)
Updated•11 years ago
|
Flags: needinfo?(pchang)
Updated•10 years ago
|
Assignee: cku → boris.chiou
Updated•10 years ago
|
Flags: needinfo?(mtseng)
Updated•10 years ago
|
Assignee: boris.chiou → hshih
Comment 21•2 years ago
|
||
The bug assignee didn't login in Bugzilla in the last 7 months, so the assignee is being reset.
Assignee: bignose1007+bugzilla → nobody
Status: ASSIGNED → NEW
Updated•2 years ago
|
Severity: normal → S3
Comment 22•1 year ago
|
||
Closing old B2G bugs
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → INVALID
You need to log in
before you can comment on or make changes to this bug.
Description
•