| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | /* *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. * *  Use of this source code is governed by a BSD-style license *  that can be found in the LICENSE file in the root of the source *  tree. An additional intellectual property rights grant can be found *  in the file PATENTS.  All contributing project authors may *  be found in the AUTHORS file in the root of the source tree. */#ifndef MODULES_VIDEO_CODING_JITTER_BUFFER_COMMON_H_#define MODULES_VIDEO_CODING_JITTER_BUFFER_COMMON_H_namespace webrtc {// Used to estimate rolling average of packets per frame.static const float kFastConvergeMultiplier = 0.4f;static const float kNormalConvergeMultiplier = 0.2f;enum { kMaxNumberOfFrames = 300 };enum { kStartNumberOfFrames = 6 };enum { kMaxVideoDelayMs = 10000 };enum { kPacketsPerFrameMultiplier = 5 };enum { kFastConvergeThreshold = 5 };enum VCMJitterBufferEnum {  kMaxConsecutiveOldFrames = 60,  kMaxConsecutiveOldPackets = 300,  // TODO(sprang): Reduce this limit once codecs don't sometimes wildly  // overshoot bitrate target.  kMaxPacketsInSession = 1400,      // Allows ~2MB frames.  kBufferIncStepSizeBytes = 30000,  // >20 packets.  kMaxJBFrameSizeBytes = 4000000    // sanity don't go above 4Mbyte.};enum VCMFrameBufferEnum {  kOutOfBoundsPacket = -7,  kNotInitialized = -6,  kOldPacket = -5,  kGeneralError = -4,  kFlushIndicator = -3,  // Indicator that a flush has occurred.  kTimeStampError = -2,  kSizeError = -1,  kNoError = 0,  kIncomplete = 1,       // Frame incomplete.  kCompleteSession = 3,  // at least one layer in the frame complete.  kDuplicatePacket = 5   // We're receiving a duplicate packet.};enum VCMFrameBufferStateEnum {  kStateEmpty,       // frame popped by the RTP receiver  kStateIncomplete,  // frame that have one or more packet(s) stored  kStateComplete,    // frame that have all packets};enum { kH264StartCodeLengthBytes = 4 };}  // namespace webrtc#endif  // MODULES_VIDEO_CODING_JITTER_BUFFER_COMMON_H_
 |