Closed Bug 1213051 Opened 4 years ago Closed 4 years ago

[Gallery] When rotating portrait to landscape in gallery or preview app during video playback, it shows white region during the rotation

Categories

(Firefox OS Graveyard :: Gaia::Gallery, defect, P3)

ARM
Gonk (Firefox OS)
defect

Tracking

(blocking-b2g:2.5+, b2g-v2.2 unaffected, b2g-master affected)

RESOLVED WORKSFORME
blocking-b2g 2.5+
Tracking Status
b2g-v2.2 --- unaffected
b2g-master --- affected

People

(Reporter: njpark, Unassigned)

References

Details

(Keywords: regression)

STR:
Enter gallery app, tap photo to open
rotate from portrait mode to landscape mode.

this seems to happen on both Flame and Aries.

Video link: https://youtu.be/a-flvZ7cuak

In the video, you'll notice the bottom icon bar shifts before the image does.

Version info:
Build ID               20151008030233
Gaia Revision          4973f57cd8f9a62a95f783a24eac32da2bde99fc
Gaia Date              2015-10-08 03:58:37
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/a955ea9382afedd66ea0da21fcd2932465168d84
Gecko Version          44.0a1
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20151008.063039
Firmware Date          Thu Oct  8 06:30:52 EDT 2015
Bootloader             L1TC000118D0
Keywords: regression
Summary: [Gallery] When rotating portrait to landscape in gallery app, the image shrinks first, then rotates → [Gallery] When rotating portrait to landscape in gallery or preview app during video playback, the image shrinks first, then rotates
[Blocking Requested - why for this release]:

Seems like this issue is persisting, and I can see similiar issues in browser, so perhaps this might be a gecko issue.  Also, this bug is more visible when I rotate during the video playback.  noming for 2.5 for visual regression.
blocking-b2g: --- → 2.5?
Thanks No-Jun, I see the exact issue when the video is played in Video app and phone is rotated hinting an underlying gecko regression. This issue is easily replicable for slightly bigger size videos. Thanks
can we get a regression window for gecko...
QA Contact: jthomas
blocking-b2g: 2.5? → 2.5+
Priority: -- → P3
Setting NI flag for Sotaro to provide his input on the issue reported in the bug and if there are any gecko changes that could have caused this regression. Thanks!
Flags: needinfo?(sotaro.ikeda.g)
This is DOES additionally occur on the Flame 2.2.  Although it is possible to see it occurring with images, it is not always consistent. As comment 1 suggests: The issue is much easier to reproduce when flipping from landscape and portrait modes while a video is playing.

Environmental Variables:
Device: Flame 2.2 Kk Fullflash (319mb)
BuildID: 20151019032501
Gaia: 885647d92208fb67574ced44004ab2f29d23cb45
Gecko: 6b4e563acaf9
Gonk: bd9cb3af2a0354577a6903917bc826489050b40d
Version: 37.0 (2.2) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0

B2g Inbound Regression Window

Caused by changes made in Bug 763430

Last Working
Environmental Variables:
Device: Flame 2.5
BuildID: 20150131160838
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko: c0ebe08f5642
Version: 38.0a1 (2.5)
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0

First Broken
Environmental Variables:
Device: Flame 2.5
BuildID: 20150131171138
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko: b22ddf26ab47
Version: 38.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0

Last Working gaia / First Broken gecko - This issue DOES occur with broken Gecko
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko:b22ddf26ab47

Last Working gecko / First Broken gaia - This issue does NOT occur with broken Gaia
Gecko: c0ebe08f5642
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a

