Add periodic compound packet sending to RtcpTransceiver

Bug: webrtc:8239
Change-Id: I1511db63a15e8c5101a933e55e66d3877ff963be
Reviewed-on: https://webrtc-review.googlesource.com/15440
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20480}
This commit is contained in:
Danil Chapovalov
2017-10-30 15:21:41 +01:00
committed by Commit Bot
parent e5c4265619
commit 8c8d49ea0f
6 changed files with 199 additions and 6 deletions

View File

@ -13,6 +13,8 @@
#include <string>
#include "rtc_base/task_queue.h"
namespace webrtc {
class ReceiveStatisticsProvider;
class Transport;
@ -43,11 +45,25 @@ struct RtcpTransceiverConfig {
// Transport to send rtcp packets to. Should be set.
Transport* outgoing_transport = nullptr;
// Minimum period to send receiver reports and attached messages.
int min_periodic_report_ms = 1000;
// Queue for scheduling delayed tasks, e.g. sending periodic compound packets.
rtc::TaskQueue* task_queue = nullptr;
// Rtcp report block generator for outgoing receiver reports.
ReceiveStatisticsProvider* receive_statistics = nullptr;
//
// Tuning parameters.
//
// Delay before 1st periodic compound packet.
int initial_report_delay_ms = 500;
// Period between periodic compound packets.
int report_period_ms = 1000;
//
// Flags for features and experiments.
//
bool schedule_periodic_compound_packets = true;
};
} // namespace webrtc