Closed
Bug 1112410
Opened 10 years ago
Closed 10 years ago
[Video player] tapping fast forward / rewind as user receives call video controls breaks
Categories
(Core :: Audio/Video, defect, P5)
Tracking
()
People
(Reporter: rmitchell, Assigned: sotaro)
References
()
Details
(Keywords: regression, Whiteboard: [2.2-exploratory-2])
Attachments
(7 files)
1.78 MB,
text/plain
|
Details | |
71.52 KB,
text/x-log
|
Details | |
76.36 KB,
text/x-log
|
Details | |
1.04 KB,
patch
|
cpearce
:
review+
Sylvestre
:
approval-mozilla-aurora+
Sylvestre
:
approval-mozilla-beta+
bajaj
:
approval-mozilla-b2g34+
bajaj
:
approval-mozilla-b2g37+
|
Details | Diff | Splinter Review |
6.82 KB,
patch
|
cpearce
:
review+
|
Details | Diff | Splinter Review |
2.61 MB,
video/mp4
|
Details | |
1.08 MB,
video/mp4
|
Details |
Description:
Taping fast forward and rewind up to the point a phone receives a call, after call is ended play fast forward and rewind are broken
Repro Steps:
1) Update a Flame to 20141216040205
2) Launch a video player > play video
3) Have another device call
4) As the call is inbound tap fast forward button till call screen is prompted
Actual:
video is blacked out, play/pause, fast foreword, and rewind are broken
Expected:
Video plays normally
Environmental Variables:
Device: Flame 2.2 (319mb)(Kitkat Base)(Full Flash)
Build ID: 20141216040205
Gaia: af3d2f89f391c92667e04676fc0ac971e6021bb7
Gecko: a3030140d5df
Gonk: e5c6b275d77ca95fb0f2051c3d2242e6e0d0e442
Version: 37.0a1 (2.2)
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
Repro frequency: 3/5
See attached: logcat, video clip:https://www.youtube.com/watch?v=RX4JAlGYKbU&feature=youtu.be
Flags: needinfo?(dharris)
Note: this occurs most in landscape mode
issue was affected in 2.1 flame
Play fast forward and rewind are broken
Flame 2.1
Environmental Variables:
Device: Flame 2.1 (319mb)(Kitkat Base)(Full Flash)
Build ID: 20141216001202
Gaia: 79286eafe67707d1330966c1b1413b2d0de595d9
Gecko: 222a62b532db
Gonk: e5c6b275d77ca95fb0f2051c3d2242e6e0d0e442
Version: 34.0 (2.1)
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
does not occur on 2.0
Flame 2.0
this appears to be a landscape issues, there was no landscape on 2.0
Environmental Variables:
Device: Flame 2.0 (319mb)(Kitkat Base)(Full Flash)
Build ID: 20141216000202
Gaia: f3b9806f687fbbd7eba6b0e1f6ebb8bde09840ea
Gecko: 12aea1649f5a
Gonk: e5c6b275d77ca95fb0f2051c3d2242e6e0d0e442
Version: 32.0 (2.0)
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
status-b2g-v2.1:
--- → affected
This repro of this bug is 3/5 and doesnt seem like a high use case, but looks very bad to the end user. NI windows management owner for blocking decision
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
status-b2g-v2.0:
unaffected → ---
Flags: needinfo?(dharris) → needinfo?(gchang)
Comment 3•10 years ago
|
||
NI NoJun for more information as he's the QA contact for media.
Flags: needinfo?(gchang) → needinfo?(npark)
Comment 4•10 years ago
|
||
[Blocking Requested - why for this release]:
This looks like a significant failure to me, noming for 2.1
blocking-b2g: --- → 2.1?
Flags: needinfo?(npark)
Comment 5•10 years ago
|
||
Can QA help with the regression range here ? NI :Hema as well to help with this, blocking on this due to a couple of issues : buttons are broken and the orientation is not as expected, screen goin black etc..
blocking-b2g: 2.1? → 2.1+
Keywords: regression,
regressionwindow-wanted
Updated•10 years ago
|
QA Contact: ckreinbring
Comment 6•10 years ago
|
||
Regression window
Last working
BuildID: 20141021174634
Gaia: 82174cee5ede9f23aedad8a39f8b8cdc1ae710c4
Gecko: 367d8d88c2cb
Platform Version: 36.0a1
Firmware Version: V188-1
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
First broken
BuildID: 20141021184730
Gaia: 4d7f051cede6544f4c83580253c743c22b0cb279
Gecko: 580073ea1544
Platform Version: 36.0a1
Firmware Version: V188-1
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
Working Gaia / Broken Gecko = No repro
Gaia: 82174cee5ede9f23aedad8a39f8b8cdc1ae710c4
Gecko: 580073ea1544
Broken Gaia / Working Gecko = Repro
Gaia: 4d7f051cede6544f4c83580253c743c22b0cb279
Gecko: 367d8d88c2cb
Gaia pushlog: https://github.com/mozilla-b2g/gaia/compare/82174cee5ede9f23aedad8a39f8b8cdc1ae710c4...4d7f051cede6544f4c83580253c743c22b0cb279
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: regressionwindow-wanted
Comment 7•10 years ago
|
||
pushlog indicates Bug 1082563 - can you take a look Russ?
Blocks: 1082563
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell) → needinfo?(rnicoletti)
QA Contact: ckreinbring
Updated•10 years ago
|
Assignee: nobody → rnicoletti
Comment 8•10 years ago
|
||
I tried more than 10 times following the STR but I cannot reproduce the issue. I tried v2.1 BuildID 20141216001202 and also with the latest master build. In any event, I would like to know if using the forward/rewind functionality is necessary to recreate the issue. Either way, it's possible there is an issue with reloading the video on a visibility change. This is the functionality that was changed by bug 1082563; the change was the video app no longer explicitly unloads and loads the video when going to the background and coming back to the foreground because gecko is handling that.
RJ, can you try recreating without the forward/rewind tapping? It would be helpful to know if that is necessary to recreate this.
Sotaro, can you take a look at the attached video and logcat and comment on whether there may be a gecko issue re-loading the video when the video app comes back to the foreground after the call is dismissed?
Flags: needinfo?(sotaro.ikeda.g)
Flags: needinfo?(rnicoletti)
Flags: needinfo?(rmitchell)
Comment 9•10 years ago
|
||
RJ is no longer 'with us' - adding QA-Wanted to address his NI from prior comment
Comment 10•10 years ago
|
||
I was only able to reproduce this issue on the Flame 2.2 by pressing and holding down the rewind, fast forward or slider buttons while watching a video until the call screen appears.
1. Launch the video app and play a video.
2. While the video is playing, press and hold down the rewind or fast forward button.
3. Have another phone call the test phone.
4. Take your finger off the rewind or fast forward button once the call screen appears.
5. Tap the red button to end the call and then try to play the video again.
Actual:
The video controls will no longer work and the screen will be blank instead of showing the video.
Environmental Variables:
Device: Flame 2.2 Master (319mb)(Kitkat Base)(Full Flash)
BuildID: 20150106010234
Gaia: b77e0d56d197e0ee02d801a25c784130d888c9db
Gecko: 2a193b7f395c
Gonk: a814b2e2dfdda7140cb3a357617dc4fbb1435e76
Version: 37.0a1 (2.2 Master)
Firmware: V188-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
Repro frequency: 100% 5/5 attempts
Updated•10 years ago
|
QA Contact: ktucker
Comment 11•10 years ago
|
||
NI on Russ, can you reproduce on master given the STR in comment 10?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(pbylenga) → needinfo?(rnicoletti)
Comment 12•10 years ago
|
||
I was able to reproduce using the STR in comment 10, although not consistently. In any event, I'm attaching the logcat for when the issue reproduced and also a logcat for when it did not reproduce. However, I don't see any obvious difference between the two.
I need to do more investigation to figure out whether there is something weird going in with gecko or that app.
Flags: needinfo?(rnicoletti)
Comment 13•10 years ago
|
||
Comment 14•10 years ago
|
||
(In reply to Russ Nicoletti [:russn] from comment #12)
>
> I need to do more investigation to figure out whether there is something
> weird going in with gecko or that app.
I need to do more investigation to see whether or not the video has been reloaded and if so whether the current position is correct. That is, it still needs to be determined if this is a gecko issue or a video app issue.
Assignee | ||
Comment 15•10 years ago
|
||
I could reproduce the problem on the STR in comment 10. I am going to investigate the problem from gecko side point of view.
Flags: needinfo?(sotaro.ikeda.g)
Comment 16•10 years ago
|
||
Sotara, here is what I've found from my investigating:
When the phone call is dismissed and when the video app comes to the foreground, the video app gets a 'loadedmetdata' event -- indicating the video has been reloaded -- but it does not get a 'timeupdated' event like it normally does when the video app comes back to the foreground after having been in the background.
When the video app comes back to the foreground, the ‘seeking’ property of the video element remains true because the app does not get a ‘seeked’ event.
When the issue does not reproduce, the video app after coming back to the foreground gets the ‘loadedmetadata’, ‘timeupdated’, and ‘seeked’ events (at which point of course the ‘seeking’ property has been set to false).
Assignee | ||
Comment 17•10 years ago
|
||
russn, thanks for the investigation! I am still in the middle of investigation. But the problem seems to be caused by MediaDecoderStateMachine's problem. When the problem happened incorrect state transition was observed.
Assignee | ||
Updated•10 years ago
|
Component: Gaia::Video → Video/Audio
Product: Firefox OS → Core
Assignee | ||
Comment 18•10 years ago
|
||
Changed to correct component from Comment 16 and Comment 17.
Assignee | ||
Comment 19•10 years ago
|
||
This problem seems a regression of MediaDecoderStateMachine's asynchronization.
Assignee | ||
Comment 20•10 years ago
|
||
When the problem happened, MediaDecoderStateMachine::SetDormant(true) was called, MediaDecoderStateMachine's state did not stay DECODER_STATE_DORMANT state, it soon backed to DECODER_STATE_DECODING without MediaDecoderStateMachine::SetDormant(false) call.
Assignee | ||
Comment 21•10 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro PTO Dec/24-Jan/6] from comment #20)
> When the problem happened, MediaDecoderStateMachine::SetDormant(true) was
> called, MediaDecoderStateMachine's state did not stay DECODER_STATE_DORMANT
> state, it soon backed to DECODER_STATE_DECODING without
> MediaDecoderStateMachine::SetDormant(false) call.
Sorry, yesterday's investigation was incorrect.
Assignee | ||
Comment 22•10 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro PTO Dec/24-Jan/6] from comment #21)
> (In reply to Sotaro Ikeda [:sotaro PTO Dec/24-Jan/6] from comment #20)
> > When the problem happened, MediaDecoderStateMachine::SetDormant(true) was
> > called, MediaDecoderStateMachine's state did not stay DECODER_STATE_DORMANT
> > state, it soon backed to DECODER_STATE_DECODING without
> > MediaDecoderStateMachine::SetDormant(false) call.
>
> Sorry, yesterday's investigation was incorrect.
In my log, there were multiple instances of MediaDecoderStateMachine logout and misunderstood it.
Assignee | ||
Comment 23•10 years ago
|
||
The problem was happened because of conflict between seek and dormant. In current implementation, if dormant happen during seeking, the seeking status is cleared when exiting dormant state.
Assignee | ||
Comment 24•10 years ago
|
||
russn, I take this bug since the problem is in gecko side. Thanks.
Assignee: rnicoletti → sotaro.ikeda.g
Assignee | ||
Comment 25•10 years ago
|
||
The patch fixed the problem locally.
Assignee | ||
Comment 26•10 years ago
|
||
attachment 8546114 [details] [diff] [review] can not apply directly to b2g v2.1. attachment 8546114 [details] [diff] [review] has a dependency to Bug 1065827.
Assignee | ||
Updated•10 years ago
|
Attachment #8546114 -
Flags: review?(cpearce)
Updated•10 years ago
|
Attachment #8546114 -
Flags: review?(cpearce) → review+
Assignee | ||
Comment 27•10 years ago
|
||
Assignee | ||
Comment 28•10 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro PTO Dec/24-Jan/6] from comment #26)
> attachment 8546114 [details] [diff] [review] can not apply directly to b2g
> v2.1. attachment 8546114 [details] [diff] [review] has a dependency to Bug
> 1065827.
It seems better to avoid uplifting whole Bug 1065827 fix to b2g v2.1. The change is too big. Need to minimize the change.
Assignee | ||
Comment 29•10 years ago
|
||
A patch for b2g v2.1. Code of b2g v2.1 has some difference from master. Therefore the patch is also different from the patch for master.
Assignee | ||
Comment 30•10 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro PTO Dec/24-Jan/6] from comment #29)
> Created attachment 8547628 [details] [diff] [review]
> patch for b2g v2.1 - Handle set dormant during seeking
>
> A patch for b2g v2.1. Code of b2g v2.1 has some difference from master.
> Therefore the patch is also different from the patch for master.
attachment 8547628 [details] [diff] [review] has some code from a fix of Bug 1065827.
Assignee | ||
Comment 31•10 years ago
|
||
Comment on attachment 8547628 [details] [diff] [review]
patch for b2g v2.1 - Handle set dormant during seeking
cpearce, can you review the patch? The patch for b2g v2.1 is a bit different from a patch for master.
Attachment #8547628 -
Flags: review?(cpearce)
Assignee | ||
Comment 32•10 years ago
|
||
Updated•10 years ago
|
Priority: -- → P5
Assignee | ||
Comment 33•10 years ago
|
||
Updated•10 years ago
|
Attachment #8547628 -
Flags: review?(cpearce) → review+
Comment 34•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla38
Comment 35•10 years ago
|
||
Please request b2g34 and b2g37 approval on the relevant patches when you get a chance :)
status-b2g-master:
--- → fixed
Assignee | ||
Comment 36•10 years ago
|
||
Comment on attachment 8546114 [details] [diff] [review]
patch - Handle set dormant during seeking
NOTE: Please see https://wiki.mozilla.org/Release_Management/B2G_Landing to better understand the B2G approval process and landings.
[Approval Request Comment]
Bug caused by (feature/regressing bug #): Bug 871485
User impact if declined: failed to playback video in some use cases.
It continue until an application exit.
Testing completed: locally done.
Risk to taking this patch (and alternatives if risky): low risk.
String or UUID changes made by this patch: none
Attachment #8546114 -
Flags: approval-mozilla-b2g37?
Attachment #8546114 -
Flags: approval-mozilla-b2g34?
Comment 37•10 years ago
|
||
Comment on attachment 8546114 [details] [diff] [review]
patch - Handle set dormant during seeking
Can QA please help with branch verification once this lands. Thanks!
Attachment #8546114 -
Flags: approval-mozilla-b2g37?
Attachment #8546114 -
Flags: approval-mozilla-b2g37+
Attachment #8546114 -
Flags: approval-mozilla-b2g34?
Attachment #8546114 -
Flags: approval-mozilla-b2g34+
Comment 38•10 years ago
|
||
https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/e45d664da0df
https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/rev/9743e85c0224
Comment 39•10 years ago
|
||
Comment on attachment 8546114 [details] [diff] [review]
patch - Handle set dormant during seeking
MSE team would like this on 37 and 36 to reduce variance in dom/media during feature uplift.
Approval Request Comment
[Feature/regressing bug #]: MSE
[User impact if declined]: Less consistent testing; more difficult to apply fixes later in the release cycle.
[Describe test coverage new/current, TBPL]: Landed on m-c.
[Risks and why]: This affects non-MSE playback, but is an isolated change.
[String/UUID change made/needed]: None.
Attachment #8546114 -
Flags: approval-mozilla-beta?
Attachment #8546114 -
Flags: approval-mozilla-aurora?
Comment 40•10 years ago
|
||
I guess the wontfixes were an typo.
Updated•10 years ago
|
Attachment #8546114 -
Flags: approval-mozilla-beta?
Attachment #8546114 -
Flags: approval-mozilla-beta+
Attachment #8546114 -
Flags: approval-mozilla-aurora?
Attachment #8546114 -
Flags: approval-mozilla-aurora+
Comment 42•10 years ago
|
||
status-b2g-v2.1S:
--- → fixed
Comment 43•10 years ago
|
||
Comment 44•10 years ago
|
||
Comment 45•10 years ago
|
||
(In reply to Sylvestre Ledru [:sylvestre] from comment #40)
> I guess the wontfixes were an typo.
I usually set them on B2G uplifts when it looks like they aren't wanted for Fx (judging by affected product, lack of approval requests, etc). In this case, it would have been good if they'd been set back to affected at the time of the approval request.
Comment 46•10 years ago
|
||
This bug has been successfully verified on Flame v2.1 by the steps in Comment 0 & Comment 10.
See attachment: verified_v2.1.mp4 and verified_v2.2.mp4.
Reproduce rate: 0/6.
Flame v2.1 build:
Gaia-Rev 77c57eb8a985d5cbd34a597fb1b978ba6e205af6
Gecko-Rev https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/rev/452a023ae7b2
Build-ID 20150119001222
Version 34.0
Device-Name flame
FW-Release 4.4.2
FW-Incremental eng.cltbld.20150119.035259
FW-Date Mon Jan 19 03:53:10 EST 2015
Bootloader L1TC000118D0
Flame v2.2 build:
Gaia-Rev f5b3d1b6cfa3e702033f613915ae637cb735cbfb
Gecko-Rev https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/bccee1a13ba6
Build-ID 20150119002502
Version 37.0a2
Device-Name flame
FW-Release 4.4.2
FW-Incremental eng.cltbld.20150119.035831
FW-Date Mon Jan 19 03:58:42 EST 2015
Bootloader L1TC000118D0
Comment 47•10 years ago
|
||
Comment 48•10 years ago
|
||
Comment 49•10 years ago
|
||
This issue has been verified as fixed on Flame 3.0
The video controls work as expected after pressing the rewind or fast forward buttons then receiving and ending a call.
Environmental Variables:
Device: Flame 3.0(Full Flash)(KK)(319mb)
BuildID: 20150121010204
Gaia: 5e98dc164b17fd6decb48a9eaddef0e55b82e249
Gecko: 540077a30866
Gonk: e7c90613521145db090dd24147afd5ceb5703190
Version: 38.0a1 (3.0)
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0
You need to log in
before you can comment on or make changes to this bug.
Description
•