B2g Inbound Pushlog:
http://hg.mozilla.org/integration/b2g-inbound/pushloghtml?fromchange=c0ebe08f5642&tochange=b22ddf26ab47
Blocks: 763430
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmercado)
(In reply to Punam Dahiya [:pdahiya] from comment #2)
> Thanks No-Jun, I see the exact issue when the video is played in Video app
> and phone is rotated hinting an underlying gecko regression. This issue is
> easily replicable for slightly bigger size videos. Thanks


Here are my findings when trying to replicate the issue I saw in comment#2 on today's build.

1. I am not able to replicate the shift seen (comment #2 which is similar to original desc of this bug) when rotating phone while playing video in today's latest m-c build on Flame-kk 512 in video app. 

2. However when rotating phone while playing video in gallery and camera preview ('shared/js/media/video_player.js') a white flash is seen which is definitely a bug.

No-Jun: Can you please confirm that the issue reported in the original desc of this bug is fixed and something has changed since Oct 19th (BuildId: 20151019030208)  that's causing the white flash while playing video and rotating phone in gallery. Thanks!
Flags: needinfo?(npark)
I can confirm that Comment 6 is true on today's Flame build.   This does not repro in Aries - it only happens on Flame device as well.

Adding regressionwindow-wanted flag for this partial whitescreen during the screen rotation issue.
Flags: needinfo?(npark)
Summary: [Gallery] When rotating portrait to landscape in gallery or preview app during video playback, the image shrinks first, then rotates → [Gallery] When rotating portrait to landscape in gallery or preview app during video playback, it shows white region during the rotation
Thanks No-Jun for confirming, setting b2g-2.2 flag to unaffected as the white flash is not seen in 2.2 on flame-kk.
Regression window will help a lot to narrow down this recent regression. I don't see any change in video_player.js in last 2-3 days that could have caused the white flash.
Are we sure this shouldn't be written up as a separate issue instead of changing this bug from its original report?  Normally it would have been written up as a separate bug.

I'd like to verify the branches and devices affected by the white flash before we try to work on a regression window.
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
Keywords: qawanted
Flags: needinfo?(npark)
We were discussing that as well, and if the white screen was actually covering the whole area I would agree that it's a new bug.  However what I saw was that during the rotation, it seems that the part of the screen that is not yet drawn was white (From the attached video, you can see that it was black), indicating that it could be an artifact of the same underlying issue.
Flags: needinfo?(npark)
As per comment 7, the white flicker issue DOES occur on Flame 2.5 while flipping orientation of a video.

Environmental Variables:
Device: Flame 2.5 Kk Fullflash (319mb)
BuildID: 20151022030554
Gaia: 29ce8ec8606e59f582375234440812b046346513
Gecko: 76bd0c01d72e64ca4f261ffdb2652a91f961e930
Gonk: c4779d6da0f85894b1f78f0351b43f2949e8decd
Version: 44.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0

-----------------------

This issue is NOT able to repro on current Aries build.
Result: Flipping orientation of a video within gallery does NOT cause the white flicker. 

Environmental Variables:
Device: Flame 2.5 Kk Fullflash (319mb)
BuildID: 20151022030554
Gaia: 29ce8ec8606e59f582375234440812b046346513
Gecko: 76bd0c01d72e64ca4f261ffdb2652a91f961e930
Gonk: c4779d6da0f85894b1f78f0351b43f2949e8decd
Version: 44.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0

-----------------------

However, on Flame 2.2 I am NOT seeing the flash occur, but instead I am seeing that there is an odd orientation change where the buttons are centered before aligning properly. (What I did the window originally seen in comment 5.) 

Environmental Variables:
Device: Flame 2.2 Kk Fullflash (319mb)
BuildID: 20151022033039
Gaia: 885647d92208fb67574ced44004ab2f29d23cb45
Gecko: 7bc753230036
Gonk: bd9cb3af2a0354577a6903917bc826489050b40d
Version: 37.0 (2.2) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmercado)
Keywords: qawanted
I guess we'll see what the other window points to.
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
Hi David

I am investigating the white flash seen on rotating phone while playing video in gallery.I am reading comment https://bugzilla.mozilla.org/show_bug.cgi?id=1207792#c14, that mention the changes impact Flame and not Aries. Setting NI flag for you to get your input. Thanks!
Flags: needinfo?(dflanagan)
The following window is for the flashing white flicker seen when switching a video simultaneously from portrait to landscape modes for the Flame 2.5. 

Mozilla Inbound Regression Window

Most likely caused by changes made in Bug 926452

Last Working
Environmental Variables:
Device: Flame 2.5
BuildID: 20151021001629
Gaia: 11eb5d4cb2675d359d277ae17772bc75f7ccedbc
Gecko: 0bcf20224e95720428f13ad5454747313dab0c7f
Version: 44.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0

First Broken
Environmental Variables:
Device: Flame 2.5
BuildID: 20151021004254
Gaia: 11eb5d4cb2675d359d277ae17772bc75f7ccedbc
Gecko: ca1313dd74111b6130163c348f06a0469c4d02eb
Version: 44.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0

Last Working gaia / First Broken gecko - This issue 
Gaia: 11eb5d4cb2675d359d277ae17772bc75f7ccedbc
Gecko: ca1313dd74111b6130163c348f06a0469c4d02eb

Last Working gecko / First Broken gaia - This issue 
Gecko: 0bcf20224e95720428f13ad5454747313dab0c7f
Gaia: 11eb5d4cb2675d359d277ae17772bc75f7ccedbc

Mozilla Inbound Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=0bcf20224e95720428f13ad5454747313dab0c7f&tochange=ca1313dd74111b6130163c348f06a0469c4d02eb
Blocks: 926452
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmercado)
Vivien this issue seems to have been caused by the changes for bug 926452.  Can you please take a look?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado) → needinfo?(21)
(In reply to Punam Dahiya [:pdahiya] from comment #13)
> Hi David
> 
> I am investigating the white flash seen on rotating phone while playing
> video in gallery.I am reading comment
> https://bugzilla.mozilla.org/show_bug.cgi?id=1207792#c14, that mention the
> changes impact Flame and not Aries. Setting NI flag for you to get your
> input. Thanks!

Thanks for thinking of that bug, Punam.  The original youtube video attached to this bug seems similar to what I saw when I landed that patch. But I don't recall any white flicker at all.

As a general matter, I don't believe that it is possible for any app to do the right thing on orientation change.  The app would have to rotate and animate a resize at the same time. And animating layout sizes is very inefficient. There is always going to be something ugly about the way apps lay themselves out when they resize. Especially (as we've seen in this bug) if they are also busy playing high-resolution video at the same time.

