Open Bug 1305997 Opened 8 years ago Updated 2 years ago

Firefox removes from SDP mid lines of inactive medias

Categories

(Core :: WebRTC: Networking, defect, P3)

49 Branch
defect

Tracking

()

People

(Reporter: d.fernandezlop, Unassigned)

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36



Actual results:

Firefox is setting medias as inactive and removing inactive medias from bundle group. Firefox is also removing mid lines from inactive media.

As you can see in the offer the audio0 media can be marked as inactive. 

v=0
o=- 3683973371 3683973377 IN IP4 0.0.0.0
s=Origin
c=IN IP4 0.0.0.0
t=0 0
a=group:BUNDLE sdparta_0 sdparta_1 audio0 audio1
a=msid-semantic:WMS *
m=audio 1 UDP/TLS/RTP/SAVPF 109 0
a=rtpmap:109 opus/48000/2
a=rtpmap:0 PCMU/8000
a=rtcp:9 IN IP4 0.0.0.0
a=rtcp-mux
a=recvonly
a=mid:sdparta_0
a=ice-ufrag:eSC9
a=ice-pwd:XNuADKIQaG/aoCgId5jNq1
a=fingerprint:sha-256 7E:92:4A:E6:63:31:1A:12:E2:EA:10:C5:BA:F7:CD:75:EB:70:92:ED:6D:71:A2:00:78:86:09:4A:73:E3:9F:E9
m=video 1 UDP/TLS/RTP/SAVPF 120
b=AS:2000
a=rtpmap:120 VP8/90000
a=fmtp:120 max-fs=12288;max-fr=60
a=rtcp:9 IN IP4 0.0.0.0
a=rtcp-mux
a=sendrecv
a=msid:a9a562b6-1ec3-4d33-888c-7fe69344f71e 4081c199-194d-4dd4-b27f-3b8eabf09779
a=ssrc:1096312450 cname:user2829788078@host-3df8e355
a=mid:sdparta_1
a=rtcp-fb:120 nack
a=rtcp-fb:120 nack pli
a=rtcp-fb:120 goog-remb
a=rtcp-fb:120 ccm fir
a=ice-ufrag:eSC9
a=ice-pwd:XNuADKIQaG/aoCgId5jNq1
a=fingerprint:sha-256 7E:92:4A:E6:63:31:1A:12:E2:EA:10:C5:BA:F7:CD:75:EB:70:92:ED:6D:71:A2:00:78:86:09:4A:73:E3:9F:E9
m=audio 1 UDP/TLS/RTP/SAVPF 109 0
a=rtpmap:109 opus/48000/2
a=rtpmap:0 PCMU/8000
a=fmtp:109 maxplaybackrate=48000;stereo=1
a=rtcp:9 IN IP4 0.0.0.0
a=rtcp-mux
a=mid:audio0
a=recvonly
a=ice-ufrag:eSC9
a=ice-pwd:XNuADKIQaG/aoCgId5jNq1
a=fingerprint:sha-256 7E:92:4A:E6:63:31:1A:12:E2:EA:10:C5:BA:F7:CD:75:EB:70:92:ED:6D:71:A2:00:78:86:09:4A:73:E3:9F:E9
m=audio 1 UDP/TLS/RTP/SAVPF 109 0
a=rtpmap:109 opus/48000/2
a=rtpmap:0 PCMU/8000
a=fmtp:109 maxplaybackrate=48000;stereo=1
a=rtcp:9 IN IP4 0.0.0.0
a=rtcp-mux
a=mid:audio1
a=sendrecv
a=msid:a9a562b6-1ec3-4d33-888c-7fe69344f71e 2dde0bb0-951a-441f-868c-f7d9d5fc1a49
a=ssrc:3504081659 cname:user2829788078@host-3df8e355
a=ice-ufrag:eSC9
a=ice-pwd:XNuADKIQaG/aoCgId5jNq1
a=fingerprint:sha-256 7E:92:4A:E6:63:31:1A:12:E2:EA:10:C5:BA:F7:CD:75:EB:70:92:ED:6D:71:A2:00:78:86:09:4A:73:E3:9F:E9

In the answer is marked as inactive and also is removed its mid line.

