Skip to content
This repository was archived by the owner on Oct 25, 2024. It is now read-only.

Commit c790a7c

Browse files
authored
Set priority of rtp_send_controller task queue to high for low latency mode. (#177)
1 parent 5e89808 commit c790a7c

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

call/rtp_transport_controller_send.cc

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ static const int64_t kRetransmitWindowSizeMs = 500;
3636
static const size_t kMaxOverheadBytes = 500;
3737

3838
constexpr TimeDelta kPacerQueueUpdateInterval = TimeDelta::Millis(25);
39+
const char kLowLatencyStreaming[] = "OWT-LowLatencyMode";
3940

4041
TargetRateConstraints ConvertConstraints(int min_bitrate_bps,
4142
int max_bitrate_bps,
@@ -54,6 +55,11 @@ TargetRateConstraints ConvertConstraints(int min_bitrate_bps,
5455
return msg;
5556
}
5657

58+
bool LowLatencyStreamingEnabled() {
59+
std::string trial = webrtc::field_trial::FindFullName(kLowLatencyStreaming);
60+
return trial.find("Enabled") == 0;
61+
}
62+
5763
TargetRateConstraints ConvertConstraints(const BitrateConstraints& contraints,
5864
Clock* clock) {
5965
return ConvertConstraints(contraints.min_bitrate_bps,
@@ -119,10 +125,13 @@ RtpTransportControllerSend::RtpTransportControllerSend(
119125
congestion_window_size_(DataSize::PlusInfinity()),
120126
is_congested_(false),
121127
retransmission_rate_limiter_(clock, kRetransmitWindowSizeMs),
122-
// TODO: Potentially change priority when low latency mode is enabled.
123-
task_queue_(task_queue_factory->CreateTaskQueue(
124-
"rtp_send_controller",
125-
TaskQueueFactory::Priority::NORMAL)),
128+
task_queue_(LowLatencyStreamingEnabled()
129+
? task_queue_factory->CreateTaskQueue(
130+
"rtp_send_controller",
131+
TaskQueueFactory::Priority::HIGH)
132+
: task_queue_factory->CreateTaskQueue(
133+
"rtp_send_controller",
134+
TaskQueueFactory::Priority::NORMAL)),
126135
field_trials_(trials) {
127136
ParseFieldTrial({&relay_bandwidth_cap_},
128137
trials.Lookup("WebRTC-Bwe-NetworkRouteConstraints"));

0 commit comments

Comments
 (0)