Closed Bug 1207546 Opened 9 years ago Closed 9 years ago

Integrate WebRTC with audio channels

Categories

(Core :: WebRTC: Audio/Video, defect, P1)

defect

Tracking

()

RESOLVED FIXED
mozilla45
Tracking Status
firefox44 --- affected
firefox45 --- fixed

People

(Reporter: noni, Assigned: baku)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 1 obsolete file)

Reproduced across platform with:
* 42.0 beta 1
* latest 43.0a2 Aurora
* latest 44.0a1 Nightly

STR:
1. Open Firefox and click on the Loop/Hello button.
2. Start a conversation and send the link to a friend (or join the conversation from another browser).
3. After the other person joined, observe the tab.

Expected Result:
The visual sound indicator is properly displayed on the tab or standalone window.

Actual Result:
The sound indicator is missing.
Andrea: interested in taking?
Component: Tabbed Browser → WebRTC: Audio/Video
Flags: needinfo?(amarchesini)
Product: Firefox → Core
Summary: Tab sound visual indicator not displayed for Loop calls → Integrate WebRTC with audio channels
Blocks: 1207549
Assignee: nobody → amarchesini
Flags: needinfo?(amarchesini)
Attached patch stream.patch (obsolete) — Splinter Review
The audio/mute icon in the tab label is shown only if the hello URL is opened into a tab window.
Attachment #8667299 - Flags: review?(roc)
Can you please add a test for this too?
Comment on attachment 8667299 [details] [diff] [review]
stream.patch

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

Yeah a test would be good!
Attachment #8667299 - Flags: review?(roc) → review+
Component: WebRTC: Audio/Video → Audio/Video: Playback
Attached patch stream.patchSplinter Review
https://treeherder.mozilla.org/#/jobs?repo=try&revision=9dc34aa3ddab
Attachment #8667299 - Attachment is obsolete: true
Flags: needinfo?(amarchesini)
Keywords: checkin-needed
Component: Audio/Video: Playback → WebRTC: Audio/Video
Backout again for bustage on Mulet

https://treeherder.mozilla.org/logviewer.html#?job_id=15600799&repo=mozilla-inbound

 06:51:16     INFO -  JavaScript warning: file:///home/worker/build/tests/reftest/tests/dom/canvas/test/reftest/webgl-utils.js, line 58: Error: WebGL: Disallowing antialiased backbuffers due to blacklisting.

 06:52:02     INFO -  *** UTM:SVC TimerManager:notify - notified timerID: browser-cleanup-thumbnails

 06:54:02     INFO -  *** UTM:SVC TimerManager:notify - notified @mozilla.org/browser/search-service;1

 06:56:02     INFO -  *** UTM:SVC TimerManager:notify - notified @mozilla.org/browser/experiments-service;1

 06:56:16     INFO -  REFTEST TEST-UNEXPECTED-FAIL | file:///home/worker/build/tests/reftest/tests/dom/canvas/test/reftest/webgl-capturestream-test.html?preserve | load failed: timed out waiting for reftest-wait to be removed

 06:56:16     INFO -  REFTEST INFO | Saved log: START file:///home/worker/build/tests/reftest/tests/dom/canvas/test/reftest/webgl-capturestream-test.html?preserve

 06:56:16     INFO -  REFTEST INFO | Saved log: [CONTENT] OnDocumentLoad triggering WaitForTestEnd

 06:56:16     INFO -  REFTEST INFO | Saved log: [CONTENT] WaitForTestEnd: Adding listeners

 06:56:16     INFO -  REFTEST INFO | Saved log: Initializing canvas snapshot

 06:56:16     INFO -  REFTEST INFO | Saved log: DoDrawWindow 0,0,800,1000
