Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(858)

Unified Diff: chrome/renderer/media/cast_rtp_stream.cc

Issue 562653004: Cast: First stab at implementing adaptive latency (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comment fixed Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/renderer/media/cast_rtp_stream.cc
diff --git a/chrome/renderer/media/cast_rtp_stream.cc b/chrome/renderer/media/cast_rtp_stream.cc
index dfcca7ac9c87def7ecdcdd4bf69b579275b43892..cf2fdb9e31f9346b0dd181e640deffe49a0aa0a8 100644
--- a/chrome/renderer/media/cast_rtp_stream.cc
+++ b/chrome/renderer/media/cast_rtp_stream.cc
@@ -160,9 +160,16 @@ bool ToAudioSenderConfig(const CastRtpParams& params,
config->incoming_feedback_ssrc = params.payload.feedback_ssrc;
if (config->ssrc == config->incoming_feedback_ssrc)
return false;
- config->target_playout_delay =
+ config->min_playout_delay =
+ base::TimeDelta::FromMilliseconds(
+ params.payload.min_latency_ms ?
+ params.payload.min_latency_ms :
+ params.payload.max_latency_ms);
+ config->max_playout_delay =
base::TimeDelta::FromMilliseconds(params.payload.max_latency_ms);
- if (config->target_playout_delay <= base::TimeDelta())
+ if (config->min_playout_delay <= base::TimeDelta())
+ return false;
+ if (config->min_playout_delay > config->max_playout_delay)
return false;
config->rtp_payload_type = params.payload.payload_type;
config->use_external_encoder = false;
@@ -188,9 +195,16 @@ bool ToVideoSenderConfig(const CastRtpParams& params,
config->incoming_feedback_ssrc = params.payload.feedback_ssrc;
if (config->ssrc == config->incoming_feedback_ssrc)
return false;
- config->target_playout_delay =
+ config->min_playout_delay =
+ base::TimeDelta::FromMilliseconds(
+ params.payload.min_latency_ms ?
+ params.payload.min_latency_ms :
+ params.payload.max_latency_ms);
+ config->max_playout_delay =
base::TimeDelta::FromMilliseconds(params.payload.max_latency_ms);
- if (config->target_playout_delay <= base::TimeDelta())
+ if (config->min_playout_delay <= base::TimeDelta())
+ return false;
+ if (config->min_playout_delay > config->max_playout_delay)
return false;
config->rtp_payload_type = params.payload.payload_type;
config->width = params.payload.width;
@@ -464,6 +478,7 @@ CastCodecSpecificParams::~CastCodecSpecificParams() {}
CastRtpPayloadParams::CastRtpPayloadParams()
: payload_type(0),
max_latency_ms(0),
+ min_latency_ms(0),
ssrc(0),
feedback_ssrc(0),
clock_rate(0),

Powered by Google App Engine
This is Rietveld 408576698