Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Hervey <edward@centricular.com>2023-04-14 11:42:51 +0300
committerSebastian Dröge <sebastian@centricular.com>2023-06-06 22:43:33 +0300
commit18773a9df149cd65b81474dbf6d1c7e7a5a01646 (patch)
tree8c3d36debe6acc4d6df7e9ae10be9cecd97b3d2b
parente8e247d1edb8e57a9ff68a5800cfdc671218f533 (diff)
rtpgccbwe: Improve packet handling
Both the delay-based *and* loss-based estimates should be computed instead of just one. This ensures faster adaptation. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1233>
-rw-r--r--net/rtp/src/gcc/imp.rs8
1 files changed, 3 insertions, 5 deletions
diff --git a/net/rtp/src/gcc/imp.rs b/net/rtp/src/gcc/imp.rs
index f56d0a785..4dff33113 100644
--- a/net/rtp/src/gcc/imp.rs
+++ b/net/rtp/src/gcc/imp.rs
@@ -1190,11 +1190,9 @@ impl ObjectSubclass for BandwidthEstimator {
let mut state = this.state.lock().unwrap();
state.detector.update(&mut packets);
- if !state.delay_control(&bwe) {
- state.loss_control(&bwe)
- } else {
- true
- }
+ let bitrate_updated_by_delay = state.delay_control(&bwe);
+ let bitrate_updated_by_loss = state.loss_control(&bwe);
+ bitrate_updated_by_delay || bitrate_updated_by_loss
};
if bitrate_changed {