Add RtpEncodingParameters.adaptive_ptime.
When enabled:
- Creates an audio network adapter config that is passed to audio send
stream.
- Configures a lower default min bitrate.
All parameters can be configured via a field trial that can also force
enable the audio network adaptor (this is mainly intended for testing).
Bug: chromium:1086942
Change-Id: I48dfcca1ee2948084199352abed6212a6c78eb6c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177840
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31565}
diff --git a/api/rtp_parameters.h b/api/rtp_parameters.h
index 11335e9..b667bf8 100644
--- a/api/rtp_parameters.h
+++ b/api/rtp_parameters.h
@@ -473,6 +473,10 @@
// Called "encodingId" in ORTC.
std::string rid;
+ // Allow dynamic frame length changes for audio:
+ // https://w3c.github.io/webrtc-extensions/#dom-rtcrtpencodingparameters-adaptiveptime
+ bool adaptive_ptime = false;
+
bool operator==(const RtpEncodingParameters& o) const {
return ssrc == o.ssrc && bitrate_priority == o.bitrate_priority &&
network_priority == o.network_priority &&
@@ -481,7 +485,8 @@
max_framerate == o.max_framerate &&
num_temporal_layers == o.num_temporal_layers &&
scale_resolution_down_by == o.scale_resolution_down_by &&
- active == o.active && rid == o.rid;
+ active == o.active && rid == o.rid &&
+ adaptive_ptime == o.adaptive_ptime;
}
bool operator!=(const RtpEncodingParameters& o) const {
return !(*this == o);