So if we were still working on the originally reported bug here, I'd recommend closing it as invalid.  

But a white flash does seem like something we should fix.  If we can't get a response from Vivien quickly on the gecko issue, we could investigate working around this by setting a background-color:black on the body or on the video player element.
Flags: needinfo?(dflanagan) → needinfo?(pdahiya)
(In reply to Jayme Mercado [:JMercado] from comment #15)
> Vivien this issue seems to have been caused by the changes for bug 926452. 
> Can you please take a look?

It makes sense. The patch from bug 926452 will definitively exposes this issue unless it lands after the patch from bug 1215077 (which is supposed to block bug 926452).

I assume the checkin-needed flag has been added too eagerly to bug 926452 and back-outing it until bug 1215077 lands (which is likely not 2.5) seems reasonable to me.
(In reply to David Flanagan [:djf] from comment #16)
> (In reply to Punam Dahiya [:pdahiya] from comment #13)
> > Hi David
> > 
> > I am investigating the white flash seen on rotating phone while playing
> > video in gallery.I am reading comment
> > https://bugzilla.mozilla.org/show_bug.cgi?id=1207792#c14, that mention the
> > changes impact Flame and not Aries. Setting NI flag for you to get your
> > input. Thanks!
> 
> Thanks for thinking of that bug, Punam.  The original youtube video attached
> to this bug seems similar to what I saw when I landed that patch. But I
> don't recall any white flicker at all.
> 
> As a general matter, I don't believe that it is possible for any app to do
> the right thing on orientation change.  The app would have to rotate and
> animate a resize at the same time. And animating layout sizes is very
> inefficient. There is always going to be something ugly about the way apps
> lay themselves out when they resize. Especially (as we've seen in this bug)
> if they are also busy playing high-resolution video at the same time.
> 
> So if we were still working on the originally reported bug here, I'd
> recommend closing it as invalid.  
> 
> But a white flash does seem like something we should fix.  If we can't get a
> response from Vivien quickly on the gecko issue, we could investigate
> working around this by setting a background-color:black on the body or on
> the video player element.

David: I tried setting background-color on body but it didn't help. The white flash can also be seen when gallery app is scanning and phone is rotated while viewing image in full screen view.
I believe the white flash is coming from outside gallery app DOM and needs to be fixed in system app code base.

Vivian: Bug 926452 fix is trying to get performance gain of ~30 ms. If there is a workaround that we can use in gallery app till Bug 1215077 lands, please suggest else we will have to request revert of Bug 926452. Thanks!
Flags: needinfo?(sotaro.ikeda.g)
Flags: needinfo?(pdahiya)
Flags: needinfo?(21)
Flags: needinfo?(vnicolas)
Tested in today's build on flame-kk and with revert of patch in Bug 926452, the white flash is not seen. Marking bug resolved. Thanks!
Status: NEW → RESOLVED
Closed: 4 years ago
Flags: needinfo?(vnicolas)
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.