Implements a task-queue based PacedSender, wires it up for field trials

Bug: webrtc:10809
Change-Id: Ia181c16559f4598f32dd399c24802d0a289e250b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/150942
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29946}
This commit is contained in:
Erik Språng
2019-11-26 17:48:49 +01:00
committed by Commit Bot
parent 5314b13a8d
commit 4314a494cf
8 changed files with 656 additions and 18 deletions

View File

@ -111,9 +111,14 @@ class PacingController {
// Returns the time since the oldest queued packet was enqueued.
TimeDelta OldestPacketWaitTime() const;
// Number of packets in the pacer queue.
size_t QueueSizePackets() const;
// Totals size of packets in the pacer queue.
DataSize QueueSizeData() const;
// Current buffer level, i.e. max of media and padding debt.
DataSize CurrentBufferLevel() const;
// Returns the time when the first packet was sent;
absl::optional<Timestamp> FirstSentPacketTime() const;