Flags: needinfo?(amarchesini)
backlog: --- → webrtc/webaudio+
Rank: 15
Priority: -- → P1
After several other fruitless backouts, it turns out that this apparently broke Mulet and B2G emulator, webgl-capturestream-test.html?preserve | load failed: timed out waiting for reftest-wait to be removed, https://treeherder.mozilla.org/logviewer.html#?job_id=16624306&repo=mozilla-inbound, at the same time you also broke other webgl reftests with bug 1213154 so it took a while to realize this was also busting things.
mtseng, can you help me here? I don't understand why touching HTMLMediaElement I break some reftests in canvas.
Flags: needinfo?(amarchesini) → needinfo?(mtseng)
Flags: needinfo?(mtseng)
oops, clear ni accidentally. Set it back. I'm looking into this issue now. So keep ni as reminder.
Flags: needinfo?(mtseng)
See Also: → 1174056, 1175590
I can reproduce this problem locally. So I'll find out what problem is in my local machine.
Hi baku, I found [1] will pause element on b2g. So in the webgl-capturestream-test didn't get the new frame because the element is paused. So that the test will time-out. If I commented out the define in [2], the test would pass.

[1]: https://dxr.mozilla.org/mozilla-central/source/dom/html/HTMLMediaElement.cpp#4715
[2]: https://dxr.mozilla.org/mozilla-central/source/dom/html/HTMLMediaElement.cpp#113
Flags: needinfo?(mtseng)
https://treeherder.mozilla.org/logviewer.html#?job_id=16930542&repo=mozilla-inbound

alwu, can you help me with this? I don't know how to run marionette tests to debug it.
Flags: needinfo?(amarchesini) → needinfo?(alwu)
See Also: 1175590
ok, let me check it.
Flags: needinfo?(alwu)
Hi, Baku,
We have got this test case fail before [1].
It might be similar problem as the bug1191207.

I think you can check it with the b2g-desktop build. (the Gaia test is ran on b2g-desktop)

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1183870#c29
Alwu, any news for this? Thanks!
Flags: needinfo?(alwu)
No any progress until now.
As now I can't ran the marionette test with specific build, I used the b2g-desktop to test the situation described by the "Player_test.js".
However, the issue can't be reproduced. 

---

Still trying to run the marionette test with specific build.
Flags: needinfo?(alwu)
It might be a bug that we can't run the marionette test with specific build, I opened the bug 1224112 for this issue.
Hi, Morris,
The comment17 might be the important point, I want to know how to reproduce this situation.
Could you tell me the reproduce steps?
Very appreciate!
Flags: needinfo?(mtseng)
I used the following command to run the reftest, but got the error like that "TEST-UNEXPECTED-FAIL | | EXCEPTION: No tests to run".

> ./mach reftest dom/canvas/test/reftest/webgl-capturestream-test.html
(In reply to Alastor Wu [:alwu] from comment #27)
> I used the following command to run the reftest, but got the error like that
> "TEST-UNEXPECTED-FAIL | | EXCEPTION: No tests to run".

The canvas tests are already fixed. The only problem I see is with the marionette tests.
Flags: needinfo?(mtseng)
Hi, Baku,
I think it might have some relation between these two fails.

First, I don't see any solution for the canvas tests. 
The method in the comment 17 is just to remove the definition of PAUSE_MEDIA_ELEMENT_FROM_AUDIOCHANNEL, it's not a good way and we can't use it.

Second, the marionette test fail means "the music would be paused after it goes to background".
But, I can't reproduce this on my b2g-desktop build, maybe the timing issue involves in?

Canvas test is about the media element paused, marionette test is also about the music paused (I think it's media element too) .

Because now I can't run the custom build for marionette test, I think that might be a good checking point to figure the problem of the canvas test fail.

How do you think?
Flags: needinfo?(amarchesini)
Hi Alwu,
The canvas tests are already fixed in my latest patch. The problem was that we didn't enable the AudioChannel API and we need them for those tests.

About marionette, I would like to run them on b2g-desktop. Any documentation about it?
Flags: needinfo?(amarchesini)
https://hg.mozilla.org/mozilla-central/rev/70e1d04f9487
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla45
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: