Closed
Bug 1150609
Opened 10 years ago
Closed 10 years ago
WebRTC Offer SDP should include tmmbr.
Categories
(Core :: WebRTC: Signaling, defect, P2)
Core
WebRTC: Signaling
Tracking
()
RESOLVED
FIXED
mozilla40
Tracking | Status | |
---|---|---|
firefox40 | --- | fixed |
People
(Reporter: ehugg, Assigned: ehugg)
References
(Blocks 1 open bug)
Details
Attachments
(4 files, 1 obsolete file)
1.28 KB,
patch
|
jesup
:
review+
|
Details | Diff | Splinter Review |
10.33 KB,
patch
|
jesup
:
review+
|
Details | Diff | Splinter Review |
5.26 KB,
patch
|
ehugg
:
review+
|
Details | Diff | Splinter Review |
2.50 KB,
patch
|
Details | Diff | Splinter Review |
According to the rtcweb-rtp-usage, supporting tmmbr is required:
https://tools.ietf.org/html/draft-ietf-rtcweb-rtp-usage-23#section-5.1.6
It appears that at least since the update to webrtc40 we honor incoming tmmbr requests.
What we don't do is put tmmbr in the offer so the other side will know we support it.
There's also the issue that we don't parse the tmmbr info from the remote SDP - that is bug 1097169.
Assignee | ||
Comment 1•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → ethanhugg
Status: NEW → ASSIGNED
Assignee | ||
Comment 2•10 years ago
|
||
Assignee | ||
Comment 3•10 years ago
|
||
Assignee | ||
Comment 4•10 years ago
|
||
Try builds for testing:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=bdf4cd48c674
Assignee | ||
Updated•10 years ago
|
Attachment #8587515 -
Flags: review?(rjesup)
Assignee | ||
Updated•10 years ago
|
Attachment #8588687 -
Flags: review?(rjesup)
Assignee | ||
Updated•10 years ago
|
Attachment #8588688 -
Flags: review?(rjesup)
Updated•10 years ago
|
Attachment #8587515 -
Flags: review?(rjesup) → review+
Comment 5•10 years ago
|
||
Comment on attachment 8588687 [details] [diff] [review]
WebRTC enable tmmbr
Review of attachment 8588687 [details] [diff] [review]:
-----------------------------------------------------------------
Just a question: (perhaps for byron) if we renegotiate, and the CCM/FB options change, do we re-init the media channel (and call ConfigureRecvMediaCodecs)?
Do we need to enable TMMBR on ConfigureSendMediaCodec as well? Probably not... I presume if we receive a TMMBR we'll send TMMBN
::: media/webrtc/signaling/src/media-conduit/VideoConduit.cpp
@@ +864,5 @@
> }
> mUsingNackBasic = use_nack_basic;
>
> + if (use_tmmbr) {
> + CSFLogDebug(logTag, "Enabling TMMBR (recv) for video stream");
remove "(recv)"; this enables send; reception is enabled even if not negotiated.
@@ +866,5 @@
>
> + if (use_tmmbr) {
> + CSFLogDebug(logTag, "Enabling TMMBR (recv) for video stream");
> + if (mPtrRTP->SetTMMBRStatus(mChannel, true) != 0) {
> + CSFLogError(logTag, "%s EnableTMMBR Failed %d ", __FUNCTION__,
SetTMMBRStatus failed
Attachment #8588687 -
Flags: review?(rjesup) → review+
Updated•10 years ago
|
Attachment #8588688 -
Flags: review?(rjesup) → review+
Assignee | ||
Comment 6•10 years ago
|
||
Tested against Chrome 41 on talky.io and apprtc.appspot.com. This does not seem to affect interop with Chrome.
Assignee | ||
Comment 7•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Attachment #8588687 -
Attachment is obsolete: true
Assignee | ||
Comment 8•10 years ago
|
||
Comment on attachment 8590073 [details] [diff] [review]
WebRTC enable tmmbr
Nits fixed. Bringing forward r+ from jesup.
Attachment #8590073 -
Flags: review+
Comment 9•10 years ago
|
||
I did some LAN testing with TMMBR (and/or REMB) enabled.
One item of minor concern is that running with TMMBR or REMB enabled seems to slow rampup (at least initial rampup) to the 2Mbps limit. Without TMMBR, it takes about 30 seconds to ramp; with TMMBR and/or REMB it seems to take 80, perhaps 100s.
It would be good to check it across a non-LAN.
Flags: needinfo?(ethanhugg)
Assignee | ||
Comment 10•10 years ago
|
||
Try run to check if this breaks our current tests:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=5d6108ae866c
Assignee | ||
Comment 11•10 years ago
|
||
Assignee | ||
Comment 12•10 years ago
|
||
Regarding the question about renegotiation from comment #5. I added a test patch here that adds renegotiation tests for ccm fir and ccm tmmbr and neither of them seem re-init the media channel or call ConfigureRecvMediaCodecs. I think we may need the fix from bug 1097169 in order for them to negotiate that properly.
Flags: needinfo?(ethanhugg)
Updated•10 years ago
|
Rank: 21
Priority: -- → P2
Comment 13•10 years ago
|
||
Ethan: since IIRC your testing on real networks indicated there was no negative (or really positive) impact of enabling this (but not REMB) for 1:1 call scenarios, we should probably land this and start getting some feedback on nightly. Also file a bug on REMB, as Chrome will continue to use REMB until a replacement is available from RMCAT, so we should enable it if we can resolve the congestion ramp speed issue you and I saw (please note this in the bug you file).
Flags: needinfo?(ethanhugg)
Assignee | ||
Comment 14•10 years ago
|
||
REMB investigation is bug 1155435
I will land these patches as soon as M-I opens.
Flags: needinfo?(ethanhugg)
Comment 15•10 years ago
|
||
Comment 16•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/e05164f377a8
https://hg.mozilla.org/mozilla-central/rev/c286e689a766
https://hg.mozilla.org/mozilla-central/rev/30ac11a24fdc
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
status-firefox40:
--- → fixed
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla40
Comment 17•10 years ago
|
||
Ethan: do these patches need uplift to 39? And do we need parsing support again?
Flags: needinfo?(ethanhugg)
Assignee | ||
Comment 18•10 years ago
|
||
I don't think there's a pressing need to uplift this. We should let it ride the trains to get more testing.
bug 1097169 is the bug for parsing the remote tmmbr. Without it, it ends up in the extras field.
Flags: needinfo?(ethanhugg)
Assignee | ||
Comment 19•10 years ago
|
||
We may need to back this out and investigate further. It does not seem to play well with the Spark native client - causing the far side to stop sending after a couple minutes.
You need to log in
before you can comment on or make changes to this bug.
Description
•