Closed Bug 1774869 Opened 2 years ago Closed 2 years ago

video freezes after closing Discord until clicked

Categories

(Core :: Graphics, defect)

Firefox 102
Desktop
Windows 10
defect

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox101 --- unaffected
firefox102 --- affected
firefox103 --- affected

People

(Reporter: tomas.zahorsky, Unassigned)

References

(Blocks 1 open bug)

Details

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0

Steps to reproduce:

Start playing video in Firefox (Youtube, Twitch)
Open Discord and make it cover entire Firefox window
Close Discord using X button into tray (with option "Minimize to Tray" in Discord settings enabled)
Wait few seconds (5-10s) and don't click anything on screen (Firefox window or taskbar etc.)

Happens every time for me.

Actual results:

Video is not rendering. It is still playing (i can hear audio) but the video is frozen.

I am using Firefox Dev Edition, but friend tried it on different device with classic Firefox and it happened too.

I wasn't able to find any application other than Discord, which would make this happen.

Expected results:

Video should still be rendering.

Managed to reproduce the issue on Dev Edition 102.0b9 & Firefox Nightly from 17.06.2022.

Did not manage to reproduce the issue on 102.0 Firefox.

Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Unspecified → Windows 10
Hardware: Unspecified → Desktop

The Bugbug bot thinks this bug should belong to the 'Core::Graphics' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Graphics
Product: Firefox → Core

The severity field is not set for this bug.
:bhood, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(bhood)

Sotaro, could you please have a look when you have a chance?

Severity: -- → S3
Flags: needinfo?(bhood) → needinfo?(sotaro.ikeda.g)

I wonder if the problem is related to occlusion handling. 10 seconds seemed similar to Bug 1759393.

Blocks: 1688997

It seems that there are 2 possibilities. But I could not reproduce the problem :(

  • [1] Window occlusion event was not updated as expected.
  • [2] Window occlusion event was updated as expected. But video decoder was not resumed.

Hi tomas, can you check a window visibility state from "window visibility state debug overlay", when the problem happens?
"window visibility state debug overlay" could be enabled by pref "gfx.webrender.debug.window-visibility"=true.
The pref could be changed from about:config.

Flags: needinfo?(tomas.zahorsky)

Hi Sotaro, i tried it, and the overlay is after closing Discord saying "WindowVisibility { size_mode: Maximized, is_fully_occluded: true }" and it stays like that until *almost anything in Windows is clicked.
Just accidentally noticed, that for when i click task bar or most windows, it changes to "is_fully_occluded: false ", but when i click anything in System information window still stays "occluded". Idk how useful this information is, but here you go.

Also, I did not specify my system info, so in case it might be somehow system specific, I have Firefox Developer Edition 103.0b9 (64-bit), Windows 10 Version 10.0.19044 Build 19044, Nvidia 3060 Mobile GPU

I am happy to see this getting somewhere. Thank you.

Flags: needinfo?(tomas.zahorsky)

Thank you for checking.
WindowOcclusionCalculator watches several events. They are registered in WindowOcclusionCalculator::RegisterEventHooks().
But from comment 8, the events seemed not triggered when the problem happened. It seems that current events watching is not enough.

Depends on: 1780334
Flags: needinfo?(sotaro.ikeda.g)

Hi tomas, can you check if the problem is addressed with latest Firefox Developer Edition?

Flags: needinfo?(tomas.zahorsky)

Hi Sotaro, yes, it is fixed! Thanks

Flags: needinfo?(tomas.zahorsky)

Great! Thank you for the confirmation.

Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.