Optimize NACK list creation.
- No longer looping through all frame buffers. - Keeping track of the current nack list index when building the list. - Don't look for changes in the NACK list if the size has increased. Review URL: https://webrtc-codereview.appspot.com/1076005 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3420 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@ -206,17 +206,16 @@ VCMFrameBuffer::LatestPacketTimeMs() const
|
||||
|
||||
// Build hard NACK list:Zero out all entries in list up to and including the
|
||||
// (first) entry equal to _lowSeqNum.
|
||||
int VCMFrameBuffer::BuildHardNackList(int* list, int num) {
|
||||
if (_sessionInfo.BuildHardNackList(list, num) != 0) {
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
int VCMFrameBuffer::BuildHardNackList(int* list, int num,
|
||||
int nack_seq_nums_index) {
|
||||
return _sessionInfo.BuildHardNackList(list, num, nack_seq_nums_index);
|
||||
}
|
||||
|
||||
// Build selective NACK list: Create a soft (selective) list of entries to zero
|
||||
// out up to and including the (first) entry equal to _lowSeqNum.
|
||||
int VCMFrameBuffer::BuildSoftNackList(int* list, int num, int rttMs) {
|
||||
return _sessionInfo.BuildSoftNackList(list, num, rttMs);
|
||||
int VCMFrameBuffer::BuildSoftNackList(int* list, int num,
|
||||
int nack_seq_nums_index, int rttMs) {
|
||||
return _sessionInfo.BuildSoftNackList(list, num, nack_seq_nums_index, rttMs);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
Reference in New Issue
Block a user