Add ability to set rtp header extensions without recreating streams.

Setting the rtp header extensions on the packet delivery thread
(currently worker, soon to be network), is now possible without
taking the hit of deleting and recreating the receive stream (and
rtp receiver and related state).

Bug: webrtc:11993
Change-Id: I9bbe306844a25d85d79cd216092ead66eaf68960
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223741
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34953}
This commit is contained in:
Tommi
2021-09-08 10:44:50 +02:00
committed by WebRTC LUCI CQ
parent 9af2d92287
commit 1f38a38b6f
19 changed files with 107 additions and 16 deletions

View File

@ -31,6 +31,8 @@ class RtpHeaderExtensionMap {
explicit RtpHeaderExtensionMap(bool extmap_allow_mixed);
explicit RtpHeaderExtensionMap(rtc::ArrayView<const RtpExtension> extensions);
void Reset(rtc::ArrayView<const RtpExtension> extensions);
template <typename Extension>
bool Register(int id) {
return Register(id, Extension::kId, Extension::kUri);