Closed Bug 1667500 Opened 4 years ago Closed 4 years ago

A lot of picture cache invalidation during video playback

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: sotaro, Assigned: gw)

Details

Attachments

(4 files)

No description provided.

STR
-[1] Launch the Firefox browser and set zoom to 150%.
-[2] Set pref gfx.webrender.debug.picture-caching=true
-[2] Reach https://www.walmart.com/cp/video-games/2636 and scroll down to the Xbox v PS5 videos.
-[3] Click the PS5 play button in order to play the video.

I found it during checking STR of Bug 1646786.

During video playback, I did not expect the many picture cache invalidation, since only video seemed to be updated.
When zoom was 100%, I did not see the many invalidation.

:gw, can you reproduce the problem?

Flags: needinfo?(gwatson)

I'll investigate this week.

Assignee: nobody → gwatson
Flags: needinfo?(gwatson)

I see tiles that invalidating (red) when the overlay controls are present at the start, and then translucent (yellow) while the main video is playing.

But I don't see any other invalidation during playback unless I'm also scrolling at the same time (which is a known issue with fractional offsets during scrolling, I think).

Does that match what you see, or are you also seeing red invalidation during normal video rendering?

Flags: needinfo?(sotaro.ikeda.g)
Attached video symptom of video

Take a video with my phone. Firefox set pref gfx.webrender.debug.dcomp-redraw-regions=true, since it showed invalidation clearer.

Symptom of invalidation is different by Zoom level.

(In reply to Glenn Watson [:gw] from comment #4)

Does that match what you see, or are you also seeing red invalidation during normal video rendering?

It seems different. The invalidation happened when overlay controls did not exist. Comment 5 is attached video with pref gfx.webrender.debug.dcomp-redraw-regions=true.

Flags: needinfo?(sotaro.ikeda.g)

Interesting! This doesn't occur at all on my Linux machine I'm testing on - there is no invalidation occurring at all. Perhaps the display list is different on Windows. I will build on Win10 machine this week and see if I can repro on that.

Yea, I also did not see the invalidation problem on my Linux PC.

I got a build on Win10 machine and still can't reproduce the problem. I am testing on a machine running at 1920 x 1080 - perhaps it depends on resolution. What resolution are you testing with?

Flags: needinfo?(sotaro.ikeda.g)

Windows display and zoon setting is

  • 3840*2160(recommenended)
  • 250%(recommenended)

My PC is P50 on Win10.

Flags: needinfo?(sotaro.ikeda.g)

I could also reproduce the invalidation problem on different Win10 PC and same display size when Firefox zoom was 150%.

Sotaro, would you be able to add some logging at [1] of the invalidation reason and post that in the bug? It might give me some clues on how to reproduce this locally.

[1] https://searchfox.org/mozilla-central/source/gfx/wr/webrender/src/picture.rs#1056

Log file captured all logs from Firefox start until invalidation problem happened.

I still can't reproduce the error locally. The log files suggest that a new scene is being sent every frame and that it contains something different in the primitives, very strange.

I'll take a look and see if I can find out why Gecko seems to be sending new scenes (display lists) for every frame - that might be related to the invalidation you're seeing on your machine.

I tested this again and can't reproduce locally - it's possible it is fixed by https://bugzilla.mozilla.org/show_bug.cgi?id=1669865 - Sotaro, could you test on your machine and see if it still reproduces with that patch (the patch has landed)?

Flags: needinfo?(sotaro.ikeda.g)

The problem still happened on 2 Win10 PCs of Comment 11 with latest nightly.

Flags: needinfo?(sotaro.ikeda.g)

Sotaro, does this still occur for you locally?

Flags: needinfo?(sotaro.ikeda.g)

(In reply to Sotaro Ikeda [:sotaro] from comment #1)

STR
-[1] Launch the Firefox browser and set zoom to 150%.
-[2] Set pref gfx.webrender.debug.picture-caching=true
-[2] Reach https://www.walmart.com/cp/video-games/2636 and scroll down to the Xbox v PS5 videos.

The "Xbox v PS5 videos" does not exist any more. I did not saw the problem with another video. Thank you.

Status: NEW → RESOLVED
Closed: 4 years ago
Flags: needinfo?(sotaro.ikeda.g)
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: