Closed Bug 1162639 Opened 9 years ago Closed 9 years ago

loadedmetadata event is not triggered when playing a MediaStream in a <video> tag on Firefox OS

Categories

(Core :: Audio/Video, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla40
blocking-b2g 2.2+
Tracking Status
firefox38 --- wontfix
firefox39 --- wontfix
firefox40 --- fixed
b2g-v2.2 --- verified
b2g-master --- verified

People

(Reporter: julienw, Assigned: sotaro)

References

Details

(Keywords: regression, testcase)

Attachments

(3 files, 1 obsolete file)

STR1:
1. load http://julienw.github.io/capture/
2. grant access

Expected:
* the video is playing.

Actual:
* the video is not playing.

The same code works in Firefox Desktop and Chrome (as I included a polyfill for mediadevices).

It uses <video>.src = URL.createObjectURL(stream).

STR1 doesn't work in v2.1 or in master, I haven't tried v2.2.


I also made a testcase using mozSrcObject:

STR2:
1. load https://everlong.org/mozilla/capture/
2. grant access

Expected:
* the video is playing.

Actual:
* the video is not playing.

STR2 works also in Firefox Desktop (likely not in Chrome as I use mozSrcObject but I haven't tried). More importantly, STR2 works in a v2.1 device (Open C). I haven't tried v2.2.

Full source code in https://github.com/julienw/capture, I included a manifest.webapp file so that you can install easily on a device using using install-to-adb [1] to test this case as well. So far I got the exact same results on a master phone.

QAWanted to test both STR on v2.2.


[1] https://www.npmjs.com/package/install-to-adb
Component: WebRTC: Audio/Video → Video/Audio
I checked the symptom on master flame. HTMLMediaElement suspended loading src at HTMLMediaElement::SelectResource(), because "mPreloadAction == HTMLMediaElement::PRELOAD_NONE".
  https://dxr.mozilla.org/mozilla-central/source/dom/html/HTMLMediaElement.cpp#881
But there was inconsistency how to handle "mPreloadAction == HTMLMediaElement::PRELOAD_NONE" between the following.
- video.src
- video.mozSrcObject

When video source is set by mozSrcObject, mozSrcObject did not check PRELOAD_NONE.
The patch make how to handle MediaStreamURI consistently between the following.
- video.src
- video.mozSrcObject
attachment 8602981 [details] [diff] [review] fixed the problem for me on master flame.
(In reply to Sotaro Ikeda [:sotaro] from comment #3)
> Created attachment 8602981 [details] [diff] [review]
> patch - Make consistent how to handle MediaStreamURI
> 
> The patch make how to handle MediaStreamURI consistently between the
> following.
> - video.src
> - video.mozSrcObject

In MediaStreamURI case, HTMLMediaElement does not do load by itself. And mozSrcObject already ignore PRELOAD_NONE. Therefore it seems reasonable to ignore PRELOAD_NONE in MediaStreamURI case.
Comment on attachment 8602981 [details] [diff] [review]
patch - Make consistent how to handle MediaStreamURI

julienw, can you check if julienw works for you?
Attachment #8602981 - Flags: feedback?(felash)
(In reply to Sotaro Ikeda [:sotaro] from comment #6)
> Comment on attachment 8602981 [details] [diff] [review]
> patch - Make consistent how to handle MediaStreamURI
> 
> julienw, can you check if julienw works for you?

Sorry for typo. Can you check if attachment 8602981 [details] [diff] [review] work for you?
Attachment #8602981 - Flags: review?(cpearce)
Assignee: nobody → sotaro.ikeda.g
Sorry Sotaro, I can't check now (leaving for holidays for 1 week). If this can wait 1 week I can check this when I get back.

We also need someone to test this on FxOS v2.2 to know if we need to uplift.
blocking-b2g: --- → 2.2?
On today's Flame 2.2 nightly build, STR1 does NOT show the video, and STR2 DOES show the video.

Environmental Variables:
Device: Flame 2.2 (KK, 319mb, full flash)
Build ID: 20150507002500
Gaia: 83a63e0e6fcc22c6a74b06ef77b88d5049719cad
Gecko: 118ddfc76b60
Gonk: ab265fb203390c70b8f2a054f38cf4b2f2dad70a
Version: 37.0 (2.2)
Firmware Verson: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Keywords: qawanted
Sotaro, do you know if <video>.src = URL.createObjectURL(<MediaStream>) is supposed to work in v2.2 (gecko 37)?
Comment on attachment 8602981 [details] [diff] [review]
patch - Make consistent how to handle MediaStreamURI

Review of attachment 8602981 [details] [diff] [review]:
-----------------------------------------------------------------

roc should review MediaStream related patches.
Attachment #8602981 - Flags: review?(cpearce) → review?(roc)
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Attachment #8602981 - Flags: feedback?(felash)
On my side, both STR1 and STR2 did not work on latest v2.2 flame-kk.
(In reply to Sotaro Ikeda [:sotaro] from comment #12)
> On my side, both STR1 and STR2 did not work on latest v2.2 flame-kk.

It was because, MetadataLoaded() did not called because MediaStream did not update MediaSize.
Bug 1149494 fixed this problem. But only Bug 1149494 still did not fix the problem.

It is because "MediaElement pauses the underlying MediaStream globally". Then NotifyQueuedTrackChanges() was not called. It is fixed by Bug 1073406.

By applying Bug 1073406 fix, Bug 1149494 and attachment 8602981 [details] [diff] [review], I confirmed that STR1 and STR2 worked on my v2.2 flame-kk.

But Bug 1073406 caused some regressions to address them, Bug 1109405 and Bug 1124139 becomes necessary.

In total the following fixes become necessary.
- attachment 8602981 [details] [diff] [review]
- Bug 1073406
- Bug 1149494
- Bug 1109405
- Bug 1124139
pehrsons, can I have a comment to Comment 13? Is there a more bug need to apply related to Bug 1073406?
Flags: needinfo?(pehrsons)
Whiteboard: [keep open]
(In reply to Sotaro Ikeda [:sotaro] from comment #13)
> 
> In total the following fixes become necessary.
> - attachment 8602981 [details] [diff] [review]
> - Bug 1073406
> - Bug 1149494
> - Bug 1109405
> - Bug 1124139

Bug 1109405 was already applied to b2g v2.2. Updated list to fix on b2g v2.2 is the following.

 - attachment 8602981 [details] [diff] [review]
 - Bug 1073406
 - Bug 1149494
 - Bug 1124139
(In reply to Sotaro Ikeda [:sotaro] from comment #14)
> pehrsons, can I have a comment to Comment 13? Is there a more bug need to
> apply related to Bug 1073406?

I went through all blockers of bug 879717 and I think you might be exposed to bug 1123950 on v2.2.

It was fixed by bug 1129263. Uplifting that might get a bit more involved, but is hopefully straight-forward.
Flags: needinfo?(pehrsons)
I wonder if fixing bug 1054706 would help for detecting this as well. It could be that all tests involving MediaStreams with video are skipped on B2G.
See Also: → 1054706
Thanks! Then updated related fixes for b2g v2.2 are the followings.

 - attachment 8602981 [details] [diff] [review]
 - Bug 1073406
 - Bug 1149494
 - Bug 1124139
 - Bug 1129263
Josh Cheng, can we fix this bug on b2g v2.2? If this is not fixed, some web content's getUserMedia() do not work on b2g v2.2. But the fix needs some uplifts as in Comment 20.
Flags: needinfo?(jocheng)
blocking-b2g: 2.2? → 2.2+
OS: Unspecified → Gonk (Firefox OS)
Hardware: Unspecified → ARM
(In reply to Sotaro Ikeda [:sotaro] from comment #20)
> Thanks! Then updated related fixes for b2g v2.2 are the followings.
> 
>  - attachment 8602981 [details] [diff] [review]
>  - Bug 1073406
>  - Bug 1149494
>  - Bug 1124139
>  - Bug 1129263

Also note that bug 1129263 has some dependencies. I don't think you want bug 1017888, so that will have to be worked around.
I have an obsoleted patch for bug 1123950 (attachment 8556807 [details] [diff] [review]) that could perhaps be easier to use than to take all of bug 1129263 with dependencies. Might need some testing though.
Hi Sotaro, Hi Andreas,
Can we have a final confirm bug list? Given this is includes lots of patches and we are in FC now. I think it would be better to have QA perform related regression test against a local build with these patches before approving here. 

Thanks!
Flags: needinfo?(jocheng) → needinfo?(pehrsons)
Flags: needinfo?(sotaro.ikeda.g)
I don't really have the time or means to test this on B2G right now so I'll defer to Sotaro.
Flags: needinfo?(pehrsons)
Attachment #8602981 - Flags: qa-approval?(echang)
Hi Sotaro, 

For QA verifying purpose, could you provide a local build with all patches you mentioned?
Thanks!
Updating the bug summary for clear understanding. Please correct it if I misunderstood it.
Summary: Playing a MediaStream in a <video> tag doesn't seem to work on Firefox OS → loadedmetadata event is not triggered when playing a MediaStream in a <video> tag on Firefox OS
(In reply to Josh Cheng [:josh] from comment #26)
> Hi Sotaro, 
> 
> For QA verifying purpose, could you provide a local build with all patches
> you mentioned?
> Thanks!

I did not have a time today. I am going to do it tomorrow.
(In reply to Andreas Pehrson [:pehrsons] (Telenor) from comment #23)
> I have an obsoleted patch for bug 1123950 (attachment 8556807 [details] [diff] [review]
> [diff] [review]) that could perhaps be easier to use than to take all of bug
> 1129263 with dependencies. Might need some testing though.

all of bug 1129263 with dependencies requests a lot of uplift. It seems too much to up lift to b2g v2.2. bug 1123950 (attachment 8556807 [details] [diff] [review]) seems better.
Flags: needinfo?(sotaro.ikeda.g)
The updated list is the following.
  - attachment 8602981 [details] [diff] [review]
  - Bug 1073406
  - Bug 1149494
  - Bug 1124139
  - bug 1123950
A patch for b2g v2.2 of Bug 1073406 includes bug 1123950. Then the list is updated like the following.
  - attachment 8602981 [details] [diff] [review]
  - Bug 1073406 (patch for b2gv2.2 includes bug 1123950)
  - Bug 1149494
  - Bug 1124139
Depends on: 1073406, 1149494, 1124139
(In reply to Sotaro Ikeda [:sotaro] from comment #31)
> A patch for b2g v2.2 of Bug 1073406 includes bug 1123950. Then the list is
> updated like the following.
>   - attachment 8602981 [details] [diff] [review]
>   - Bug 1073406 (patch for b2gv2.2 includes bug 1123950)
>   - Bug 1149494
>   - Bug 1124139

Hmm a patch of bug 1123950 causes the this bug's symptom...
Bug 1129263 depends on the followings.
- bug 1017888
- bug 1116925
- bug 1130290
- bug 1140089

bug 1017888 is not necessary from comment 22. Bug 1130290 is not ncecessary because it just remove dead code. Therefore the followings are necessary for Bug 1129263
- bug 1116925
- bug 1130290
- bug 1140089
Then the followings are necessary for b2g v2.2.
 - attachment 8602981 [details] [diff] [review]
 - Bug 1073406
 - Bug 1149494
 - Bug 1124139
 - Bug 1129263
 - bug 1116925
 - bug 1130290
 - bug 1140089
(In reply to Sotaro Ikeda [:sotaro] from comment #34)
> bug 1017888 is not necessary from comment 22. Bug 1130290 is not ncecessary
> because it just remove dead code. Therefore the followings are necessary for
> Bug 1129263
> - bug 1116925
> - bug 1130290
> - bug 1140089

Correction:
the followings are necessary for Bug 1129263
 - bug 1116925
 - bug 1140089
Then the followings are necessary for b2g v2.2.
 - attachment 8602981 [details] [diff] [review]
 - Bug 1073406
 - Bug 1149494
 - Bug 1124139
 - Bug 1129263
   + bug 1116925
   + bug 1140089
Locally I tried to uplift Bug 1129263, but it actually have more dependencies. Patches in the bug needs the following.
- Bug 992685
- Bug 1089798
- Bug 1095218

Bug 1095218 has dependency to Bug 1091242. It has also dependency to another bugs. They have also huge changes :-(
From comment 38, it seems better to fix a patch of bug 1123950, instead of uplifting Bug 1129263.
Depends on: 1123950
Fixed a problem of bug 1123950's patch. Then I locally conformed the fix by applying the following.

The updated list is the following.
  - attachment 8602981 [details] [diff] [review]
  - Bug 1073406
  - Bug 1149494
  - Bug 1124139
  - bug 1123950
(In reply to Josh Cheng [:josh] from comment #26)
> Hi Sotaro, 
> 
> For QA verifying purpose, could you provide a local build with all patches
> you mentioned?
> Thanks!

Hi Josh, I pushed locally build gecko binary to the following.
  http://people.mozilla.org/~sikeda/rom/flame-kk-gecko-b2gv22.zip

gecko can be updated by "./flash gecko".

To the rom, I applied the following
  - attachment 8602981 [details] [diff] [review] [diff] [review]
  - Bug 1073406
  - Bug 1149494
  - Bug 1124139
  - bug 1123950
Flags: needinfo?(jocheng)
I have chosen below test suites as a regression test for the local patch on comment 42.

1st-3rd suites are for Firefox OS which are necessary, and the others are for Firefox Desktop/Mobile which I think they might be reusable.

Naoki, let you know this bug and maybe you have any suggestion for the regression suites.


<Test Suites>
 - [Media PF]getUserMedia API
 - [Media PF]Web Audio API
 - [Media PF]Media Recording API
 - Firefox Mobile: HTML5 Video Controls
 - Firefox Mobile: HTML5 Video Controls v2.0
 - Firefox Mobile: Video Autoplay
 - getUserMedia - Video Sharing tests
 - getUserMedia - Audio Sharing tests
 - Play Audio/Video formats
Flags: needinfo?(nhirata.bugzilla)
(In reply to Sotaro Ikeda [:sotaro] from comment #42)
> (In reply to Josh Cheng [:josh] from comment #26)
> > Hi Sotaro, 
> > 
> > For QA verifying purpose, could you provide a local build with all patches
> > you mentioned?
> > Thanks!
> 
> Hi Josh, I pushed locally build gecko binary to the following.
>   http://people.mozilla.org/~sikeda/rom/flame-kk-gecko-b2gv22.zip
> 
> gecko can be updated by "./flash gecko".
> 
> To the rom, I applied the following
>   - attachment 8602981 [details] [diff] [review]
>   - Bug 1073406
>   - Bug 1149494
>   - Bug 1124139
>   - bug 1123950

Thank you Sotaro!

Hi Hermes,
Could you please help to perform test on the local build provided by Sotaro per comment 42?
Thanks!
Flags: needinfo?(hcheng)
Josh, The patch of Bug 1123950 is going to be changed. I will create a new binary after the change is fixed.
Flags: needinfo?(jocheng)
Flags: needinfo?(jocheng)
(In reply to Josh Cheng [:josh] from comment #44)
> Thank you Sotaro!
> 
> Hi Hermes,
> Could you please help to perform test on the local build provided by Sotaro
> per comment 42?
> Thanks!

A quick update...

I did some tests with the local build from comment 42.
Basically, it passed most of the tests, except the 1st-2nd suites which materials need to be updated.

not yet - [Media PF]getUserMedia API         // needs be fixed
not yet - [Media PF]Media Recording API      // needs be fixed
pass - [Media PF]Web Audio API
pass - Firefox Mobile: HTML5 Video Controls
pass - getUserMedia - Video Sharing tests    // skip "never" & "always" cases
pass - getUserMedia - Audio Sharing tests    // skip "never" & "always" cases
pass - Play Audio/Video formats

After the new local build mentioned in comment 45 is ready, I will use online HTML5 demo app to perform more tests before 1st-2nd suites are fixed.
Flags: needinfo?(hcheng)
Sotaro,
Could you please NI me when the new binary is ready?
Flags: needinfo?(sotaro.ikeda.g)
Hermes, I saw something that land in regards to camera / camera preview.

It may be good to go through some test cases around that as well.

I would think that we want to try different file types + different stream types of video and audio including camera/camera preview/camera video/video/web/music?  Which also means that gallery might be affected if taking a video from camera.  Race conditions where audio channels such as alarms and such or scrubbing the dial fast forward would probably be a good idea.

Not too sure about music, maybe Sotaro could answer that part.
Flags: needinfo?(nhirata.bugzilla)
Hi Sotaro,
Is it possible to collect all patches in one bug with one commit?
I think it would be easier for us to backout if anything go wrong.
Thanks!
(In reply to Josh Cheng [:josh] from comment #50)
> Hi Sotaro,
> Is it possible to collect all patches in one bug with one commit?
> I think it would be easier for us to backout if anything go wrong.
> Thanks!

Hmm, I do not know about it. Within the bugs, Bug 1073406 has a highest regression risk. And it has dependency to other bugs that need to uplift.
Flags: needinfo?(sotaro.ikeda.g)
Ryan, can you anwer comment 50? To fix this bug on b2g v2.2, we need to uplift the following patches.

  - attachment 8602981 [details] [diff] [review]
  - Bug 1073406
  - Bug 1149494
  - Bug 1124139
  - bug 1123950
Flags: needinfo?(ryanvm)
We can do the uplift any way you want. A branch roll-up can certainly be done if that's preferred.
Flags: needinfo?(ryanvm)
Thanks, I am going to create a roll-up patch.
Bug 1149494 is already uplifted on b2g v2.2, then related fixes becomes the followings.
  - attachment 8602981 [details] [diff] [review]
  - Bug 1073406
  - Bug 1124139
  - bug 1123950
Attached patch roll-up patch for b2g v2.2 (obsolete) — Splinter Review
The patch have the followings changes.
  - attachment 8605305 [details] [diff] [review]
  - Bug 1073406
  - Bug 1124139
  - bug 1123950
(In reply to Sotaro Ikeda [:sotaro] from comment #42)
> (In reply to Josh Cheng [:josh] from comment #26)
> > Hi Sotaro, 
> > 
> > For QA verifying purpose, could you provide a local build with all patches
> > you mentioned?
> > Thanks!
> 
> Hi Josh, I pushed locally build gecko binary to the following.
>   http://people.mozilla.org/~sikeda/rom/flame-kk-gecko-b2gv22.zip

Updated the binary with the latest patches.
http://people.mozilla.org/~sikeda/rom/flame-kk-gecko-b2gv22_20150519.zip

gecko can be updated by "./flash gecko". It has the followings changes.
  - attachment 8605305 [details] [diff] [review]
  - Bug 1073406
  - Bug 1124139
  - bug 1123950
Hi Hermes,
Could you please help to verify again?
Thank you!
Flags: needinfo?(hcheng)
Flags: needinfo?(jocheng)
(In reply to Sotaro Ikeda [:sotaro] from comment #58)
> (In reply to Sotaro Ikeda [:sotaro] from comment #42)
> > (In reply to Josh Cheng [:josh] from comment #26)
> > > Hi Sotaro, 
> > > 
> > > For QA verifying purpose, could you provide a local build with all patches
> > > you mentioned?
> > > Thanks!
> > 
> > Hi Josh, I pushed locally build gecko binary to the following.
> >   http://people.mozilla.org/~sikeda/rom/flame-kk-gecko-b2gv22.zip
> 
> Updated the binary with the latest patches.
> http://people.mozilla.org/~sikeda/rom/flame-kk-gecko-b2gv22_20150519.zip
> 
> gecko can be updated by "./flash gecko". It has the followings changes.
>   - attachment 8605305 [details] [diff] [review]
>   - Bug 1073406
>   - Bug 1124139
>   - bug 1123950

I have used this gecko build to perform some tests, and currently this patch seems ok!
After the patch is uplifted to v2.2, we will perform more tests on it.

A. some HTML5 online demo for <Video>, <Audio>, and getUserMedia, such as below.
   - http://www.w3.org/2010/05/video/mediaevents.html 

B. Camera/Video/Gallery basic operations and preview (comment 49)

C. Play different file format (mp3/ogg/ogv/webm/mp4) at Music/Video App

D. Related Test Suites @MozTrap
 - [Media PF]Web Audio API
 - Firefox Mobile: HTML5 Video Controls
 - getUserMedia - Video Sharing tests
 - getUserMedia - Audio Sharing tests
 - Play Audio/Video formats
Flags: needinfo?(hcheng)
However, I noticed that keyboard is not shown at SIM PIN input dialog when I used this local gecko build.
Flags: needinfo?(jocheng)
Hi Sotaro,
Thanks for the patch, however can you check whether the issue at comment 61 is related to your patch?
Thanks!
Flags: needinfo?(sotaro.ikeda.g)
I do not think that SIM PIN is related to the patch. My local build is created by default moz build. Therefore RIL also seems to use moz RIL, instead of qcom RIL. It might cause the problem.
Flags: needinfo?(sotaro.ikeda.g)
(In reply to Hermes Cheng[:hermescheng] from comment #61)
> However, I noticed that keyboard is not shown at SIM PIN input dialog when I
> used this local gecko build.

I tried SIM PIN input on my side, the keyboard was shown at SIM PIN.
(In reply to Sotaro Ikeda [:sotaro] from comment #64)
> (In reply to Hermes Cheng[:hermescheng] from comment #61)
> > However, I noticed that keyboard is not shown at SIM PIN input dialog when I
> > used this local gecko build.
> 
> I tried SIM PIN input on my side, the keyboard was shown at SIM PIN.

To check it, I updated local build rom by using "./flash.sh"(not only gecko).
(In reply to Sotaro Ikeda [:sotaro] from comment #65)
> (In reply to Sotaro Ikeda [:sotaro] from comment #64)
> > (In reply to Hermes Cheng[:hermescheng] from comment #61)
> > > However, I noticed that keyboard is not shown at SIM PIN input dialog when I
> > > used this local gecko build.
> > 
> > I tried SIM PIN input on my side, the keyboard was shown at SIM PIN.
> 
> To check it, I updated local build rom by using "./flash.sh"(not only gecko).

In my twice tests (comment 47 & comment 60), I only updated gecko.
I got this error at FTU during 1st booting.
hermescheng, can you create a ROM by applying the roll-up patch on your side?
Flags: needinfo?(hcheng)
(In reply to Hermes Cheng[:hermescheng] from comment #66)
> In my twice tests (comment 47 & comment 60), I only updated gecko.
> I got this error at FTU during 1st booting.

I tried several times, but I did not see the symptom.
My 2 cents: it is very very unlikely that these patches can cause the SIM PIN issue.
It is wired, but I retried several times but did not get SIM PIN issue.
Flags: needinfo?(hcheng)
(In reply to Sotaro Ikeda [:sotaro] from comment #67)
> hermescheng, can you create a ROM by applying the roll-up patch on your side?

Hi Eric,
Hermes is in PTO. Can you help to apply the rollup patch? Thanks!
Flags: needinfo?(jocheng) → needinfo?(echang)
I will test and update this today, thanks.
Flags: needinfo?(echang)
>>> TESTING

A. some HTML5 online demo for <Video>, <Audio>, and getUserMedia, such as below.
   - http://www.w3.org/2010/05/video/mediaevents.html 
--> playbackRate-- & playbackRate-=0.1 are not working, video just stops, but they don't work on my browser gecko 38 either.


B. Camera/Video/Gallery basic operations and preview (comment 49)
--> 
1. HDR button is missing.
2. (low reproduce rate, STR varies) Trying to record for a couple of times, machine is sluggish; After tapping record, the counter is not advanced until couple seconds later, you will see 00:00 then followed by 00:14, skipping all the counter in between; Dark screen at first, then preview shows. Let me try to play around with it again, I want to make sure the issues are from patch, my local build or existed on PVT.



C. Play different file format (mp3/ogg/ogv/webm/mp4) at Music/Video App
--> not tested yet.

D. Related Test Suites @MozTrap
 - [Media PF]Web Audio API
 - Firefox Mobile: HTML5 Video Controls
 - getUserMedia - Video Sharing tests
 - getUserMedia - Audio Sharing tests
 - Play Audio/Video formats
--> not tested yet.


E.
- http://julienw.github.io/capture/
- https://everlong.org/mozilla/capture/
--> Works as expected

>>> LOCAL BUILD
Build ID               20150527103401
Gaia Revision          922131eb994ed0db9b5d911e020d36bdf1d2cf18
Gaia Date              2015-05-26 08:05:06
Gecko Revision         n/a
Gecko Version          37.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.ericcc.20150527.102501
Firmware Date          Wed May 27 10:25:23 CST 2015
Bootloader             L1TC100118D0
Hi Shing, 

Please help on the other tests that Eric does not perform. He will provide you the build to test. You can contact him directly.
Flags: needinfo?(slyu)
Got it, will check with Eric.
Flags: needinfo?(slyu)
Some recording issue might be related to the patch, check item B.1. & B.2.

>>> TESTING
A. some HTML5 online demo for <Video>, <Audio>, and getUserMedia, such as below.
   - http://www.w3.org/2010/05/video/mediaevents.html 
--> playbackRate-- & playbackRate-=0.1 are not working, video just stops, but they don't work on my browser gecko 38 either.


B. Camera/Video/Gallery basic operations and preview (comment 49)
--> 
1. (50% reproduce rate) After tapping record, it is about a second later then V2.2 to start recording. 
2. (50% reproduce rate) After tapping record, the counter is not advanced until couple seconds later, you will see 00:00 then followed by 00:14, skipping all the counter in between

C. Play different file format (mp3/ogg/ogv/webm/mp4) at Music/Video App
--> Works as expected.

D. Related Test Suites @MozTrap
 - [Media PF]Web Audio API
 - Firefox Mobile: HTML5 Video Controls
 - getUserMedia - Video Sharing tests
 - getUserMedia - Audio Sharing tests
 - Play Audio/Video formats
--> Need to sync with Hermes on these suites, I run some cases from B2G Video suites, they are all passed.

E.
- http://julienw.github.io/capture/
- https://everlong.org/mozilla/capture/
--> Works as expected.

>>> LOCAL BUILD
Build ID               20150527103401
Gaia Revision          922131eb994ed0db9b5d911e020d36bdf1d2cf18
Gaia Date              2015-05-26 08:05:06
Gecko Revision         n/a
Gecko Version          37.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.ericcc.20150527.102501
Firmware Date          Wed May 27 10:25:23 CST 2015
Bootloader             L1TC100118D0
(In reply to Eric Chang [:ericcc] [:echang] from comment #76)
> Some recording issue might be related to the patch, check item B.1. & B.2.

echang, is it compared to default v2.2 flame-kk ROM?
Flags: needinfo?(echang)
Yes, I used a v2.2 PVT build as my control group.
Flags: needinfo?(echang)
(In reply to Eric Chang [:ericcc] [:echang] from comment #78)
> Yes, I used a v2.2 PVT build as my control group.

Eric and I have performed similar tests with normal memory setting, and we did not get recording issue for now. It might result from 319MB setting.
In my opinion, it is ok to uplift these patches to v2.2.
Flags: needinfo?(jocheng)
(In reply to Sotaro Ikeda [:sotaro] from comment #58)
> 
> gecko can be updated by "./flash gecko". It has the followings changes.
>   - attachment 8605305 [details] [diff] [review]
>   - Bug 1073406
>   - Bug 1124139
>   - bug 1123950

I noticed that Bug 1073406 and Bug 1124139 are already uplifted to v2.2... So, it seems better to uplift the remaining in each bug.
 - attachment 8605305 [details] [diff] [review]
 - bug 1123950
(In reply to Sotaro Ikeda [:sotaro] from comment #81)
> (In reply to Sotaro Ikeda [:sotaro] from comment #58)
> > 
> > gecko can be updated by "./flash gecko". It has the followings changes.
> >   - attachment 8605305 [details] [diff] [review]
> >   - Bug 1073406
> >   - Bug 1124139
> >   - bug 1123950
> 
> I noticed that Bug 1073406 and Bug 1124139 are already uplifted to v2.2...
> So, it seems better to uplift the remaining in each bug.
>  - attachment 8605305 [details] [diff] [review]
>  - bug 1123950

Hi Sotaro,
Yes, please help to raise approval request for rest of them. Thanks
Flags: needinfo?(jocheng) → needinfo?(sotaro.ikeda.g)
Attachment #8607590 - Attachment is obsolete: true
Flags: needinfo?(sotaro.ikeda.g)
Comment on attachment 8605305 [details] [diff] [review]
patch for b2g v2.2 - Make consistent how to handle MediaStreamURI

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 #): none(not clear)
User impact if declined: loadedmetadata event is not emitted when playing a MediaStream in a <video> tag.
Testing completed: locally tested and QA tested
Risk to taking this patch (and alternatives if risky): low
String or UUID changes made by this patch: none.
Attachment #8605305 - Flags: approval-mozilla-b2g37?
Attachment #8605305 - Flags: approval-mozilla-b2g37? → approval-mozilla-b2g37+
Keywords: verifyme
Status: NEW → ASSIGNED
Comment on attachment 8602981 [details] [diff] [review]
patch - Make consistent how to handle MediaStreamURI

Per #c80 set +.
Attachment #8602981 - Flags: qa-approval?(echang) → qa-approval+
Whiteboard: [keep open]
Target Milestone: --- → mozilla40
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Attached video Video:1445.mp4
Hi, Julien
  From comment0 ,I can't real understand the expected results.According to comment9,I build my device on that day.And i inferred  the issue that there should be a window which can record just like camera.In latest Flame 2.2, the behavour is same as what I suspected.(See attachment 1445 [details].mp4).Could you please confirm whether my inference is right? Thanks.

Device information:
Flame 2.2:
Build ID               20150604002503

Flame 3.0:
Build ID               20150604160205
Flags: needinfo?(felash)
Yeah, this looks right !

My expectation is that at least STR 1 or 2 is working on all branches. I expect STR 2 to be deprecated at one point but I think it should still work these days. And STR 1 is new code so I'd be fine if it doesn't work in v2.2 (but if it works it's better :D)

Hope this is clear :)
Flags: needinfo?(felash)
This bug has been verified as pass(both STR1 and STR2) on latest build of Flame v2.2 &v3.0 by the STR in Comment 0. 
Please see video in comment 86

Leave it as " verifyme" and let it wait to get verified on firefox40.

Actual results:
 There is a window which can record just like camera after you entered the web.

Reproduce rate: 0/10

Device Flame 2.2(pass):
Build ID               20150607002503
Gaia Revision          8fc797527a3eca7665bc1d1828848f2fb77ca99f
Gaia Date              2015-06-04 07:46:11
Gecko Revision         https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/d213237e11e9
Gecko Version          37.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150607.035848
Firmware Date          Sun Jun  7 03:58:59 EDT 2015
Bootloader             L1TC000118D0

Device Flame3.0(pass):
Build ID               20150607160204
Gaia Revision          1d62b32408567f9f7cf1c71c1e5a0c6593be757b
Gaia Date              2015-06-05 17:55:07
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/7d4ab4a9febd
Gecko Version          41.0a1
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150607.193246
Firmware Date          Sun Jun  7 19:32:58 EDT 2015
Bootloader             L1TC000118D0
Thanks Elie & Sotaro, I have also performed some tests on v2.2, and it worked as expected! ;)
Hi Sotaro,
Just an quick question, can you add unit test or integration test in order to prevent such regression in the future?
Thanks!
Flags: needinfo?(sotaro.ikeda.g)
Flags: needinfo?(sotaro.ikeda.g)
You need to log in before you can comment on or make changes to this bug.