Trigger a PLI if the duration of non-decodable frames exceeds a threshold.
BUG=1663 R=mikhal@webrtc.org, ronghuawu@chromium.org Review URL: https://webrtc-codereview.appspot.com/1359004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3975 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@ -282,9 +282,11 @@ void VCMReceiver::SetNackMode(VCMNackMode nackMode,
|
||||
}
|
||||
|
||||
void VCMReceiver::SetNackSettings(size_t max_nack_list_size,
|
||||
int max_packet_age_to_nack) {
|
||||
int max_packet_age_to_nack,
|
||||
int max_incomplete_time_ms) {
|
||||
jitter_buffer_.SetNackSettings(max_nack_list_size,
|
||||
max_packet_age_to_nack);
|
||||
max_packet_age_to_nack,
|
||||
max_incomplete_time_ms);
|
||||
}
|
||||
|
||||
VCMNackMode VCMReceiver::NackMode() const {
|
||||
@ -298,16 +300,16 @@ VCMNackStatus VCMReceiver::NackList(uint16_t* nack_list,
|
||||
bool request_key_frame = false;
|
||||
uint16_t* internal_nack_list = jitter_buffer_.GetNackList(
|
||||
nack_list_length, &request_key_frame);
|
||||
if (request_key_frame) {
|
||||
// This combination is used to trigger key frame requests.
|
||||
return kNackKeyFrameRequest;
|
||||
}
|
||||
if (*nack_list_length > size) {
|
||||
*nack_list_length = 0;
|
||||
return kNackNeedMoreMemory;
|
||||
}
|
||||
if (internal_nack_list != NULL && *nack_list_length > 0) {
|
||||
memcpy(nack_list, internal_nack_list, *nack_list_length * sizeof(uint16_t));
|
||||
}
|
||||
if (request_key_frame) {
|
||||
return kNackKeyFrameRequest;
|
||||
}
|
||||
return kNackOk;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user