v=0
o=mozilla...THIS_IS_SDPARTA-49.0 8732273347354236316 10 IN IP4 0.0.0.0
s=-
t=0 0
a=fingerprint:sha-256 D1:16:7C:65:5B:90:10:CA:8E:7E:F5:87:20:CC:7B:39:AC:4F:A5:F1:28:17:35:41:B5:F1:B5:0D:55:C9:E4:5D
a=group:BUNDLE sdparta_0 sdparta_1 audio1
a=ice-options:trickle
a=msid-semantic:WMS *
m=audio 37606 UDP/TLS/RTP/SAVPF 109
c=IN IP4 193.*.*.*
a=candidate:0 1 UDP 2122252543 192.168.1.193 37606 typ host
a=candidate:3 1 UDP 2122187007 172.17.0.1 56104 typ host
a=candidate:2 1 UDP 1686052607 193.*.*.* 37606 typ srflx raddr 192.168.1.193 rport 37606
a=candidate:5 1 UDP 1685987071 193.*.*.* 56104 typ srflx raddr 172.17.0.1 rport 56104
a=candidate:1 1 UDP 1686052863 193.*.*.* 37606 typ srflx raddr 192.168.1.193 rport 37606
a=candidate:4 1 UDP 1685987327 193.*.*.* 56104 typ srflx raddr 172.17.0.1 rport 56104
a=sendonly
a=ice-pwd:225c3e14db6c12ecb6bc9789d206d69c
a=ice-ufrag:d06efc08
a=mid:sdparta_0
a=msid:{a47b9519-7a47-4f74-a61d-c8d603861c2b} {53222408-41d2-40e7-82b5-7a08f6cf0695}
a=rtcp-mux
a=rtpmap:109 opus/48000/2
a=setup:active
a=ssrc:968040345 cname:{e2ff2a48-3d3e-4e10-9d78-8377c4a8cdf0}
m=video 9 UDP/TLS/RTP/SAVPF 120
c=IN IP4 0.0.0.0
a=sendrecv
a=fmtp:120 max-fs=12288;max-fr=60
a=ice-pwd:225c3e14db6c12ecb6bc9789d206d69c
a=ice-ufrag:d06efc08
a=mid:sdparta_1
a=msid:{a47b9519-7a47-4f74-a61d-c8d603861c2b} {150d6365-1322-46fe-bce6-a59c95f52794}
a=rtcp-fb:120 nack
a=rtcp-fb:120 nack pli
a=rtcp-fb:120 ccm fir
a=rtcp-fb:120 goog-remb
a=rtcp-mux
a=rtpmap:120 VP8/90000
a=setup:active
a=ssrc:114171863 cname:{e2ff2a48-3d3e-4e10-9d78-8377c4a8cdf0}
m=audio 0 UDP/TLS/RTP/SAVPF 0
c=IN IP4 0.0.0.0
a=inactive
a=rtpmap:0 PCMU/8000
m=audio 9 UDP/TLS/RTP/SAVPF 109
c=IN IP4 0.0.0.0
a=recvonly
a=fmtp:109 maxplaybackrate=48000;stereo=1
a=ice-pwd:225c3e14db6c12ecb6bc9789d206d69c
a=ice-ufrag:d06efc08
a=mid:audio1
a=rtcp-mux
a=rtpmap:109 opus/48000/2
a=setup:active
a=ssrc:3869527648 cname:{e2ff2a48-3d3e-4e10-9d78-8377c4a8cdf0}



Expected results:

Following the rfc5888 all the medias must contain a mid line if the SDP contains a group [1]. So, the audio0 media must keep its mid line and you can expect something like that:

m=audio 0 UDP/TLS/RTP/SAVPF 0
a=mid:audio0
c=IN IP4 0.0.0.0
a=inactive
a=rtpmap:0 PCMU/8000

[1] https://tools.ietf.org/html/rfc5888#section-6
Component: Untriaged → WebRTC: Networking
Product: Firefox → Core
Looks like we even remove the unused audio0 group from the group attribute. But I guess this

"If a session description contains at least one "m"
   line that has no "mid" identification, the application MUST NOT
   perform any grouping of media lines."

from RFC 5888 would mean that the inactive m line with no mid Firefox replies with means no grouping at all is allowed to be happening.
Status: UNCONFIRMED → NEW
backlog: --- → webrtc/webaudio+
Rank: 25
Ever confirmed: true
Priority: -- → P2
Mass change P2->P3 to align with new Mozilla triage process.
Priority: P2 → P3
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.