[Battery]: Delay start of TaskQueuePacedSender.
To avoid unnecessary repeating tasks, TaskQueuePacedSender is started only upon RtpTransportControllerSend::EnsureStarted(). More specifically, the repeating task happens in TaskQueuePacedSender::MaybeProcessPackets() every 500ms, using a self task_queue_.PostDelayedTask(). Bug: chromium:1152887 Change-Id: I72c96d2c4b491d5edb45a30b210b3797165cbf48 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208560 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Henrik Boström <hbos@webrtc.org> Reviewed-by: Erik Språng <sprang@webrtc.org> Cr-Commit-Position: refs/heads/master@{#33421}
This commit is contained in:
parent
79011ef4a7
commit
89cb65ed66
@ -133,9 +133,6 @@ RtpTransportControllerSend::RtpTransportControllerSend(
|
||||
initial_config_.key_value_config = trials;
|
||||
RTC_DCHECK(bitrate_config.start_bitrate_bps > 0);
|
||||
|
||||
pacer()->SetPacingRates(
|
||||
DataRate::BitsPerSec(bitrate_config.start_bitrate_bps), DataRate::Zero());
|
||||
|
||||
if (absl::StartsWith(trials->Lookup("WebRTC-LazyPacerStart"), "Disabled")) {
|
||||
EnsureStarted();
|
||||
}
|
||||
@ -498,6 +495,10 @@ void RtpTransportControllerSend::IncludeOverheadInPacedSender() {
|
||||
void RtpTransportControllerSend::EnsureStarted() {
|
||||
if (!use_task_queue_pacer_ && !process_thread_started_) {
|
||||
process_thread_started_ = true;
|
||||
pacer()->SetPacingRates(
|
||||
DataRate::BitsPerSec(
|
||||
bitrate_configurator_.GetConfig().start_bitrate_bps),
|
||||
DataRate::Zero());
|
||||
process_thread_->Start();
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user