Assume 200 ms RTT if we're only receiving.
BUG= TEST= Review URL: https://webrtc-codereview.appspot.com/396012 git-svn-id: http://webrtc.googlecode.com/svn/trunk@1730 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
20aabbb0be
commit
a475556f5a
@ -2221,8 +2221,14 @@ bool ViEChannel::ChannelDecodeProcess() {
|
|||||||
if (rtp_rtcp_.RTT(rtp_rtcp_.RemoteSSRC(), &RTT, &avgRTT, &minRTT, &maxRTT)
|
if (rtp_rtcp_.RTT(rtp_rtcp_.RemoteSSRC(), &RTT, &avgRTT, &minRTT, &maxRTT)
|
||||||
== 0) {
|
== 0) {
|
||||||
vcm_.SetReceiveChannelParameters(RTT);
|
vcm_.SetReceiveChannelParameters(RTT);
|
||||||
|
vcm_rttreported_ = TickTime::Now();
|
||||||
|
} else if (!rtp_rtcp_.Sending() &&
|
||||||
|
(TickTime::Now() - vcm_rttreported_).Milliseconds() > 5000) {
|
||||||
|
// Wait at least 5 seconds before faking a 200 ms RTT. This is to
|
||||||
|
// make sure we have a chance to start sending before we decide to fake.
|
||||||
|
vcm_.SetReceiveChannelParameters(200);
|
||||||
|
vcm_rttreported_ = TickTime::Now();
|
||||||
}
|
}
|
||||||
vcm_rttreported_ = TickTime::Now();
|
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -2251,6 +2257,10 @@ WebRtc_Word32 ViEChannel::StartDecodeThread() {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Used to make sure that we don't give the VCM a faked RTT
|
||||||
|
// too early.
|
||||||
|
vcm_rttreported_ = TickTime::Now();
|
||||||
|
|
||||||
WEBRTC_TRACE(kTraceInfo, kTraceVideo, ViEId(engine_id_, channel_id_),
|
WEBRTC_TRACE(kTraceInfo, kTraceVideo, ViEId(engine_id_, channel_id_),
|
||||||
"%s: decode thread with id %u started", __FUNCTION__);
|
"%s: decode thread with id %u started", __FUNCTION__);
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user