-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is it illegal to modify sdp between createOffer and setLocalDescription? #2907
Comments
All browsers are violating the spec. Modifying SDP is not allowed. |
Historically, features have been shipped via SDP modifications rather than APIs. The API side of things have been playing catch-up, e.g. setCodecPreferences() to allow modifying codecs that way instead of "SDP munging" or the recent API to modify header extensions to negotiating in the extension spec. So the list of reasons for SDP munging is quite small these days, but I'm not sure all holes have been plugged just yet. |
@jan-ivar @alvestrand Should we make an official list of "holes that needs to be plugged"? |
Thank you for explaining the detail. |
Enabling encoding/decoding of non-default-enabled but implemented codecs is
a missing piece of API, so yes.
I *think* you can get it by manipulating the remote SDP instead of the
local SDP (which is allowed) but that may require that the remote end sends
the offer, which may be a nonstarter for your particular use case.
…On Tue, Nov 7, 2023 at 10:44 AM y-i ***@***.***> wrote:
Thank you for explaining the detail.
In my case, I modified a SDP directly to use L16 to use Lyra codec over
WebRTC.
—
Reply to this email directly, view it on GitHub
<#2907 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AADVM7IUXE65JAY7KOQ2EEDYDH7I7AVCNFSM6AAAAAA7AZTS62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJYGE2DQNBVGE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
We should add a test for this (that would fail) |
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phancke@microsoft.com> Reviewed-by: Harald Alvestrand <hta@chromium.org> Cr-Commit-Position: refs/heads/main@{#1248758}
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phancke@microsoft.com> Reviewed-by: Harald Alvestrand <hta@chromium.org> Cr-Commit-Position: refs/heads/main@{#1248758}
Discussion how to enable codecs like L16 should now happen in #2925 |
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phancke@microsoft.com> Reviewed-by: Harald Alvestrand <hta@chromium.org> Cr-Commit-Position: refs/heads/main@{#1248758}
…nging, a=testonly Automatic update from web-platform-tests webrtc wpt: add failing tests for SDP munging covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phancke@microsoft.com> Reviewed-by: Harald Alvestrand <hta@chromium.org> Cr-Commit-Position: refs/heads/main@{#1248758} -- wpt-commits: d38fb52d7074a59d68803b2d211a2a193f78f8bd wpt-pr: 44044
…nging, a=testonly Automatic update from web-platform-tests webrtc wpt: add failing tests for SDP munging covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phanckemicrosoft.com> Reviewed-by: Harald Alvestrand <htachromium.org> Cr-Commit-Position: refs/heads/main{#1248758} -- wpt-commits: d38fb52d7074a59d68803b2d211a2a193f78f8bd wpt-pr: 44044 UltraBlame original commit: 90899997ab4060c1cafc0287db868fc8b7db19ef
…nging, a=testonly Automatic update from web-platform-tests webrtc wpt: add failing tests for SDP munging covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phanckemicrosoft.com> Reviewed-by: Harald Alvestrand <htachromium.org> Cr-Commit-Position: refs/heads/main{#1248758} -- wpt-commits: d38fb52d7074a59d68803b2d211a2a193f78f8bd wpt-pr: 44044 UltraBlame original commit: 90899997ab4060c1cafc0287db868fc8b7db19ef
…nging, a=testonly Automatic update from web-platform-tests webrtc wpt: add failing tests for SDP munging covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phanckemicrosoft.com> Reviewed-by: Harald Alvestrand <htachromium.org> Cr-Commit-Position: refs/heads/main{#1248758} -- wpt-commits: d38fb52d7074a59d68803b2d211a2a193f78f8bd wpt-pr: 44044 UltraBlame original commit: 90899997ab4060c1cafc0287db868fc8b7db19ef
…nging, a=testonly Automatic update from web-platform-tests webrtc wpt: add failing tests for SDP munging covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phancke@microsoft.com> Reviewed-by: Harald Alvestrand <hta@chromium.org> Cr-Commit-Position: refs/heads/main@{#1248758} -- wpt-commits: d38fb52d7074a59d68803b2d211a2a193f78f8bd wpt-pr: 44044
covering both read-only RTCSessionDescription and actual SDP munging. See also w3c/webrtc-pc#2907 BUG=chromium:662898,chromium:823036 Change-Id: Iaabbd131198d18203de4fb7436e4d8c37fb9452e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5204646 Commit-Queue: Philipp Hancke <phancke@microsoft.com> Reviewed-by: Harald Alvestrand <hta@chromium.org> Cr-Commit-Position: refs/heads/main@{#1248758}
I read "4.4.2 Interface Definition" and have a question about [[LastCreatedOffer]].
Considering the behavior of the above code, according to step 5 of createOffer, the value will be set in [[LastCreatedOffer]] when createOffer is called.
If setLocalDescription is called after editing the SDP, it appears to be rejected with an InvalidModificationError because an sdp different from [[LastCreatedOffer]] is passed in step 4.2.
However, when I actually run it, all modern browsers (Chrome/Firefox/Safari) resolve it.
Am I misunderstanding something about this?
Or do all browsers violate the spec?
The text was updated successfully, but these errors were encountered: