Firefox doesn't respect a=extmap mapping when renegotiating with createOffer()
Categories
(Core :: WebRTC: Signaling, defect, P2)
Tracking
()
People
(Reporter: ibc, Unassigned)
Details
Updated•7 years ago
|
Comment 1•7 years ago
|
||
Reporter | ||
Comment 2•7 years ago
|
||
Reporter | ||
Comment 3•7 years ago
|
||
Comment 4•7 years ago
|
||
Comment 5•4 years ago
|
||
from https://tools.ietf.org/html/rfc8285#section-5
Local identifiers in the valid range inclusive in an offer or answer
must not be used more than once per media section (including the
session-level section). The local identifiers MUST be unique in an
RTP session, and the same identifier MUST be used for the same
offered extension in the answer. A session update MAY change the
direction qualifiers of extensions being used. A session update MAY
add or remove extension(s). Identifier values in the valid range
MUST NOT be altered (remapped).
Note where is says "Identifier values in the valid range
MUST NOT be altered (remapped)."
I would think they would stay the same when you were renegotiating because they can already been set on the local description.
Chrome already does this.
This is causes problems for us because the answerer expects the header extensions ids to stay the same.
I set this as localdescription in CHROME:
m=audio 9 UDP/TLS/RTP/SAVPF 96 9 0 8 97 98
a=extmap:2 urn:ietf:params:rtp-hdrext:sdes:mid
m=video 9 UDP/TLS/RTP/SAVPF 99 100 101
a=extmap:1 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:2 urn:ietf:params:rtp-hdrext:sdes:mid
when I created an offer I got:
m=audio 57387 UDP/TLS/RTP/SAVPF 96 9 0 8 97 98 103 104 106 105 13 112 113
a=extmap:2 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:14 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:1 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:3 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:5 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id
a=extmap:6 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id
m=video 9 UDP/TLS/RTP/SAVPF 99 100 101 123 122 127 121 102 120 126 119 107 108 109 110 111 125 118 114 115 116
a=extmap:1 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:2 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:13 urn:ietf:params:rtp-hdrext:toffset
a=extmap:12 urn:3gpp:video-orientation
a=extmap:3 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:11 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:10 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type
a=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timing
a=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/color-space
a=extmap:5 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id
a=extmap:6 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id
Observe that the id for the extension remained the same
But in FIREFOX when this is set in the local description the
m=video 9 UDP/TLS/RTP/SAVPF 99 100 101
c=IN IP4 0.0.0.0
a=extmap:1/recvonly http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:2/sendrecv urn:ietf:params:rtp-hdrext:sdes:mid
andd I create an offer I get:
m=audio 57423 UDP/TLS/RTP/SAVPF 96 9 0 8 98
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
m=video 9 UDP/TLS/RTP/SAVPF 99 100 101 97 98
c=IN IP4 0.0.0.0
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:5 urn:ietf:params:rtp-hdrext:toffset
a=extmap:6/recvonly http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:7 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
Note the header extension for urn:ietf:params:rtp-hdrext:sdes:mid changed from 2 to 3.
Comment 6•4 years ago
|
||
If I'm not mistaken Inaki's old fiddle (Thanks for that!) no longer repros a problem. Firefox does answer with the IDs from the offer now.
But based on comment #5 the problem still exists when the IDs cross multiple m-sections.
Updated•2 years ago
|
Description
•