Closed Bug 1507413 Opened Last year Closed Last year
Only 32 transceivers active simultaneously
47 bytes, text/x-phabricator-request
|Details | Review|
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Steps to reproduce: I create 34 transceivers send only with tracks from canvas/audio context, negotiate SDP O/A with my server. Actual results: The first 32 transceivers work, the 33rd (mid=32) and 34 (mid=33) does't. The local description after the SDP O/A shows that only the first 32 are added to the bundle group (and have a non cero port) while the mid=32 and 33 are missing from the bundle group and the port is 0. There is no data sent in that transceivers. If I stop any of the transcivers (mid<31) and perform an SDP O/A then the next mid is added to the group. Note that the sdp created by the createOffer has all the mids in the bundle group and ports = 0, and after the SLD is where the mids are removed and the ports changed. Here is a sample (with dummy o/a so you don't have to rely on my server) to reproduce the issue. It creates all the transceivers and do the sdp o/a and prints the local description in html. https://murillo128.github.io/firefox-transceivers-issue-test/ Expected results: All 34 transceivers are enabled
Dan, this is the bug we briefly talked about. Could you please have a look if you have free cycles?
Assignee: nobody → dminor
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P2
Hi Nils, Could you please also assign a component to this issue as you seem familiar with the subject? Thank you!
Component: Untriaged → WebRTC: Signaling
Product: Firefox → Core
It turns out that there is a limit on the media streams allowed by the C sdp parser here  which is enforced while parsing attribute groups here  which prevents the last two transceivers from being added to the bundle group. Increasing that from 32 to say 64 allows for more transceivers. There also appears to be a limit on the maximum line length allowed by the sdp parser at  which will presumably also cause problems at some point. As far as I can tell, the rust sdp parser does not have any limit on the number of groups or a maximum line length. :bwc, do you see any harm in increasing the constants at  (and maybe )? Thanks!  https://searchfox.org/mozilla-central/rev/55895c49f55073d82d977cb74ec1d3a71ae4b25f/media/webrtc/signaling/src/sdp/sipcc/sdp.h#571  https://searchfox.org/mozilla-central/rev/55895c49f55073d82d977cb74ec1d3a71ae4b25f/media/webrtc/signaling/src/sdp/sipcc/sdp_attr.c#3783  https://searchfox.org/mozilla-central/rev/55895c49f55073d82d977cb74ec1d3a71ae4b25f/media/webrtc/signaling/src/sdp/sipcc/sdp.h#574
I think that would be fine.
This also removes SDP_MAX_LINE_LEN which is unused.
Pushed by email@example.com: https://hg.mozilla.org/integration/autoland/rev/240b08a258e9 Increase number of media streams supported by sipcc; r=bwc
You need to log in before you can comment on or make changes to this bug.